1

我注意到 Google Play 服务库中有一个奇怪的异常:

at java.lang.Thread.run(Thread.java:856)Caused by: java.lang.NullPointerException
at android.content.Intent.(Intent.java:3503)
at com.google.android.gms.auth.UserRecoverableAuthException.android.content.Intent getIntent()(Unknown Source)
4

2 回答 2

2

经过检查google-play-services.jar,我发现它们在构造函数null中传递...IntentUserRecoverableAuthException

所以解决方法是:

catch (UserRecoverableAuthException userRecoverableAuthException) {
            Intent intent = userRecoverableAuthException.getIntent();

            if (intent != null) {
                mActivity.startActivityForResult(intent, GOOGLE_PLAY_SERVICES_AUTH_REQUEST_CODE);
            }

编辑:

玩了java反编译器后,我找到了一个原因:

throw new UserRecoverableAuthException("AppDownloadRequired", null);返回 falseGoogleAuthUtil时在类 中抛出。bindService

对此的解决方案是抛出另一种类型的异常或为这种情况提供有效的意图。

很遗憾 Google 没有为 Google Play 服务提供问题跟踪器......

更新:

检查源的新版本(r13)似乎问题已解决。

于 2013-07-09T09:53:14.460 回答
0

我有同样的问题,

与DriveuserRecoverableAuthException.getIntent()类相关的方法,因此,我认为您需要检查Drive类,这确实是必要的。

例如:(public static Drive mDriveService; 它是 mDriveService)

于 2013-08-05T09:43:42.270 回答