如何在Android Studio中为亚马逊应用商店和谷歌游戏商店构建apk以及相应的应用内购买API

时间:2016-08-14 07:41:57

标签: android google-play amazon

我想在Android Studio中创建的同一个项目中为Google Play商店和亚马逊应用商店构建。由于应用内购买API不同,我会在为目标商店创建APK之前进行一些调整。当我从一个目标切换到另一个目标时,如何节省时间。一些手动过程是可以的。以下是谷歌应用商店的gradle源设置。

sourceSets {
    main {
        manifest.srcFile 'app/src/main/AndroidManifest.xml'
        java.srcDirs = ['app/src/main/java']
        resources.srcDirs = ['app/src']
        aidl.srcDirs = ['app/src/main/aidl']
        res.srcDirs = ['app/src/main/res']
        assets.srcDirs = ['app/src/assets']
    }

1 个答案:

答案 0 :(得分:0)

声明两个gradle flavour,例如googleplayamazon

   productFlavors {
        googleplay {
            applicationId = '...'
        }
        amazon {
            applicationId = '...'
        }
   }

对于每个flavour,Gradle库的依赖关系应该有所不同。

googleplayImplementation "...gp_library..."
amazonImplementation "...amazon_dependency..."

这样,特定于商店的构建将不包含其他商店依赖项类,资源等。

然后声明例如StoreProvider的接口,它将成为所有商店特定的api调用的输入点。在googleplay风格源集中,提供StoreProvider的实现,该实现将调用GooglePlay存储方法。在amazon中提供StoreProvider的实现,该实现将调用Amazon store方法。使用链接到StoreProvider接口的应用程序中的任何地方。如果以这种方式组织应用程序,则您的应用程序将不了解其使用的商店。另外,将来很容易添加另一个商店支持。