2014-12-01 89 views
4

我去了谷歌對如何從我的Android應用與Google+分享狀態描述:https://developers.google.com/+/mobile/android/share/
(我做的一個示例應用程序,不正是他們的例子做)Android的 - Google+分享狀態失敗

我得到這個異常:

Process: com.google.android.gms.ui, PID: 19643 
java.lang.IllegalArgumentException 
     at com.google.k.a.aj.a(SourceFile:72) 
     at com.google.android.gms.plus.audience.a.e.<init>(SourceFile:63) 
     at com.google.android.gms.plus.audience.a.e.<init>(SourceFile:53) 
     at com.google.android.gms.plus.audience.a.d.<init>(SourceFile:28) 
     at com.google.android.gms.plus.sharebox.al.a(SourceFile:213) 
     at android.support.v4.app.ax.c(SourceFile:490) 
     at android.support.v4.app.ax.d(SourceFile:499) 
     at android.support.v4.app.ax.b(SourceFile:646) 
     at com.google.android.gms.plus.sharebox.al.a(SourceFile:192) 
     at com.google.android.gms.plus.sharebox.ShareBoxActivity.a(SourceFile:525) 
     at com.google.android.gms.plus.sharebox.au.a(SourceFile:810) 
     at com.google.android.gms.plus.internal.ce.a(SourceFile:214) 
     at com.google.android.gms.common.internal.v.d(SourceFile:200) 
     at com.google.android.gms.common.internal.u.handleMessage(SourceFile:136) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:135) 
     at android.app.ActivityThread.main(ActivityThread.java:5221) 
     at java.lang.reflect.Method.invoke(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:372) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 

這似乎錯誤是從內部「谷歌播放服務」來,但我不知道爲什麼?

想法?

+1

這有點離題,但我發現這些方法名稱混淆可怕的事實。 – atok 2014-12-01 19:06:27

+0

前L設備也發生崩潰嗎?我只在L設備上發現了碰撞事故。Kitkat工作,Lollipop墜毀。 – Tarun 2014-12-23 20:44:05

回答

2

在我更新我的項目中的Google Play服務庫之後,我經歷了同樣的行爲。我通過PlusShare.Builder啓動了G +共享對話框,導致應用崩潰。我通過切換到ShareCompat.IntentBuilder來解決該問題(共享對話框完全相同)。

+0

是的這個解決方案的工作原理,但它不是同一個對話框。您希望loggedIn用戶成爲共享的用戶。 – refaelos 2014-12-04 19:40:14

3

我使用google-play-services 6.1.71看到了同樣的錯誤。上面的Edu Barbas有正確的答案,使用ShareCompat.IntentBuilder似乎可以解決問題。我沒有足夠的積分對他的回答發表評論,但我想補充一點,共享活動的意圖和啓動建設,是有一點不同:

 Intent shareIntent = ShareCompat.IntentBuilder.from(TheCurrentActivity.this) 
       .setType("text/plain") 
       .setText(statusMessage) 
       .getIntent() 
       .setPackage("com.google.android.apps.plus"); 

     startActivityForResult(shareIntent, 0); 

離開關setPackage(「融爲一體。 google.android.apps.plus「)提供了一個通用的Android共享對話框,允許您通過電子郵件,藍牙和短信進行分享,除了Google plus。添加setPackage行允許您繞過該對話框並通過Google plus專門分享。

相關問題