Intereting Posts
Как отправить данные multipart / form на веб-сервер из Android? Распознавание активности не работает после того, как «Wi-Fi и местоположение мобильной сети» выключится и включится Почему nextFocusDown не работает с навигацией TalkBack? Как ссылаться на текущую или основную деятельность из другого класса Android: отправьте SMS-сообщение и запустите его в папке «СМС»? Canvas.scale (mScaleFactor, mScaleFactor, detector.getFocusX (), detector.getFocusY ()) перетаскивание переполнения? Как получить установленный список виджетов? Тестирование ViewPager с несколькими фрагментами с использованием эндшпиля android Модернизация с использованием старой школы Соглашение о пакете Java HttpMessageNotReadableException: не удалось прочитать JSON: непризнанное поле, использующее Spring для Android Джексон разбор JSON, содержащий массив объектов и массив карт с динамическими клавишами Отправка электронной почты с помощью GMail в Android Программно изменить drawableLeft of Button Просмотр списка Android Вправо / влево, как журналы вызовов

Класс библиотеки предупреждений proguard android.webkit.WebView зависит от класса программы android.webkit.WebViewClien

У меня есть версия файла android.webkit.WebViewClient в исходном каталоге приложения, чтобы обрабатывать onReceivedSslError в моей собственной расширенной версии WebViewClient. Когда я использую новую интеграцию ProGuard в sdk-7, я получаю следующее предупреждение:

[Proguard] Предупреждение: класс библиотеки android.webkit.WebView зависит от класса программы android.webkit.WebViewClient

[Proguard] Предупреждение: в зависимости от классов программы было 1 экземпляр классов библиотеки. [Proguard] Вы должны избегать таких зависимостей, так как классы программы будут обрабатываться [proguard], а классы библиотеки останутся без изменений.

Может ли кто-нибудь сказать мне, как исправить это в моем proguard.cfg? Благодаря 🙂

Solutions Collecting From Web of "Класс библиотеки предупреждений proguard android.webkit.WebView зависит от класса программы android.webkit.WebViewClien"

Я столкнулся с одной и той же проблемой, и по proguard.cfg выше, я пишу эти строки в 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 

Попробуйте добавить в файл proguard.cfg или proguard-project.txt следующее:

 -dontwarn android.webkit.WebView 

Возможно, это немного поздно, но у меня была такая же проблема. Мне нужно было поддерживать SSL-соединения в WebView на андроидах ниже 2.2.

Я смог успешно построить apk с proguard, выполнив следующие действия:

  • Как сказано в комментариях – удалите файл android.webkit.WebViewClient из своего источника, вместо этого создайте свой собственный класс и расширьте оригинальный WebViewClient только с onRecieveSslError метода onRecieveSslError внутри (без переопределения).

  • Замените существующее использование WebViewClient новым

  • SslError можно оставить без изменений, поскольку на SDK 7 и ниже он не существует в открытом API, поэтому proguard его не заметит.

Вот и все.