java - 正在广播接收器处启动 ANR 服务修复

标签 java android

我分析了 Android 教程,它说要在接收时启动服务以进行长时间运行的操作 >10 秒,但服务不是从主线程运行吗?

http://developer.android.com/guide/practices/responsiveness.html#avoiding

服务 ( http://developer.android.com/reference/android/app/Service.html )

还说不要长时间操作;那哪个更合适呢?

最佳答案

but isn't service running from main thread?

Service 的生命周期方法(例如,onStartCommand())在主应用程序线程上调用。但是,Service 与 list 注册的 BroadcastReceiver 不同,它可以安全地派生后台线程。 IntentService 会自动执行此操作,这就是为什么它非常适合在许多情况下与 list 注册的 BroadcastReceiver 配对。

关于java - 正在广播接收器处启动 ANR 服务修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11975299/

相关文章:

android - 如何根据当前屏幕方向设置 Activity 内容?

java - LibGDX 中纹理的多个实例?

java - moshi 序列化支持,如 @jsonunwrapped

java - 如何使用正则表达式提取 CSS 颜色?

android - 停止接收位置更新

Android RecyclerView 创建并绑定(bind)数据集更改的所有 View

java - 从 LinkedQueue 获取类对象数据

java - 处理 JPEG 元数据的最佳库是什么?

android - 在 Android 上使用什么 Eclipse 代码代替点

android - 在 Android 中制作一个新的设置应用程序