android - 如何在模拟器上模拟 IllegalStateException 以获得新的背景限制
问题描述
在我将我的应用程序更新到 targetSdkVersion 27 后,我注意到我的应用程序在某些新设备上的 Google Play 崩溃。
崩溃的原因是由于 Oreo 中引入了新的后台执行限制,我调用了在 Application 对象 onCreate 中启动一些 TTS 服务。当调用 startService(intent) 时抛出 IllegalStateException。
我正在尝试使用 Android 8.1 (API 27) 在模拟器上重现此错误。但是它没有问题。
我尝试在开发人员设置\后台进程限制中设置无后台进程。但我的应用程序在模拟器上运行良好。
我的服务正在另一个进程中运行:
<service
android:name=".services.Text2SpeechService"
android:enabled="true"
android:exported="false"
android:process="my.app.services.Text2SpeechService" />
问题:如何让模拟器模拟这个错误?
解决方案
推荐阅读
- c# - 耐用实体 - 反例
- python - Tkinter - 如何使按钮填充超过 1 列?
- python - 如何将 0 到 50 期间的 k 值写入 csv 文件?
- javascript - 如何根据json填充类别和子类别?
- mysql - 调用先前插入的变量时,Mysql AFTER INSERT 语法错误
- elasticsearch - 无法访问elasticsearch节点
- php - CakePHP4 Ajax:从控制器发送到视图
- latex - Doxygen:参数表的列宽问题
- compilation - 如何在 Tasmota 编译时设置规则
- sql - 使用 Union 和 string_split() 时子查询返回超过 1 个值