Android 8.0上的Google Play OBB downloader库崩溃
OBB下载程序库似乎使用Context.startService(…)在后台下载OBB,但在Android 8.0上,如果应用程序本身在后台,这会导致崩溃。 此库注册广播接收器:Android 8.0上的Google Play OBB downloader库崩溃,android,google-play,android-8.0-oreo,background-service,Android,Google Play,Android 8.0 Oreo,Background Service,OBB下载程序库似乎使用Context.startService(…)在后台下载OBB,但在Android 8.0上,如果应用程序本身在后台,这会导致崩溃。 此库注册广播接收器: mConnReceiver = new InnerBroadcastReceiver(this); IntentFilter intentFilter = new IntentFilter( ConnectivityManager.CONNECTIVITY_ACTION); intentFilter.a
mConnReceiver = new InnerBroadcastReceiver(this);
IntentFilter intentFilter = new IntentFilter(
ConnectivityManager.CONNECTIVITY_ACTION);
intentFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
registerReceiver(mConnReceiver, intentFilter);
接收器istelf:
private class InnerBroadcastReceiver extends BroadcastReceiver {
final Service mService;
InnerBroadcastReceiver(Service service) {
mService = service;
}
@Override
public void onReceive(Context context, Intent intent) {
pollNetworkState();
if (mStateChanged
&& !isServiceRunning()) {
Log.d(Constants.TAG, "InnerBroadcastReceiver Called");
Intent fileIntent = new Intent(context, mService.getClass());
fileIntent.putExtra(EXTRA_PENDING_INTENT, mPendingIntent);
// send a new intent to the service
context.startService(fileIntent);
}
}
};
崩溃堆栈stace:
那么,避免此类碰撞的首选方法是什么?或者这种用户体验在Android 8.0+中是正常的