Обработка неявных сбоев активности Android
Я начинаю неявную деятельность следующим образом:
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(miniGameSceneStatus.getPackageName());
context.startActivity(launchIntent);
По окончании этого действия я получаю широковещательную рассылку, но если происходит сбой, я ничего не вижу, кроме того, что он без проблем возвращается к первому действию.
Есть ли способ узнать, что происходит во втором упражнении?
1 ответ
Прежде чем получить контекст и miniGameSceneStatu, оберните свой код нулевой проверкой, и ваша деятельность не потерпит крах.
if (context != null && miniGameSceneStatus != null) {
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(miniGameSceneStatus.getPackageName());
context.startActivity(launchIntent);
}
Проверьте разрешение камеры, прежде чем предпринимать какие-либо действия
//Camera permission required for Marshmallow version if (ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.CAMERA)!= PackageManager.PERMISSION_GRANTED) { // Callback onRequestPermissionsResult ActivityCompat.requestPermissions(ActivityName.this, new String[ {Manifest.permission.CAMERA}, ACTION_REQUEST_CAMERA);}