Intereting Posts
Объявление активности в AndroidManifest.xml ProgressDialog или ProgressBar замедляет работу приложения под управлением Android 4.1 Не понимаю, как использовать GridLayout.spec () Eclipse: один проект PhoneGap для iPhone и Android? КлассNotFoundException с использованием AndroidAnnotations Панель инструментов с дизайном материала EditText Что люди подразумевают под ПЗУ и прошивкой в ​​контексте андроида? Как перенаправить пользователя в пусковую установку по умолчанию в приложении для Android? Android custom alertdialog отличается от ICS и Gingerbread NoClassDefFoundError, когда я использую lambda для перемещения массива String Предоставляйте бесплатные услуги более ранним покупателям Android – фрагмент .replace () не заменяет содержимое – помещает его поверх Android.provider.MediaStore.ACTION_VIDEO_CAPTURE return null onActivityResult с nexus 7 Динамическое добавление ребенка в LinearLayout с получением позиции каждого ребенка Как записывать видео на Android в Stream

Поврежденные или отсутствующие векторные чертежи после запуска Proguard

Я работаю над приложением, где я использую векторный чертеж, упомянутый ниже

<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="100dp" android:height="100dp" android:viewportHeight="100" android:viewportWidth="100"> <path android:name="curve_left_atrium" android:pathData="M4,48C4,22.6,24.6,2,50,2" android:strokeColor="#eb273f" android:strokeWidth="4" android:trimPathEnd="0" /> <path android:name="curve_right_atrium" android:pathData="M96,48C96,22.6,75.4,2,50,2" android:strokeColor="#eb273f" android:strokeWidth="4" android:trimPathEnd="0" /> </vector> 

Это очень хорошо работает в отладочной сборке, но ее прервали после запуска proguard в сборке релизов.

Ниже перечислены версии библиотек проектирования и appcompat в файле gradle.

  compile 'com.android.support:appcompat-v7:23.4.0' compile 'com.android.support:design:23.4.0' 

Варианты компиляции и сборки

  compileSdkVersion 23 buildToolsVersion = "23.0.1" 

И для поддержки вектора i я сделал следующее в gradle.

  defaultConfig { generatedDensities = [] } aaptOptions { additionalParameters "--no-version-vectors" } 

И в proguard для библиотеки дизайна и поддержки я сделал это

  -dontwarn android.support.v7.** -keep class android.support.v7.** { *; } -keep interface android.support.v7.** { *; } # support design -dontwarn android.support.design.** -keep class android.support.design.** { *; } -keep interface android.support.design.** { *; } -keep public class android.support.design.R$* { *; } -dontwarn android.support.** 

Этот вопрос даже открыт здесь

https://code.google.com/p/android/issues/detail?id=209558#makechanges

Любая помощь будет оценена. Спасибо заранее.

В моем случае эта строка помогает мне: -keepattributes LocalVariableTable

Привет, я сам решил эту проблему. На самом деле мне пришлось добавить следующий файл proguard

 -keep class VectorPlay.** { *; } -keep interface VectorPlay.** -keep enum VectorPlay.** 

И это сработало. Спасибо всем за помощь.

Я добавил следующий код в файл dexguard, чтобы устранить проблему:

 # keep setters in VectorDrawables so that animations can still work. -keepclassmembers class android.support.graphics.drawable.VectorDrawableCompat$* { void set*(***); *** get*(); } -keepresourcexmlattributenames vector/** 

(Частично скопировано с https://code.google.com/p/android/issues/detail?id=209558#makechanges )