AlarmManager 在模拟器中触发,但不在物理设备上触发

2023-12-12

我有一个调用 AlarmManager 的应用程序

Intent intent;
intent = new Intent(context, MyEventReceiver.class);  
PendingIntent appIntent = PendingIntent.getBroadcast(context, 0,
intent, PendingIntent.FLAG_ONE_SHOT);
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),
appIntent);

在舱单中我有强制性条目

    <receiver android:name=".MyEventReceiver"
   android:process=":remote" />

MyEventReceiver 看起来像这样

public class MyEventReceiver extends BroadcastReceiver
{
    @Override
    public void onReceive(Context context, Intent intent)
    {
        try
        {
            // DO SOME WORK
        }
        catch (Exception e)
        {
            Log.e("MyEventReceiver", e.getMessage().toString());
        }
    }
}

当警报被激活时,即使我的应用程序没有运行,MyEventReceiver 也应该启动并执行某些操作。在模拟器中是这种情况,但在实际设备上情况并非如此。

作为示例,我将在模拟器上启动 MyApplication,在 DDMS 中我可以看到 MyApplication 正在运行的进程。我从 MyApplication 中添加一个警报,然后在 DDMS 中终止 MyApplication 的进程。当警报触发时,MyEventReceiver 开始工作,并且在 DDMS 中我看到两个进程:MyApplication 和 MyApplication:remote。

在实际设备上,如果我启动 MyApplication,添加警报,然后在警报执行时什么也没有发生时使用任务终止程序终止进程。如果我将设备连接到调试器并使用 DDMS 而不是设备上的任务终止程序来停止进程,则警报将触发并按预期工作。

有人可以帮助我理解为什么会发生这种情况吗?我的印象是,一旦安排了闹钟,它就会持续存在,除非设备重新启动。在应执行警报时设备处于唤醒状态。


在舱单中我有强制性条目

android:process=":remote"是反义务的。请删除它。迅速地。

如果我开始在实际设备上 我的应用程序,添加闹钟,然后 使用任务终止程序终止进程

