as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
Ring
AWS
文档
Support
Contact Us
My Cases
开发
测试
应用发布
盈利
用户参与
设备规格
资源

亚马逊应用商店计费兼容性SDK

亚马逊应用商店计费兼容性SDK

如果您现有的Android应用已与Google Play结算库集成,则可使用亚马逊应用商店计费兼容性SDK,只需进行极少的更改即可将应用移植到亚马逊应用商店。SDK支持消费品、权利和订阅应用内购买 (IAP)。亚马逊应用商店计费兼容性SDK与Google Play结算库4.0、5.0、6.0和7.0版本兼容。

下表显示了Google Play结算库、亚马逊应用商店SDK和亚马逊应用商店计费兼容性SDK之间的功能比较。

功能比较
功能 Google Play结算库 亚马逊应用商店SDK 亚马逊应用商店计费兼容性SDK
订阅
权利
消费品
数字版权管理 (DRM)

集成亚马逊应用商店计费兼容性SDK

按照此分步指南,将亚马逊应用商店计费兼容性SDK与您的应用集成。

步骤1.将SDK添加至您的应用

亚马逊应用商店计费兼容性SDK可通过Maven Central分发。要将亚马逊应用商店计费兼容性SDK添加到您的应用,请在build.gradle文件的依赖项部分添加以下代码。

dependencies {
   ...
   implementation 'com.amazon.device:appstore-billing-compatibility:4.2.0'
   ...
}

如果项目的顶级build.gradle没有定义Maven Central存储库,请务必添加该库:有关添加Maven Central存储库的更多详细信息,请参阅管理远程存储库

关于依赖项的注意事项

  • 如果您的代码库中存在任何亚马逊应用商店SDK依赖项,请将其移除。
  • 也可从应用中移除Google Play结算库依赖项。

步骤2:使用公钥配置您的Android应用

每个应用的公钥都是唯一的,它会在亚马逊应用商店和您的应用之间建立起安全的通信渠道。当您在亚马逊开发者控制台中生成公钥时,亚马逊会生成相应的私钥。这些公钥和私钥会构成密钥对,用于签署许可证响应。通过这种密钥配对,您可以确保应用仅限授权用户安装。

要使用公钥配置您的Android应用,请执行以下操作:

  1. 使用开发者账户登录开发者控制台
  2. 从导航栏中选择我的应用。如果您已有应用,请找到您的应用,展开该行,然后选择View (查看)以打开应用详情页。否则,请单击添加新应用按钮以创建新应用,然后填写“新应用提交”页面。
  3. 前往上传您的应用文件屏幕上的其他信息部分。
  4. 单击查看公钥
  5. 在显示的“公钥”对话框中,单击AppstoreAuthenticationKey.pem链接,下载PEM文件。该文件包含您的公钥。
  6. 复制AppstoreAuthenticationKey.pem文件。将其粘贴到您的Android应用项目的app/src/main/assets文件夹中。如果没有该文件夹,请创建该文件夹。

也可移除Google Play结算公钥依赖项。

步骤3:使用接收器配置AndroidManifest.xml文件

亚马逊应用商店计费兼容性SDK以异步方式执行其所有活动。应用需要通过BillingResponseReceiver类从亚马逊应用商店接收广播意图。在应用中,此类从不被直接使用,但要让应用能够接收意图,就必须在清单中添加BillingResponseReceiver条目。

以下示例代码展示了如何在亚马逊应用商店计费兼容性SDK的AndroidManifest.xml文件中添加BillingResponseReceiver。如果您的应用以Android 12或更高版本为目标,则必须在MainActivityResponseReceiver中显式地将android:exported设置为true

<application>
...
    <activity android:name="com.amazon.sample.iap.entitlement.MainActivity"
              android:label="@string/app_name" android:exported="true" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    
    <receiver android:name="com.amazon.device.iap.billingclient.api.BillingResponseReceiver" android:exported="true"
              android:permission="com.amazon.inapp.purchasing.Permission.NOTIFY">
        <intent-filter>
            <action android:name="com.amazon.inapp.purchasing.NOTIFY" />
        </intent-filter>
    </receiver>
...
</application>

步骤4:更新导入声明

通过找出所有使用com.android.billingclient.api前缀之处并将其替换为com.amazon.device.iap.billingclient.api前缀,更新应用代码库中的Google Play结算导入,以使用亚马逊应用商店计费兼容性SDK导入。

如果任何亚马逊应用商店计费兼容性SDK导入语句未被解析,则表示亚马逊应用商店计费兼容性SDK不支持该语句。请移除或修改应用中使用该语句之处,以使该语句适用于亚马逊应用商店。

后续步骤

请参阅实现Google Play结算接口


Last updated: 2026年4月15日