设置闹钟不工作

2024-02-08

我正在使用一个IntentService准备警报并使用setAlarmClock在其中设置闹钟。这IntentService始终在正确的时间运行并设置警报(将显示图标),但警报将工作 100 次中的 99 次。当一个警报失败时,每个警报都会出现类似的情况Intent将会失败,直到您完全关闭应用程序(无论什么)requestsCode在里面PendingIntent)。无论如何,在预定的警报时间之前的微秒,这被称为:

09-19 16:10:59.996 1374-2126/? V/AlarmManager: Expired Alarm result :4
09-19 16:11:00.046 1374-2126/? D/VirtualScreenPolicy: applyVirtualScreenAttrs attrs=VirtualScreenAttrs{mDisplayId=0, mBaseDisplayId=0, mBaseActivity=false}
09-19 16:11:00.046 1374-2126/? D/GameManagerService: identifyGamePackage. com.simplyneededapps.ridealarm
09-19 16:11:00.046 1374-2126/? D/MultiWindowPolicy: Gamemode - return 0,  when calling  identifyForegroundApp(com.simplyneededapps.ridealarm)
09-19 16:11:00.066 1374-2126/? D/ActivityManager: mDVFSHelper.acquire()
09-19 16:11:00.066 1374-2126/? W/ActivityManager: startActivity called from non-Activity context; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { flg=0x4 cmp=com.simplyneededapps.ridealarm/.MapAlarm VirtualScreenParam=Params{mDisplayId=-1, null, mFlags=0x00000000)} (has extras) }
09-19 16:11:00.116 23354-23354/? E/CocktailBarPositionManager: Window direction: 0
09-19 16:11:00.116 23354-23354/? I/CocktailBarPositionManager: updateAlphaScreenPosition position is dirty 0

如果它有效,则最终会调用 Activity 生命周期方法(onCreate、onResume、onStart...):

09-19 16:45:00.048 1366-2124/? V/WindowManager: addAppToken: AppWindowToken{d09214481 token=Token{fb31868 ActivityRecord{8afbf8b u0 com.simplyneededapps.ridealarm/.MapAlarm t2738}}} to stack=2 task=2738 at 1 

如果它不运行,则永远不会调用 Activity 生命周期方法,这是:

09-13 10:05:00.379 1366-2124/? I/WindowManager: Screenshot max retries 4 of Token{d83f8b2 ActivityRecord{b762abd u0 com.simplyneededapps.ridealarm/.MainActivity t2491}} appWin=Window{6dec0a u0 d0 com.simplyneededapps.ridealarm/com.simplyneededapps.ridealarm.MainActivity} drawState=4

通常也有这样的变体:

09-19 17:08:00.386 1374-1374/? D/SettingsProvider: isChangeAllowed() : name = next_alarm_formatted
09-19 17:08:00.386 2378-2378/? V/CenterBarWindowService: noteResumeComponent  /arrangeState : 0
09-19 17:08:00.396 2302-2302/? D/KeyguardUpdateMonitor: handleTimeUpdate
09-19 17:08:00.396 1374-2587/? D/StatusBarManagerService: setIconVisibility slot=alarm_clock visible=false
09-19 17:08:00.406 2302-2302/? D/KeyguardUpdateMonitor: received broadcast android.intent.action.TIME_TICK
09-19 17:08:00.406 2302-2302/? D/KeyguardUpdateMonitor: handleTimeUpdate
09-19 17:08:00.416 1374-2628/? D/ActivityManager: post active user change for 0 fullscreen true isFloatingActivity() false isHomeActivity() false
09-19 17:08:00.416 1374-2628/? D/KnoxTimeoutHandler: postActiveUserChange [MsgParam] userId: 0 fullscreen is true showWhenlocked is false
09-19 17:08:00.426 1374-1374/? D/GameManagerService: NotifyRunnable. pkg: com.simplyneededapps.ridealarm, type: 4, isMinimized: false, isTunableApp: false
09-19 17:08:00.426 1374-1374/? D/GameManagerService: do nothing. mKillNotiCount: 3
09-19 17:08:00.426 2302-2302/? D/Clock: received broadcast android.intent.action.TIME_TICK
09-19 17:08:00.436 1374-1374/? D/KnoxTimeoutHandler: handleActiveUserChange [MsgParam] userId: 0 fullscreen is true showWhenlocked is false
09-19 17:08:00.446 1374-1374/? I/KnoxTimeoutHandler: Shared devices show user statefalse
09-19 17:08:00.486 1374-2587/? V/WindowStateAnimator: Finishing drawing window Window{c666b94 u0 d0 com.simplyneededapps.ridealarm/com.simplyneededapps.ridealarm.MainActivity}: mDrawState=HAS_DRAWN
09-19 17:08:00.506 18924-18924/com.simplyneededapps.ridealarm V/ActivityThread: updateVisibility : ActivityRecord{11d12c8 token=android.os.BinderProxy@98ab18f {com.simplyneededapps.ridealarm/com.simplyneededapps.ridealarm.MainActivity}} show : true
09-19 17:08:00.506 18924-18924/com.simplyneededapps.ridealarm I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@98ab18f time:64852633
09-19 17:08:00.546 2302-2302/? D/DateView: received broadcast android.intent.action.TIME_TICK

