在Android8.0中,由java.lang.RuntimeException : java.lang.IllegalStateException in super.onCreate()引起的错误
public final class ClockApp extends Application {
@Override
public void onCreate() {
super.onCreate();
startService(new Intent(getApplicationContext(), MyService.class));
}
}
错误日志如下所示:
j
我从MainActivity:onCreate启动了一个IntentService,我在上面的Android Oreo上的崩溃报告中注意到了这个崩溃:
java.lang.IllegalStateException: Not allowed to start service Intent { cmp=com.company.mobile/com.company.mobile.gcm.RegistrationIntentService }: app is in background uid UidRecord{c96fbae u0a184 TPSL idle procs:1 seq(0,0,0)
我正在调查几个只在Android9设备上运行的IllegalStateExceptions,我不能复制它们。首先,我认为这取决于后台启动服务的限制,但首先它们是在Android8中引入的,我在Android8和2上没有得到这些异常。堆栈跟踪显示服务是从onCreate启动的,所以它是在前台启动的,不是吗?
完整的堆栈跟踪:
java.lang.RuntimeException:
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3430)
at android.app.ActivityThread
最近,我们突然看到了下面的几个堆栈跟踪。为什么会这样?这是从应用程序试图将音频评论服务移动到前台与媒体通知和一切。
java.lang.SecurityException: Permission Denial: startForeground from pid=1824, uid=10479 requires android.permission.FOREGROUND_SERVICE
at android.os.Parcel.createException(Parcel.java:1942)
at android.os.Parcel.readException(Parcel.j
这里,当消费者调用MapService时,SDK尝试在内部启动它的MapEngine.init()。由于Android8后台执行限制,如果要从后台服务初始化MapEngine,这将失败。是否有任何方法可以初始化不涉及SDK在内部启动服务的MapEngine?
异常日志:
> java.lang.IllegalStateException: Not allowed to start service Intent { act=com.here.android.mpa.service.MapService.v3 cmp=de.newecho.app/com.here.android.mpa.s
这是密码
FragmentManager fm = getSupportFragmentManager();
int count = fm.getBackStackEntryCount();
for (int i = 0; i < count; ++i) {
fm.popBackStackImmediate();
}
此代码在所有情况下都正常工作。但是当从广播接收器调用时,我们得到了非法的状态异常。
共享逻辑猫
java.lang.RuntimeException:
at android.app.LoadedApk$ReceiverD
我收到了以下坠机的报告
SecurityException: <<other_package>> from uid xxx not allowed to perform READ_CLIPBOARD
当用户单击一个将文本复制到剪贴板中的按钮时,就会发生崩溃,如下所示。
val clipboard = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
val clip = ClipData.newPlainText("label", shareUrl)
clipb
当我尝试使用jdbc连接并保存数据到OracleDB时,我得到了“没有更多的数据可以从套接字读取”错误。我使用的是Oracle 11g,版本: 11.2.0.4。下面是错误堆栈跟踪:
30.01.2017 11:32:07.047 *ERROR* [10.26.69.137 [1485793927029] POST /bin/xxx/formdata HTTP/1.1] com.pnc.main.businessddaapp.dao.impl.BusinessDDAApplicationDAOImpl SQL exception while storing data in table
jav
因为关于Android9,如果startService()是从背景调用的,它就会抛出一个。在我的开发人员控制台中,我多次看到这个异常:
java.lang.IllegalStateException:
at android.app.ContextImpl.startServiceCommon (ContextImpl.java:1666)
at android.app.ContextImpl.startService (ContextImpl.java:1611)
在这种情况下,谷歌建议调用startForegroundService(),并在5秒内调用startForeground(
我在HockeyApp崩溃报告中找到了这个堆栈跟踪。
View=org.chromium.content.browser.input.PopupTouchHandleDrawable{a132f39 I.ED ......I. 0.0-189,232}未附加到android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:402) at android.view.WindowManagerGlobal.updateViewLayout(WindowManagerGlobal.java:314) at andro
Process: com.firstmile.taxicabondemandtaxi, PID: 9900
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.firstmile.taxicabondemandtaxi/com.firstmile.taxicabondemandtaxi.activity.MainActivity}: **java.lang.IllegalStateException: Not allowed to start service Intent { cmp=co