2017-10-15 15 views
0

Android StudioでAndroidアプリケーションを開発しています。現在、Android Studioがデバイスにapkをインストールすると、パッケージインストーラが次のメッセージでクラッシュするため、 "残念ながら、パッケージインストーラは停止しました"。奇妙なことは、アプリケーションを実行すると、1秒間にメインアクティビティとそのコンポーネントが表示されますが、すべてがクラッシュすることです。 これは例外である:AndroidStudioはデバイス上でアプリを実行しません

10-15 22:16:48.185 1793-1793/? E/AndroidRuntime: FATAL EXCEPTION: main 
    Process: com.android.packageinstaller, PID: 1793 
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.packageinstaller/com.android.packageinstaller.permission.ui.GrantPermissionsActivity}: java.lang.NullPointerException: Attempt to get length of null array 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2434) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2494) 
    at android.app.ActivityThread.access$900(ActivityThread.java:153) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1347) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:5451) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Caused by: java.lang.NullPointerException: Attempt to get length of null array 
    at com.android.packageinstaller.permission.ui.GrantPermissionsActivity.computePermissionGrantState(GrantPermissionsActivity.java:312) 
    at com.android.packageinstaller.permission.ui.GrantPermissionsActivity.updateDefaultResults(GrantPermissionsActivity.java:362) 
    at com.android.packageinstaller.permission.ui.GrantPermissionsActivity.onCreate(GrantPermissionsActivity.java:105) 
    at android.app.Activity.performCreate(Activity.java:6323) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2387) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2494)  
    at android.app.ActivityThread.access$900(ActivityThread.java:153)  
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1347)  
    at android.os.Handler.dispatchMessage(Handler.java:102)  
    at android.os.Looper.loop(Looper.java:148)  
    at android.app.ActivityThread.main(ActivityThread.java:5451)  
    at java.lang.reflect.Method.invoke(Native Method)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

あなたは基本的にあなたが特定の機能を使用する権限を付与する必要があり、「実行時に付与された権限」の問題を持って事前

+1

私は、あなたのコードでランタイムアクセス許可を取得しようとするとNullPointerExceptionが発生すると思います。いくつかのコードを共有する必要があります。 – Thracian

+0

インストーラがクラッシュしていますが、これは私たちに多くの情報を与えるものではありません。私はあなたが新しいプロジェクトを開始し、基本的なHello、Worldアプリケーションを実行しようとすることをお勧めします。そこから、実際のアプリのフィーチャをできるだけ小さなものに徐々に追加します。これにより、問題の原因となっている機能を特定するのに役立ちます。 –

+0

もしOPがいくつかのコードを共有しているのであれば、インスタンス化についてではない理由を説明することができます。ヌルですが、私が書いた問題やAndroidManifest.xmlの中で許可を与えることについての答えのほとんどをインスタンス化することができます。 – Thracian

答えて

0

中ありがとうございました。 https://developer.android.com/training/permis

はあなたのマニフェストを見て持っていて、ユーザー権限が追加されていない、そして今の時間https://developer.android.com/guide/topics/manifest/uses-permission-element.htmlで持っている場合は、実行時にチェックするために必要とされている「ユーザー権限」のどちらをチェック: はここを見てください。 その後、最初のリンクに記載されているコードを使用して、実行時アクセス許可を確認します。 覚えておいてください:Android 6.0(APIレベル23)以上では実行時の権限が必要です。下位SDK(< = 22)では、マニフェストに「ユーザー権限」を追加すれば十分です。

関連する問題