我的应用程序源目录中有一个版本的android.webkit.WebViewClient文件,以便在我自己的WebViewClient扩展版本中处理onReceivedSslError。当我在sdk-7中使用新的ProGuard集成时,我得到以下警告:
[proguard] Warning: library class android.webkit.WebView depends on program class android.webkit.WebViewClient
...
[proguard] Warning: there were 1 instances of library classes depending on program classes.
[proguard] You must avoid such dependencies, since the program classes will
[proguard] be processed, while the library classes will remain unchanged.
有人能告诉我如何在我的proguard.cfg中修复这个问题吗?谢谢:)
发布于 2012-11-06 18:51:31
我遇到了同样的问题,根据上面的提示,我将这几行代码写入proguard.cfg
,问题就解决了:
-keep public class android.net.http.SslError
-keep public class android.webkit.WebViewClient
-dontwarn android.webkit.WebView
-dontwarn android.net.http.SslError
-dontwarn android.webkit.WebViewClient
发布于 2012-04-12 06:58:18
尝试在proguard.cfg或proguard-project.txt文件中添加以下内容:
-dontwarn android.webkit.WebView
发布于 2012-05-05 21:44:12
这可能有点晚了,但我也有同样的问题。我需要在版本低于2.2的android上支持WebView
中的SSL连接。
我能够使用proguard成功地构建apk,原因如下:
正如评论中所说的
android.webkit.WebViewClient
,而不是创建您自己的类,并且只在内部使用onRecieveSslError
方法来扩展原始WebViewClient
(使用新的overriding).android.webkit.WebViewClient
用法不变,因为在SDK7和更低版本中它不存在于 API中,因此proguard不会注意到它。就这样。
https://stackoverflow.com/questions/10052437
复制相似问题