任务杀手也会删除应用程序的警报,不过这个问题在 Android 2.2 中已得到解决。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AlarmManager 在模拟器中触发,但不在物理设备上触发 的相关文章

  • 房间数据库更改未触发观察者

    当房间数据库更改时 我试图更新 RecyclerView 但是 当数据库发生更改时 不会调用 MainActivity 中定义的观察者的 onChanged 方法 如果我让 DAO 返回 LiveData 而不是 List 并在 ViewM
  • Android-如何将 android.net.Uri 对象转换为 java.net.URI 对象?

    我正在尝试获得一个FileInputStream用户从图片库中选择的图像上的对象 这是安卓URI由返回android provider MediaStore Images Media INTERNAL CONTENT URI content
  • 在 Android 上使用 AT 命令与调制解调器对话

    我试图与三星 Galaxy s2 plus 和华为 p1 xl u9200 调制解调器发送 AT 命令 但无法得到任何结果 我使用 adb shell 发送命令并使用 logcat 查看日志 在三星 当我执行 cat 时 proc tty
  • 使用 Fragment 在工具栏中实现 SearchView

    当前情况 我的应用程序主页由导航抽屉组成 因此我将视图作为片段加载 我的工具栏中也有搜索图标 我在中实现了它menu xml 下一步我实施了SearchView通过以下问题的答案来获取搜索图标在工具栏中实现搜索 https stackove
  • 如何通过我的活动在 Android 中设置铃声?

    我正在尝试找到一种方法来通过 Android 活动中的代码设置新的默认铃声 我已经将铃声下载到bytearray 最后 我设法将默认铃声设置为我下载的铃声 下面不包含下载代码 仅包含将其设置为默认铃声所需的代码 File k new Fil
  • 吉夫伦致命信号11

    我正在尝试使用一些本机代码来创建 Gif 我使用绘画绘制图像 创建一些笔画 单击 保存 绘制的图像将保存为 JPG 格式 当我单击 创建 Gif 时 它会获取所有图像并开始创建 gif 这是当我收到致命信号 11 并且应用程序重新启动时 我
  • 为什么反射会减慢Android手机的速度

    我多次读到反射会降低手机性能 这有多真实 例如 在我的例子中 我从 Web 服务获取一些参数 这些参数与我在 Android 应用程序中的类的参数同名 所以我只是使用java字段和反射设置这些参数的值 它似乎并没有降低性能 有人可以向我解释
  • Android上如何获取ImageView的Drawable的矩形?

    我想要获取将包裹 ImageView 的 Drawable 的矩形对象 而不是包裹 ImageView 的矩形 我将使用该矩形在 Drawable 周围绘制一些奇特的矩形 我怎样才能得到那个矩形 Rect rect new Rect Ima
  • 如何禁用操作栏上“向上”按钮的翻转?

    背景 我做了一个 应用程序管理器 https play google com store apps details id com lb app manager 替代应用程序 我希望添加 RTL 从右到左 语言的翻译 因为我知道在某些 And
  • React Native Expo StackNavigator 重叠通知栏

    我正在尝试为我的 React Native Expo 应用程序实现导航栏 这里有一个问题 dependencies expo 18 0 3 react 16 0 0 alpha 12 react native 0 45 1 react na
  • 将 java 中的 byte[] 转换为 C++ 中的 unsigned char* 的正确方法,反之亦然?

    我是 C 和 JNI 的新手 我尝试找到一种正确的方法 通过使用 JNI 将 java 中的 byte 转换为 C 中的 unsigned char 反之亦然 我正在安卓上工作 在谷歌和SO中寻找解决方案后 我还没有找到将java中的byt
  • Android -room 持久库 - DAO 调用是异步的,因此如何获取回调?

    从我读到的Room 不允许您在主线程上发出数据库查询 因为可能会导致主线程延迟 所以想象一下我正在尝试更新 UI 主线程上的文本视图 其中一些数据我将如何得到回调 让我给你举个例子 想象一下 我想将我的业务模型数据存储到一个名为 事件 的对
  • 在新的 intel x86 android 模拟器中访问 google api

    我只是尝试在新的 x86 android 模拟器中运行我公司的应用程序 但是我们的应用程序依赖于 google 地图 API 而这在 google 随 android sdk 版本 17 提供的 x86 系统映像中不可用 我的直觉告诉我答案
  • 控制 OverlayItem 大小

    我正在构建一个在单个 ItemizedOverlay 中包含几十个 OverlayItems 的地图 我的地图设计为可以非常近距离地查看 大约缩放级别 18 并且 OverlayItems 彼此非常接近 地图放大时看起来不错 但是 如果用户
  • 是否可以通过 Android 应用程序来录音?

    我是一名开发人员 希望创建一个 Android 应用程序来记录电话 这是出于我个人的需要 为了我自己的目的和记录而记录电话 是否有可能做到这一点 是否可以访问麦克风以及通过扬声器发出的声音 我对 Android 开发有点陌生 所以请耐心等待
  • Android模拟器中的网络访问

    我试图通过我的 Android 应用程序访问互联网 但我既成功又失败 我在构建应用程序时启动模拟器 并且应用程序安装得很好 我可以使用浏览器访问互联网 但是 当我尝试这个小代码片段时 InetAddress inet try inet In
  • 如何在android中通过蓝牙向配对设备发送短信?

    在我的应用程序中 我想通过蓝牙发送和接收短信 我可以在列表视图中看到配对设备名称和地址的列表 但是当我尝试向配对设备发送文本时 什么也没有发生 在其他设备中没有收到文本 这是我向配对设备发送消息的代码 private void sendDa
  • Android 标记如何实现拖放?

    你好 我正在 Android 中开发 MapView 应用程序 我有三个标记 我希望稍后能够使用 Google Map API getlocation function 为了尝试一下 我想使用拖放功能移动标记 然后检查位置 任何人都可以通过
  • Android MulticastSocket.joinGroup 不会触发发送 IGMP 消息

    Code MulticastSocket s new MulticastSocket InetAddress addr InetAddress getByName 230 230 230 1 s joinGroup addr 在 Ubunt
  • 如何访问我的 Android 程序中的联系人

    我正在制作一个短信应用程序 并且想要访问我的 Android 应用程序中的联系人 我想访问联系人 就像他们在实际联系人列表中一样 选择后 我需要返回到我的活动 在其中我可以向该人发送短信 或者是否可以访问存储联系人的数据库 我的代码如下所示

