android - 邀请id不能为空

标签 android google-play-services parcelable

我的日志中有一个奇怪的错误报告。以下是堆栈跟踪:

Fatal Exception: java.lang.IllegalArgumentException: Invitation id can not be empty.
       at android.os.Parcel.readException(Parcel.java:1550/1559/1544/1603)
       at android.os.Parcel.readException(Parcel.java:1499/1505/1493/1552)
       at com.google.android.gms.internal.zzkn$zza$zza.zza(Unknown Source)
       at com.google.android.gms.internal.zzkk.zzgh(Unknown Source)
       at com.google.android.gms.internal.zzkj$zzd.zza(Unknown Source)
       at com.google.android.gms.internal.zzkj$zzd.zza(Unknown Source)
       at com.google.android.gms.internal.zzlx$zza.zzb(Unknown Source)
       at com.google.android.gms.internal.zzmd.begin(Unknown Source)
       at com.google.android.gms.internal.zzmd.zzb(Unknown Source)
       at com.google.android.gms.internal.zzmi.zzb(Unknown Source)
       at com.google.android.gms.internal.zzmg.zzb(Unknown Source)
       at com.google.android.gms.internal.zzmg.zza(Unknown Source)
       at com.google.android.gms.internal.zzme.zzpi(Unknown Source)
       at com.google.android.gms.internal.zzme.begin(Unknown Source)
       at com.google.android.gms.internal.zzmi.zza(Unknown Source)
       at com.google.android.gms.internal.zzlz.onConnected(Unknown Source)
       at com.google.android.gms.common.internal.zzj$zzg.zzk(Unknown Source)
       at com.google.android.gms.common.internal.zzj$zza.zzqv(Unknown Source)
       at com.google.android.gms.common.internal.zzj$zza.zzqv(Unknown Source)
       at com.google.android.gms.common.internal.zzj$zzc.zzqx(Unknown Source)
       at com.google.android.gms.common.internal.zzj$zzb.handleMessage(Unknown Source)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:135/211/145/148)
       at android.app.ActivityThread.main(ActivityThread.java:5294/5373/5835/5417)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904/1020/1399/726)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699/815/1194/616)

我添加了堆栈跟踪的斜线变体,其中只是行号因不同的 android 版本而不同。我正在使用 8.3.0 版的播放服务。如果您有任何想法,请留下答案或评论。自那条消息Invitation id can not be empty当我在 Google 上搜索时没有返回任何结果。

请不要关闭它太快,因为我想在 Google+ 上链接它在 bug tracker 上从 Google 获得反馈。

最佳答案

我刚刚又检查了一些崩溃日志,发现了这个:

Fatal Exception: java.lang.RuntimeException: Unable to start receiver my.package.name.ReferralReceiver: java.lang.IllegalArgumentException: Invitation id can not be empty.
       at android.app.ActivityThread.handleReceiver(ActivityThread.java:2680)
       at android.app.ActivityThread.access$1700(ActivityThread.java:156)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1428)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:211)
       at android.app.ActivityThread.main(ActivityThread.java:5373)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
Caused by java.lang.IllegalArgumentException: Invitation id can not be empty.
       at android.os.Parcel.readException(Parcel.java:1559)
       at android.os.Parcel.readException(Parcel.java:1505)
       at com.google.android.gms.internal.zzkn$zza$zza.zza(Unknown Source)
       at com.google.android.gms.internal.zzkk.zzgh(Unknown Source)
       at com.google.android.gms.internal.zzkj$zzd.zza(Unknown Source)
       at com.google.android.gms.internal.zzkj$zzd.zza(Unknown Source)
       at com.google.android.gms.internal.zzlx$zza.zzb(Unknown Source)
       at com.google.android.gms.internal.zzmd.begin(Unknown Source)
       at com.google.android.gms.internal.zzmd.zzb(Unknown Source)
       at com.google.android.gms.internal.zzmd.begin(Unknown Source)
       at com.google.android.gms.internal.zzmi.zza(Unknown Source)
       at com.google.android.gms.internal.zzmg.zza(Unknown Source)
       at com.google.android.gms.internal.zzkj.convertInvitation(Unknown Source)
       at my.package.name.ReferralReceiver.onReceive(ReferralReceiver.java:72)
       at android.app.ActivityThread.handleReceiver(ActivityThread.java:2673)
       at android.app.ActivityThread.access$1700(ActivityThread.java:156)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1428)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:211)
       at android.app.ActivityThread.main(ActivityThread.java:5373)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)

导致此堆栈跟踪中异常的那行代码是:

AppInvite.AppInviteApi.convertInvitation(getApiClient(), invitationId);

所以我猜测这是相关的,崩溃是由空的 invitationId 引起的。我添加了一个空检查,让我们看看这个崩溃是否会再次出现。

关于android - 邀请id不能为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34261732/

相关文章:

Android Lollipop (5.1.1) - 创建套接字连接时如何使用 IPV6 地址

android - PublisherAdView.loadAd() 抛出 SecurityException - getTasks() 需要 android.permission.GET_TASKS

android - Google Play Beta 测试中的不同包名称

android - Play 服务广告库 7.5.0 需要 WRITE_EXTERNAL_STORAGE 权限

android - 使用在 Kotlin 中将列表作为参数的辅助构造函数创建 Parcelable 类

android - Firebase 在 Android 中使用子数据检索父数据

android - Apk 在 Google Playstore 上发布时暂停违反模拟政策

java - Android 应用程序关闭后从设备中删除照片

android.os.TransactionTooLargeException 随机抛出

android - 读取嵌套的 Parcelable 时崩溃