2015-05-19 391 views
2

我提出以下電話:的Android getLaunchIntentForPackage返回null

Intent launchIntent = context.getPackageManager() 
           .getLaunchIntentForPackage(packageName); 

它崩潰與下面的堆棧跟蹤NPE:

顯示java.lang.NullPointerException在 android.app.Instrumentation.execStartActivity (Instrumentation.java:1423) at android.app.Activity.startActivityForResult(Activity.java:3584)at android.app.Activity.startActivityForResult(Activity.java:3545)at android.su pport.v4.app.FragmentActivity.void startActivityForResult(android.content.Intent,int)(SourceFile:817)at android.app.Activity.startActivity(Activity.java:3787)at android.app.Activity.startActivity (Activity.java:3755)at utils.AppsLauncher.voidlaunchApp(android.content.Context,java.lang.String)(SourceFile:100) at utils.AppsLauncher.void launchAppIfInstalledOtherwiseMarket(android.app.Activity,java。 lang.String,utils.AppReportingParams)(的SourceFile:73) 在utils.AppsLauncher.void launchAppIfInstalledOtherwiseMarket(android.app.Activity,java.lang.String中)(的SourceFile:51) 在adapters.BaseGamesListAdapter.void launchAppIfInstalledOtherwiseMarket( java.lang.String)(SourceFile:119) 在 adapters.UserGamesAdapter $ UserGameUIHolder $ 1.void 的onClick(android.view.View)(的SourceFile:198)在 android.view.View.performClick(View.java:4658)在 android.view.View $ PerformClick .run(View.java:19461)at android.os.Handler.handleCallback(Handler.java:733)at android.os.Handler.dispatchMessage(Handler.java:95)at android.os.Looper.loop (Looper.java:146)at android.app.ActivityThread.main(ActivityThread.java:5692)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke( Method.java:515)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1291) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)在 dalvik.system.NativeStart.main(本機方法)

我認爲getLaunchIntentForPackage(的packageName)返回一個空的意圖。我無法弄清楚GREPcode爲什麼返回空值:(http://grepcode.com/file/repo1.maven.org/maven2/org.robolectric/android-all/5.0.0_r2-robolectric-0/android/app/ApplicationPackageManager.java#ApplicationPackageManager.getLaunchIntentForPackage%28java.lang.String%29

請務必注意,該軟件包確實存在並安裝在設備上。

+0

你知道嗎?我面臨着類似的問題。 –

回答

-3

contextcontext.getPackageManager()爲空。