Через некоторое время после значительной потери дохода выяснилось, что Сокращение кода Android R8 препятствует работе Amazon In-App покупок (IAP) 2.0. Android Studio теперь использует R8 по умолчанию. К счастью, следующее в gradle.properties может остановить R8:
android.enableR8=false
Боюсь, R8 будет обязательным в будущем, и это будет катастрофа. Я пытаюсь найти способ сделать их совместимыми.
Кто-то опубликовал аналогичный вопрос на форуме Amazon , который, как предполагается, является лучшим местом для таких вопросов, но у меня есть ощущение, что Amazon прекратил поддержку форума, потому что мои последние два вопроса там не получили ответа от Amazon ,
У меня есть следующий файл в proguard-project.txt, который используется R8
#amazon
-dontwarn com.amazon.**
-keep class com.amazon.** {*;}
-keepattributes *Annotation*
-optimizations !code/allocation/variable
-optimizationpasses 1
Как я понимаю, R8 игнорирует проходы оптимизации. Я подозреваю, что это причина.
Edit (2019-05-30)
Вышеупомянутый скрипт для proguard-project.txt взят из Документа Amazon для покупки в приложении
В build.gradle приложения есть следующее:
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
signingConfig signingConfigs.Release
}