Их руководство предлагает заменить строки Java/Kotlin следующим образом, и с первого взгляда это работает хорошо. Просто замените:
Код: Выделить всё
import com.android.billingclient.api.*
Код: Выделить всё
import com.amazon.device.iap.billingclient.api.*
Код: Выделить всё
flavorDimensions = ["appstore"]
productFlavors {
google {
dimension "appstore"
buildConfigField "String", "ENCRYPTED_GOOGLE_IAP_KEY", ""
}
amazon {
dimension "appstore"
buildConfigField "String", "ENCRYPTED_GOOGLE_IAP_KEY", "ignored"
}
}
Код: Выделить всё
dependencies {
...
googleImplementation 'com.android.billingclient:billing:6.1.0'
amazonImplementation files('libs/appstore-billing-compatibility-4.1.0.jar')
}
Код: Выделить всё
#if defined(amazon)
import com.android.billingclient.api.*
#endif
#if defined(google)
import com.amazon.device.iap.billingclient.api.*
#endif
Код: Выделить всё
src/
|-- google/
| |-- java/
| |-- com/
| |-- example/
| |-- MyPurchaseCode.kt
|-- amazon/
| |-- java/
| |-- com/
| |-- example/
| |-- MyPurchaseCode.kt

Есть предложения, как это сделать? Я задался вопросом о создании своего рода интерфейса-обертки, а затем о наличии двух исходных файлов, расположенных, как указано выше, которые его реализуют. Но они большие и содержат множество классов, и я понимаю, что мне придется клонировать объявления.
Возможно, я слишком много думаю об этом, и есть какой-то простой ответ! (Я признаю, что мои знания Java/Kotlin угасли…)
Заранее спасибо!
Подробнее здесь: https://stackoverflow.com/questions/781 ... -vs-amazon