1

从过去 1 年的调查来看(不确定它是否仍然有效),似乎开发人员在 Amazon App Store 中产生的收入超过了 Google Play。这很令人惊讶,因为我认为每个 Android 设备都可以找到 Google Play。它应该会产生大部分收入。不知道为什么。

因此,我打算在 Amazon App Store 中尝试一下。但是,我意识到我需要为 Google Play 和 Amazon App Store 维护 2 套应用内购买代码?

我想知道,你们大多数人如何维护这样的代码?除了使用RoboBillingLibrary。我仍然尽量不依赖 3rd 方库,除非我真的必须这样做。因为拥有稳定的应用内购买流程并不容易。我有时会收到有关应用内购买的崩溃报告,但不知道为什么。尽管几乎所有代码都只是从官方代码示例中复制粘贴。

4

1 回答 1

0

我使用 BAT 文件来构建不同的版本(Android、Kindle Fire、iOS)。每个版本都针对指示目标市场的条件编译符号使用不同的值构建。

我将这种方法用于我的代码:

  1. 创建一个IBilling接口,典型成员有init()、isAvailable()、purchase(sku)、getInventory(player)等。
  2. 创建类 Billing、BillingGoogle、BillingAmazon 和 BillingApple。都实现了 IBilling。
  3. 在主Billing 类的每个方法中,条件编译符号用于调用三个市场Billing 类之一中的相应方法。市场特定代码处理细节。

    class Billing implements IBilling
    {
        void init() 
        {
           if marketplace-conditional-var == 'G'
                 BillingGoogle.init();
           if marketplace-conditional-var == 'A'
                 BillingAmazon.init();
           if marketplace-conditional-var == 'P'
                 BillingApple.init();
        }
    
        // similar code for isAvailable(), purchase(sku), etc. follows
     }
    
于 2013-06-27T22:53:14.723 回答