我正在尝试通过这份官方Google文档将Google+整合到Android中。按照给出的步骤:
- 下载最新的SDK。
- 使用Android 4.4.2。
- 配置Eclipse来使用Java 1.7(尽管它说要使用1.6,但我猜这不是我的问题)。
- 然后通过提供
Package.Name
和Sha1
启用了Google+ API。之后,我将导入的google-play-services_lib附加到示例应用程序中进行配置。
现在运行应用程序时,在MainActivity中出现异常。
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(Plus.API, null) // here the exception (nullPointerException)
.addScope(Plus.SCOPE_PLUS_LOGIN).build();
我正在物理设备Android 4.1.2上运行它。
通过Google搜索,但没有找到任何结果。
LogCat:
05-27 10:23:46.808: D/ActivityThread(11136): setTargetHeapUtilization:0.25
05-27 10:23:46.808: D/ActivityThread(11136): setTargetHeapIdealFree:8388608
05-27 10:23:46.808: D/ActivityThread(11136): setTargetHeapConcurrentStart:2097152
05-27 10:23:47.228: D/AndroidRuntime(11136): Shutting down VM
05-27 10:23:47.228: W/dalvikvm(11136): threadid=1: thread exiting with uncaught exception (group=0x411eb438)
05-27 10:23:47.228: E/AndroidRuntime(11136): FATAL EXCEPTION: main
05-27 10:23:47.228: E/AndroidRuntime(11136): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.mygoogleplus/com.example.mygoogleplus.GooglePlusMainActivity}: java.lang.NullPointerException: Null options are not permitted for this Api
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2114)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2139)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.ActivityThread.access$700(ActivityThread.java:143)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1241)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.os.Handler.dispatchMessage(Handler.java:99)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.os.Looper.loop(Looper.java:137)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.ActivityThread.main(ActivityThread.java:4960)
05-27 10:23:47.228: E/AndroidRuntime(11136): at java.lang.reflect.Method.invokeNative(Native Method)
05-27 10:23:47.228: E/AndroidRuntime(11136): at java.lang.reflect.Method.invoke(Method.java:511)
05-27 10:23:47.228: E/AndroidRuntime(11136): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
05-27 10:23:47.228: E/AndroidRuntime(11136): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
05-27 10:23:47.228: E/AndroidRuntime(11136): at dalvik.system.NativeStart.main(Native Method)
05-27 10:23:47.228: E/AndroidRuntime(11136): Caused by: java.lang.NullPointerException: Null options are not permitted for this Api
05-27 10:23:47.228: E/AndroidRuntime(11136): at com.google.android.gms.internal.fq.b(Unknown Source)
05-27 10:23:47.228: E/AndroidRuntime(11136): at com.google.android.gms.common.api.GoogleApiClient$Builder.addApi(Unknown Source)
05-27 10:23:47.228: E/AndroidRuntime(11136): at com.example.mygoogleplus.GooglePlusMainActivity.onCreate(GooglePlusMainActivity.java:89)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.Activity.performCreate(Activity.java:5203)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
05-27 10:23:47.228: E/AndroidRuntime(11136): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2078)
if (0 != (mRequestedClients & CLIENT_PLUS)) { builder.addApi(Plus.API);/*, mPlusApiOptions);*/ builder.addScope(Plus.SCOPE_PLUS_LOGIN); }
- runfaj