当前位置: 首页 > 知识库问答 >
问题:

Anr-context.StartForegroundService

吕修伟
2023-03-14

我有一个应用程序有一个前台服务,我偶尔会得到这样的ANR:

然后context.startForegroundService()没有调用service.startForeground()

     <service
        android:name="com.squareup.leakcanary.internal.HeapAnalyzerService"
        android:enabled="false"
        android:process=":leakcanary" />

     <service
        android:name="com.squareup.leakcanary.DisplayLeakService"
        android:enabled="false"
        android:process=":leakcanary" />
      <service
            android:name="com.google.firebase.messaging.FirebaseMessagingService"
            android:exported="true" >
            <intent-filter android:priority="-500" >
                <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>
      </service>
      <service
            android:name="com.google.firebase.iid.FirebaseInstanceIdService"
            android:exported="true" >
            <intent-filter android:priority="-500" >
                <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
            </intent-filter>
      </service>
      <service
            android:name="com.google.android.gms.measurement.AppMeasurementJobService"
            android:enabled="true"
            android:exported="false"
            android:permission="android.permission.BIND_JOB_SERVICE" />

      <service
            android:name="com.google.android.gms.measurement.AppMeasurementService"
            android:enabled="true"
            android:exported="false" />

共有1个答案

左仰岳
2023-03-14

StartForegroundService(Intent service)Abstract方法。类似于startService(Intent),但隐含了一个promise,即服务开始运行后将调用startForeground(int,Android.app.notification)。看这里

 类似资料:
  • ANR-WatchDog 是检查 ANR (Android 无响应) 问题的利器。 实现原理: ANR-WatchDog创建一个监测线程,该线程不断往UI线程post一个任务,然后睡眠固定时间,等该线程重新起来后检测之前post的任务是否执行了,如果任务未被执行,则生成ANRError,并终止进程。

  • 本文向大家介绍ANR是什么?怎样避免和解决ANR相关面试题,主要包含被问及ANR是什么?怎样避免和解决ANR时的应答技巧和注意事项,需要的朋友参考一下 Application Not Responding,即应用无响应 出现的原因有三种: a)KeyDispatchTimeout(5 seconds)主要类型按键或触摸事件在特定时间内无响应 b)BroadcastTimeout(10 second

  • 我在android 11上有这个ANR。我无法找到任何合适的解决方案,即使通过它非常复杂的堆栈跟踪来理解。如有任何帮助,我们将不胜感激。 堆栈跟踪: # 00 PC 000000000007590 c/apex/com . Android . runtime/lib 64/bionic/libc . so(syscall 28)# 00 PC 0000000001 b067c/apex/com .

  • 我已经开始从许多代码位置收到几个奇怪的ANR报告(应用程序没有响应)。 null

  • 子类的完整代码是: 然后,还有呈现线程:

  • 当Android应用程序没有响应时,会弹出一个ANR对话框。我的问题是:Android平台如何检测ANR,并决定启动这样一个弹出对话框。