title: issue with resolving activity for an intent - resolveActivityInfo()
body: <p>I am using resolveActivityInfo to determine if my app was set as a home launcher:</p>
  
  <pre><code>    PackageManager pm = getPackageManager();
  
      Intent intent = new Intent(Intent.ACTION_MAIN, null);
      intent.addCategory(Intent.CATEGORY_HOME);   
  
      userHomePackage = intent.resolveActivityInfo(pm, 0).packageName;
      userHomeActivityClass = intent.resolveActivityInfo(pm, 0).name;     
  currentHomeLauncherName = intent.resolveActivityInfo(pm, 0).loadLabel(pm).toString();
  </code></pre>
  
  <p>it works great on emulator and three android devices I have on hands.</p>
  
  <p>Recently I started getting error reports from my users and error log shows that resolveActivityInfo is failing. This happens only on a few phones running on android 2.1 update 1 as I can see. I've received already many positive comments on my app and a few negative because of this issue.</p>
  
  <p>Any advice what could be wrong? </p>
  
  <pre><code>java.lang.NullPointerException
      at android.os.Parcel.readException(Parcel.java:1224)
      at android.os.Parcel.readException(Parcel.java:1206)
      at android.content.pm.IPackageManager$Stub$Proxy.resolveIntent(IPackageManager.java:1418)
      at android.app.ApplicationContext$ApplicationPackageManager.resolveActivity(ApplicationContext.java:2046)
      at android.content.Intent.resolveActivityInfo(Intent.java:3790)
      at com.myapp.myappname.Launcher.setAsHomeApplicationBeforeFroyo(Launcher.java:336)
  </code></pre>
  
  <p>OR</p>
  
  <pre><code>java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp.myappname/com.myapp.myappname.Launcher}: java.lang.NullPointerException
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2497)
      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2513)
      at android.app.ActivityThread.access$2200(ActivityThread.java:119)
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1864)
      at android.os.Handler.dispatchMessage(Handler.java:99)
      at android.os.Looper.loop(Looper.java:123)
      at android.app.ActivityThread.main(ActivityThread.java:4370)
      at java.lang.reflect.Method.invokeNative(Native Method)
      at java.lang.reflect.Method.invoke(Method.java:521)
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:862)
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620)
      at dalvik.system.NativeStart.main(Native Method)
  Caused by: java.lang.NullPointerException
      at android.os.Parcel.readException(Parcel.java:1224)
      at android.os.Parcel.readException(Parcel.java:1206)
      at android.content.pm.IPackageManager$Stub$Proxy.resolveIntent(IPackageManager.java:1418)
      at android.app.ApplicationContext$ApplicationPackageManager.resolveActivity(ApplicationContext.java:2046)
      at android.content.Intent.resolveActivityInfo(Intent.java:3790)
      at com.myapp.myappname.Launcher.showHomeChooserDialog(Launcher.java:141)
      at com.myapp.myappname.Launcher.showNextActivity(Launcher.java:122)
      at com.myapp.myappname.Launcher.onCreate(Launcher.java:59)
      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2460)
      ... 11 more
  java.lang.NullPointerException
      at android.os.Parcel.readException(Parcel.java:1224)
      at android.os.Parcel.readException(Parcel.java:1206)
      at android.content.pm.IPackageManager$Stub$Proxy.resolveIntent(IPackageManager.java:1418)
      at android.app.ApplicationContext$ApplicationPackageManager.resolveActivity(ApplicationContext.java:2046)
      at android.content.Intent.resolveActivityInfo(Intent.java:3790)
      at com.myapp.myappname.Launcher.showHomeChooserDialog(Launcher.java:141)
  </code></pre>