在我的 IntentService 中:

@Override
protected void onHandleIntent(Intent intent) {

        //about 200 lines setting up the alarm

                        AlarmManager alarmMgr;
                        PendingIntent pIntent;

                        alarmMgr = (AlarmManager) context2.getSystemService(Context.ALARM_SERVICE);
                        Intent intent2 = new Intent(context2, MapAlarm.class);
                        intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
                        intent2.putExtra("id",id) 

                       pIntent = PendingIntent.getActivity(context2, (int) id, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
                        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                            AlarmManager.AlarmClockInfo alarmClockInfo = new AlarmManager.AlarmClockInfo(next,pIntent);
                            alarmMgr.setAlarmClock(alarmClockInfo,pIntent);
                        }else{
                            alarmMgr.setExact(AlarmManager.RTC_WAKEUP, next, pIntent);
                            }
                stopService(intent);
}

有没有办法始终确保onCreate或者至少onResume无论如何总是被调用?我仍然无法确定直接原因,因此我们将不胜感激任何和所有帮助!


None

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

设置闹钟不工作 的相关文章

  • Mockito when().thenReturn 不必要地调用该方法

    我正在研究继承的代码 我编写了一个应该捕获 NullPointerException 的测试 因为它试图从 null 对象调用方法 Test expected NullPointerException class public void c
  • 斯坦福 NLP - 处理文件列表时 OpenIE 内存不足

    我正在尝试使用斯坦福 CoreNLP 中的 OpenIE 工具从多个文件中提取信息 当多个文件 而不是一个 传递到输入时 它会给出内存不足错误 All files have been queued awaiting termination
  • 你的CPU不支持NX

    我刚刚下载了 android studio 但是我遇到了一个问题 当我运行它时 它说你的 cpu 不支持 NX 我应该怎么办 NX 或实际上是 NX 处理器位 是处理器的一项功能 有助于保护您的 PC 免受恶意软件的攻击 当此功能未启用并且
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何使用 IF 检查 TextView 可见性

    我有一个 onCheckedChangeListener 来根据选择的单选按钮显示文本视图 我有 1 个疑问和 1 个难题 想知道是否有人可以帮助我 问题 您能否将单选组默认检查值设置为 否 单选按钮 以便一开始就不会检查任何内容 问题 如
  • 禁止的软件包名称:java

    我尝试从数据库名称为 jaane 用户名 Hello 和密码 hello 获取数据 错误 java lang SecurityException Prohibited package name java at java lang Class
  • 我想实现下面的布局,按钮应该在屏幕底部,当惰性列被填充时,按钮不应该出去

    顶部有惰性列 惰性列下方有输入电话号码布局并从电话簿布局添加联系人 我希望当未添加联系人时此布局位于顶部 当我添加大量联系人时输入电话号码并添加电话簿布局中的联系人会随着惰性列滚动并移出屏幕 我不让他们走出屏幕 当接触较多时 它们必须粘在底
  • 如何发布Android .aar源以使Android Studio自动找到它们?

    我正在将库发布到内部 Sonatype Nexus 存储库 Android Studio 有一个功能 可以自动查找通过 gradle 引用的库的正确源 我将 aar 的源代码作为单独的 jar 发布到 Nexus 但 Android Stu
  • 如何使用InputConnectionWrapper?

    我有一个EditText 现在我想获取用户对此所做的所有更改EditText并在手动将它们插入之前使用它们EditText 我不希望用户直接更改中的文本EditText 这只能由我的代码完成 例如通过使用replace or setText
  • JRE 系统库 [WebSphere v6.1 JRE](未绑定)

    将项目导入 Eclipse 后 我的构建路径中出现以下错误 JRE System Library WebSphere v6 1 JRE unbound 谁知道怎么修它 右键单击项目 特性 gt Java 构建路径 gt 图书馆 gt JRE
  • getResourceAsStream() 可以找到 jar 文件之外的文件吗?

    我正在开发一个应用程序 该应用程序使用一个加载配置文件的库 InputStream in getClass getResourceAsStream resource 然后我的应用程序打包在一个 jar文件 如果resource是在里面 ja
  • AWS 无法从 START_OBJECT 中反序列化 java.lang.String 实例

    我创建了一个 Lambda 函数 我想在 API 网关的帮助下通过 URL 访问它 我已经把一切都设置好了 我还创建了一个application jsonAPI Gateway 中的正文映射模板如下所示 input input params
  • 在 Mac 上正确运行基于 SWT 的跨平台 jar

    我一直致力于一个基于 SWT 的项目 该项目旨在部署为 Java Web Start 从而可以在多个平台上使用 到目前为止 我已经成功解决了由于 SWT 依赖的系统特定库而出现的导出问题 请参阅相关thread https stackove
  • 如何在桌面浏览器上使用 webdriver 移动网络

    我正在使用 selenium webdriver 进行 AUT 被测应用程序 的功能测试自动化 AUT 是响应式网络 我几乎完成了桌面浏览器的不同测试用例 现在 相同的测试用例也适用于移动浏览器 因为可以从移动浏览器访问 AUT 由于它是响
  • 在activity_main.xml中注释

    我是安卓新手 据我所知 XML 中的注释与 HTML 中的注释相同 使用 形式 我想在 Android 项目的 Activity main xml 配置文件中写一些注释 但它给了我错误 值得注意的是 我使用的是 Eclipse 但目前 我直
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • 如何确定对手机号码的呼叫是本地呼叫还是 STD 或 ISD

    我正在为 Android 开发某种应用程序 但不知道如何获取被叫号码是本地或 STD 的号码的数据 即手机号码检查器等应用程序从哪里获取数据 注意 我说的是手机号码 而不是固定电话 固定电话号码 你得到的数字是字符串类型 因此 您可以获取号
  • 编译器抱怨“缺少返回语句”,即使不可能达到缺少返回语句的条件

    在下面的方法中 编译器抱怨缺少退货声明即使该方法只有一条路径 并且它包含一个return陈述 抑制错误需要另一个return陈述 public int foo if true return 5 鉴于Java编译器可以识别无限循环 https
  • android sdk 的位置尚未在 Windows 操作系统的首选项中设置

    在 Eclipse 上 我转到 windows gt Android SDK 和 AVD Manager 然后弹出此消息 Android sdk 的位置尚未在首选项中设置 进入首选项 在侧边栏找到 Android 然后会出现一个 SDK 位
  • 将 List 转换为 JSON

    Hi guys 有人可以帮助我 如何将我的 HQL 查询结果转换为带有对象列表的 JSON 并通过休息服务获取它 这是我的服务方法 它返回查询结果列表 Override public List

