Java Facebook的Android ProGuard设置

Java Facebook的Android ProGuard设置,java,android,eclipse,proguard,Java,Android,Eclipse,Proguard,我终于找到了我的应用程序崩溃的原因。ProGuard确实在从我的应用程序中剥离代码,但我通过在ProGuard-android.txt(sdk中找到)中使用keep命令手动添加类来防止这种情况 对于我使用的Facebook: -keep class com.facebook.android.* -keep class android.webkit.WebViewClient -keep class * extends android.webkit.WebViewClient -keepclass

我终于找到了我的应用程序崩溃的原因。ProGuard确实在从我的应用程序中剥离代码,但我通过在ProGuard-android.txt(sdk中找到)中使用keep命令手动添加类来防止这种情况

对于我使用的Facebook:

-keep class com.facebook.android.*
-keep class android.webkit.WebViewClient
-keep class * extends android.webkit.WebViewClient
-keepclassmembers class * extends android.webkit.WebViewClient { 
    <methods>; 
}
固定的:

而不是:

-keepattributes Signature
-keep class com.facebook.android.*
-keep class android.webkit.WebViewClient
-keep class * extends android.webkit.WebViewClient
-keepclassmembers class * extends android.webkit.WebViewClient { 
    <methods>; 
}
-keepattributes签名
-保持类com.facebook.android*
-保留类android.webkit.WebViewClient
-keep class*扩展了android.webkit.WebViewClient
-keepclassmembers类*扩展了android.webkit.WebViewClient{
; 
}

还要确保在facebook应用程序设置中检查您的哈希键。

在我的情况下,检查您的解决方案

-keep class com.facebook.** {
   *;
}
工作,但我必须保持

-keepattributes Signature

为了让一切正常工作。

它有帮助,但毫无用处。这是一个多么可怕的笑话啊!但它不会混淆Facebook SDK中的任何内容。尽管您没有使用SDK的所有功能,但它只是存在于您的代码中。这很糟糕。
-keepattributes Signature
-keep class com.facebook.android.*
-keep class android.webkit.WebViewClient
-keep class * extends android.webkit.WebViewClient
-keepclassmembers class * extends android.webkit.WebViewClient { 
    <methods>; 
}
-keep class com.facebook.** {
   *;
}
-keepattributes Signature