随机推荐

  • Java中如何转义引号

    我被这个问题困住了 我有一个ResultSet写入 html 报告 这ResultSetis writer write td a href rsevidencia getString Evidencia a a a td 但该链接不起作用
  • React Native 要求图像与变量中断

    为什么这条线工作时没有错误 var gicon species ii color 0 require assets gLight jpg require assets nLight png 而这一行会抛出错误 which light gLi
  • 如何设置PHP下载文件到特定目录?

    我正在寻找有关此问题的一些一般指导 我创建了一个使用 cURL 下载 csv 文件的 PHP 脚本 目前 当我运行脚本时 它会将文件下载到我的计算机 我想修改下载路径以将其路由到我的网络主机上的目录 有没有什么简单的方法可以用 PHP 来做
  • UIImage 的高质量缩放

    我需要缩放来自 iPhone 应用程序中视图层的图像的分辨率 显而易见的方法是在 UIGraphicsBeginImageContextWithOptions 中指定比例因子 但只要比例因子不是 1 0 图像质量就会受到影响 远远超出像素损
  • 将div变成链接

    我有一个 div 阻止一些我不想改变的奇特的视觉内容 我想让它成为一个可点击的链接 我正在寻找类似的东西 a href div div a 但这是有效的 XHTML 1 1 来到这里是希望找到一个更好的解决方案 但我不喜欢这里提供的任何解决
  • 使用存储在一个固定(流)文档中的 VisualBrush 进行及时控制的快照

    我需要及时拍摄 Control 的快照并将它们存储在一个固定文档中 问题是 VisualBrush 在某种程度上是 懒惰的 并且不会通过将其添加到文档来评估自身 当我最终创建文档时 所有页面都包含相同 最后 的控制状态 虽然 VisualB
  • Jasper iReport 自定义日期和自定义时间

    在 Excel 中 我有一个日期格式 yyyy MM dd hh mm 和一个时间格式 hh mm 我将其设置为 iReport 数据库的源 对于日期 我在 iReport 中设置了自定义日期格式 与 Excel 中相同 然后我设置类 ja
  • Keras 模型训练良好,但预测的值相同

    让我们尝试制作MobileNet V 2在嘈杂的图像上找到一条亮带 是的 使用深度卷积网络来实现这样的策略有点过分了 但最初它的目的就像烟雾测试一样 以确保模型有效 我们将使用合成数据对其进行训练 import numpy as np im
  • matplotlib 中的自动缩放,在同一图表中绘制不同的时间序列

    我有一个 主 熊猫数据框 其中包含多个术语的 极性 值的时间序列 我想使用其中的 4 个 因此我提取了 4 个单独的数据帧 其中包含时间序列 所有术语的时间序列相同 但极性值不同 我使用下面的代码将它们绘制在 4 个单独的 matplotl
  • 在keras中使用Conv3d将多个图像输入到同一个CNN

    我想使用 conv3d 将 8 张图像同时输入到同一个 CNN 结构中 我的CNN模型如下 def build sample frame height width channels classes model Sequential inpu
  • 弹性搜索,多个索引与一个索引以及不同数据集的类型?

    我有一个使用 MVC 模式开发的应用程序 我现在想索引它的多个模型 这意味着每个模型都有不同的数据结构 是使用多个索引 每个模型一个 还是每个模型在同一索引中使用一个类型更好 我认为这两种方式都需要不同的搜索查询 我刚刚开始做这个 如果数据
  • MVC HttpRequestValidationException 异常

    我正在编写 MVC 5 互联网应用程序 并且有一个关于HttpRequestValidationException例外 我之前在控制器中的代码如下 protected override void OnException ExceptionC
  • 使用 Socket.BeginAccept/EndAccept 进行多个连接

    与同步不同Accept BeginAccept不为新创建的连接提供套接字 EndAccept然而 它也会阻止未来的连接被接受 所以我编写了以下代码来允许多个 客户端 连接到我的服务器 serverSocket BeginAccept Acc
  • Angular 2 服务双向数据绑定

    我有一个salary service and a player component 如果服务中的工资变量更新 玩家组件中的视图是否也会更新 或者 Angular 2 中不是这样吗 当页面首次加载时 我在player component 视图
  • JNI 集成到 AOSP 构建中

    我需要通过添加一些自定义库来更改 设置 应用程序 但我在配置方面遇到问题 当我尝试调用 System loadLibrary mylibrary 时 我得到libraryPath data app lib com settings 1 fi
  • 使用 System.Transactions 时保存点的替代方案

    我如何使用来自的课程System Transactions命名空间以达到与我使用时类似的效果SqlTransaction Save 保存点 and SqlTransaction Rollback savePoint 使用这两种方法的效果是能
  • MySql 连接中的 Java ClassNotFoundException (java.sql.SQLType)

    我正在开发一个android应用程序 它连接到正在工作的mysql服务器 但现在出现java lang ClassNotFoundException错误 找不到类 java sql SQLType 我不知道发生了什么 我唯一改变的是mysq
  • 如何在电子邮件正文中添加图像

    我想在电子邮件正文中添加图像 我不想在电子邮件中附加图像 而是在电子邮件正文中添加图像 这个怎么做 我正在用这个 img src or img src 然后图像就这样显示 不幸的是 用意图来做到这一点是不可能的 例如 粗体文本显示在 Edi
  • 停止 Delphi Indy 线程而不必等待结束超时

    这是我第一次使用 Delphi 开发多线程应用程序 所以一切对我来说仍然很新鲜 但我读了很多书 我的线程很简单 简而言之 我只是使用 Indy IdHTTP 来获取网页的内容 然后验证内容是否包含字符串 这里没有问题 现在 为了终止线程 我
  • AlarmManager 在模拟器中触发,但不在物理设备上触发

    我有一个调用 AlarmManager 的应用程序 Intent intent intent new Intent context MyEventReceiver class PendingIntent appIntent PendingI