Обработка неявных сбоев активности 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);
}
  1. Проверьте разрешение камеры, прежде чем предпринимать какие-либо действия

    //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);}
    
Другие вопросы по тегам