随机推荐

  • VB.NET 中的 WScript?

    这是我的程序中的一段代码 WSHShell WScript CreateObject WScript Shell 但由于某种原因 WScript 没有声明 我知道这段代码可以在 VBScript 中运行 但我正在尝试让它在 vb net 中
  • Python 中的机器 Epsilon

    我目前正在学习的一本手册 我是新手 说 相差小于机器 epsilon 的数字在数值上是相同的 使用 Python 可以通过键入获得浮点值的机器 epsilon eps numpy finfo float eps 现在 如果我检查 1 eps
  • 连接时 , 和 + 有什么区别?

    过去几个月我一直在用 c 编码 但每次连接时我总是对逗号之间的区别感到困惑 和加号 有时 适用于连接 其他时候 用来 我真的不明白其中的区别 请帮帮我 这是代码 class Faculty string firstName lastName
  • Eclipse 上的 Golang:Mac 上“资源没有相应的 Go 包”

    如标题所述 我在 Eclipse 上运行 Golang 代码时遇到问题 我目前使用的是Mac 我使用homebrew安装了go 目前 go安装的文件夹如下 usr local Cellar go 1 5 2 运行终端并输入后open bas
  • 如何刷新页面并保持元素不刷新(持久)直到用户单击提交?

    我正在寻找一种 jQuery 方法来在刷新页面时将页面元素保留在用户屏幕上 当我刷新页面并且丢失 jQuery 页面中的内容时 它会发生变化 我需要该页面是持久的 如何刷新页面并保持元素不刷新 持久 直到用户单击提交按钮 如何才能做到这一点
  • 在 android 中,相机“camera.setParameters”失败

    at android hardware Camera native setParameters Native Method at android hardware Camera setParameters Camera java 647 a
  • Microsoft VBScript 运行时错误:输入超过文件结尾错误

    我收到此错误 C se2 vbs 28 6 Microsoft VBScript 运行时错误 输入超出文件结尾 当我运行脚本时 第 28 行斜体 Dim strInput Dim filesys Dim path Set filesys C
  • Flutter Web:如何在 Flutter Web 应用程序中禁用浏览器的后退按钮

    成功登录后 用户重定向到主页 但当用户单击浏览器后退按钮时 它很容易重定向到登录屏幕 我应该怎么做才能禁用向后重定向 class SecondPage extends StatelessWidget override Widget buil
  • HTTP_ORIGIN 的安全性如何?

    我想查明来自第三方网站的传入 HTTP REQUEST 调用是否来自我定义的域列表 我知道可以使用HTTP REFERER来查找第三方域在哪里 但它不够安全 人们可以欺骗它或使用 Telnet 来伪造它 那么 HTTP ORIGIN 怎么样
  • 在互联网上哪里可以找到直方图差异算法?

    我在哪里可以找到互联网上的直方图差异算法 我想比较两个文本并找出差异 目前我正在尝试耐心差异算法 但这并不那么有效 我听说直方图差异算法是耐心差异的改进版本 The git软件实现了耐心和直方图差异算法 也可以看看 git diff pat
  • python OpenCv IMREAD_UNCHANGED 只返回三个通道

    我试图找出我的代码有什么问题 我想加载包含 Alpha 通道的图像 官方网站的描述如下 cv IMREAD UNCHANGED 如果设置 则按原样返回加载的图像 带有 Alpha 通道 否则会被裁剪 这是我的尝试 import cv2 as
  • 如何从气流传感器中提取 xcom 值?

    主要问题 我正在尝试创建一个 BigQuery 表 如果不存在 方法 使用 BigQueryTableSensor 检查表是否存在 并根据返回值 使用 BigQueryCreateEmptyTableOperator 创建或不创建新表 Pr
  • 如何在 Windows 和 MAC 上使用 Python 检测进程是否正在运行

    我正在尝试找到一种方法来使用 Python 检测进程是否在 Windows 操作系统的 Windows 任务管理器和 MAC 操作系统的 Macintosh 活动监视器中运行 有人可以帮我解决一下代码吗 psutil https githu
  • 在 TomEE+ 上使用 JAX-RS 时出现“无资源方法”

    使用 Stock TomEE 我无法让简单的 JAX RS 资源工作 我不断收到以下错误 Jun 30 2012 5 09 59 PM org apache cxf jaxrs utils ResourceUtils checkMethod
  • 如何绕过Firebase缓存刷新数据(在Android应用程序中)?

    在大多数时间必须离线工作的 Android 应用程序上 当它在线时 我需要执行一些同步操作 即 User myUser MyclientFacade getUser If myUser getScore gt 10 DoSomething
  • 无法复制/移动文件名末尾带有空格的文件

    真是太疯狂了 我已经使用 Far 2 0 创建了一个文件 http www farmanager com http www farmanager com 也许您可 以使用其他文件管理器 它的文件名是 C 123 txt 是的 文件路径末尾有
  • 在Android中,有没有办法获取电池电流? [复制]

    这个问题在这里已经有答案了 BatteryManager 类没有电流指标 http developer android com reference android os BatteryManager html http developer
  • 窗口服务的通知图标

    我开发了 win 服务程序 它从本地驱动器读取 Excel 文件 然后将此文件值保存到数据库 现在我想开发一个通知图标 该图标将在之后显示一条消息 Excel 文件已保存在数据库中 我的服务将启动并将 Excel 文件保存到数据库 请给我一
  • 绑定到 TabControl SelectedIndex

    我在页面上有一个选项卡控件 它的项目绑定回我的 ViewModel 它还公开了一个 ActiveTabItemIndex 它绑定 两种方式 到我的 xaml 中的 SelectedIndex 属性 并实现 INotifyPropertyCh
  • 设置闹钟不工作

    我正在使用一个IntentService准备警报并使用setAlarmClock在其中设置闹钟 这IntentService始终在正确的时间运行并设置警报 将显示图标 但警报将工作 100 次中的 99 次 当一个警报失败时 每个警报都会出