android - 解码 : com. google.android.gms.auth.firstparty.shared.PACLConfig 时找不到类

标签 android google-drive-api google-drive-android-api

我已经复制了这个示例应用 https://github.com/googledrive/android-demos

我按照创建 SHA1 的所有说明进行操作,并在 Google 开发者控制台 中正确设置。

我在使用 google play services 时遇到了一些问题(我认为它正在停止),为了解决它,我右键单击了 app > Android tools > Export Signed application package

我安装在我的 Samsung 手机 中。当我启动它时,它要求我选择一个 Gmail 帐户,我照做了。然后我从 ListView 中选择了 Create a folder, 消息 Signing in...This can take a few minutes 出现并且永远无法成功登录。快 30 多分钟了,还在继续。

我检查了 Eclipse 中的 Logcat,我有以下日志。 如何解决?

05-22 21:38:54.677: E/Parcel(2395): Class not found when unmarshalling: com.google.android.gms.auth.firstparty.shared.PACLConfig
05-22 21:38:54.677: E/Parcel(2395): java.lang.ClassNotFoundException: com.google.android.gms.auth.firstparty.shared.PACLConfig
05-22 21:38:54.677: E/Parcel(2395):     at java.lang.Class.classForName(Native Method)
05-22 21:38:54.677: E/Parcel(2395):     at java.lang.Class.forName(Class.java:204)
05-22 21:38:54.677: E/Parcel(2395):     at java.lang.Class.forName(Class.java:169)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Parcel.readParcelableCreator(Parcel.java:2091)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Parcel.readParcelable(Parcel.java:2055)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Parcel.readValue(Parcel.java:1971)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Parcel.readMapInternal(Parcel.java:2255)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Bundle.unparcel(Bundle.java:223)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Bundle.getString(Bundle.java:1082)
05-22 21:38:54.677: E/Parcel(2395):     at android.content.Intent.getStringExtra(Intent.java:4961)
05-22 21:38:54.677: E/Parcel(2395):     at com.android.server.am.ActivityStack.startActivityLocked(ActivityStack.java:3784)
05-22 21:38:54.677: E/Parcel(2395):     at com.android.server.am.ActivityStack.startActivityMayWait(ActivityStack.java:5008)
05-22 21:38:54.677: E/Parcel(2395):     at com.android.server.am.ActivityManagerService.startActivityInPackage(ActivityManagerService.java:3423)
05-22 21:38:54.677: E/Parcel(2395):     at com.android.server.am.PendingIntentRecord.sendInner(PendingIntentRecord.java:254)
05-22 21:38:54.677: E/Parcel(2395):     at com.android.server.am.ActivityManagerService.startActivityIntentSender(ActivityManagerService.java:3315)
05-22 21:38:54.677: E/Parcel(2395):     at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:258)
05-22 21:38:54.677: E/Parcel(2395):     at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2122)
05-22 21:38:54.677: E/Parcel(2395):     at android.os.Binder.execTransact(Binder.java:388)
05-22 21:38:54.677: E/Parcel(2395):     at dalvik.system.NativeStart.run(Native Method)
05-22 21:38:54.677: E/Parcel(2395): Caused by: java.lang.NoClassDefFoundError: com/google/android/gms/auth/firstparty/shared/PACLConfig
05-22 21:38:54.677: E/Parcel(2395):     ... 19 more
05-22 21:38:54.677: E/Parcel(2395): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.auth.firstparty.shared.PACLConfig" on path: .
05-22 21:38:54.677: E/Parcel(2395):     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64)
05-22 21:38:54.677: E/Parcel(2395):     at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
05-22 21:38:54.677: E/Parcel(2395):     at java.lang.ClassLoader.loadClass(ClassLoader.java:461)

list .xml

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" android:permission="android.permission.INTERNET">

 <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version"/>        

最佳答案

当您使用 proguard 来混淆您的代码时,请将以下异常添加到您的 proguard 文件:

-keep class * extends java.util.ListResourceBundle {
    protected Object[][] getContents();
}

-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
    public static final *** NULL;
}

-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
    @com.google.android.gms.common.annotation.KeepName *;
}

-keepnames class * implements android.os.Parcelable {
    public static final ** CREATOR;
}

关于android - 解码 : com. google.android.gms.auth.firstparty.shared.PACLConfig 时找不到类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23807710/

相关文章:

android - 调用 notifyItemMoved() 后 RecyclerView 无法解释的强制向下滚动

java - 使用 Google APIs Java 客户端进行连接和授权

android - 我的应用程序适用于 android 模拟器但不适用于 android 设备

android - 统一: Call android function from Unity

javascript - 谷歌应用脚​​本: Cannot find function insertText in object Document

google-apps-script - 如何使用 Google Apps 脚本将 .heic 从 Google 表单转换为 .jpeg,然后上传到 Google 云端硬盘

android - 如何在谷歌驱动器错误代码 17 上创建文件夹 [用户取消了解决方案]

android - 判断文件夹是否存在,不存在则创建

android - 是否可以对 DividerItemDecoration 使用 Layout 而不是 Drawable?

java - 使用服务器帐户模拟用户以访问其 Google Drive 时出现 401 Unauthorized 错误