设置其他商店支付

nowSDK 通过支付模块支持在 now.gg 支持和其他商店进行支付。本文档说明了设置其他商店支付所需的步骤。

前提条件

启用其他商店支付需满足以下要求:


1. 支持的商店

当前支持以下商店:

  • now.gg平台商店
    • 云商店
    • BlueStacks商店
  • 其它商店
    • 三星Galaxy商店
    • 小米GetApps
    • ONE Store
    • 亚马逊应用商店
    • 华为应用市场(即将上线)

2. 构建配置

集成nowSDK支付模块后,在提交最终APK前,请确保完成以下更改。

2.1 在build.gradle中添加依赖

请将以下依赖项添加到您的模块/应用级build.gradle文件:

注意:仅适用于原生 Android 应用。

<!-- 小米GetApps -->
 implementation "com.xiaomi.billingclient:billing:1.1.3"

<!-- ONE Store -->
 implementation "com.onestorecorp.sdk:sdk-iap:21.01.00"


2.2 添加/更新仓库

请在根目录build.gradlesettings.gradle中包含以下仓库:

 <!-- ONE Store -->
  pluginManagement {
     repositories {
         google {
             content {
                 includeGroupByRegex("com\\.android.*")
                 includeGroupByRegex("com\\.google.*")
                 includeGroupByRegex("androidx.*")
             }
         }
         maven { url "https://jitpack.io" }
         maven { url = uri("https://repo.onestore.net/repository/onestore-sdk-public") }
         mavenCentral()
         gradlePluginPortal()
     }
 }
 dependencyResolutionManagement {
     repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
     repositories {
         google()
         mavenCentral()
         maven { url "https://jitpack.io" }
         maven { url = uri("https://repo.onestore.net/repository/onestore-sdk-public") }
     }
 }


2.3 更新AndroidManifest.xml

请在您的应用AndroidManifest.xml文件中添加以下内容:

<!-- 三星Galaxy商店 -->
 <uses-permission android:name="com.samsung.android.iap.permission.BILLING"/>
 <uses-permission android:name="android.permission.INTERNET"/>

 <!-- ONE Store -->
 <queries>
   <intent>
     <action android:name="com.onestore.ipc.iap.IapService.ACTION" />
   </intent>
   <intent>
     <action android:name="android.intent.action.VIEW" />
     <data android:scheme="onestore" />
   </intent>
 </queries>

 <!-- 亚马逊应用商店 -->
 <queries>
   <package android:name="com.amazon.sdktestclient" />
   <package android:name="com.amazon.venezia" />
 </queries>


2.4 添加三星库

注意:仅适用于 三星 Galaxy 应用商店原生 Android 应用

操作步骤:

  1. 前往nowSDK包/Modules/Payments目录,找到samsung_iap-release.aar文件。
  2. 将该.aar文件添加到您的项目libs目录下。


2.5 添加ProGuard规则(仅在使用ProGuard/R8时)

如果您的应用已启用ProGuard/R8,请将以下规则添加到您的ProGuard配置中:

重要

  • 仅当您的应用启用ProGuard/R8时需要。
 <!-- ONE Store -->
  -keep class com.gaa.sdk.base.** { *; }
  -keep class com.gaa.sdk.auth.** { *; }
  -keep class com.gaa.sdk.iap.** { *; }
  -keep class com.onestore.extern.licensing.** { *; }

3. 其他要求

以下为不同商店的特定额外要求。

3.1 小米GetApps – 已签名空APK

小米在初次提交时需要已签名的空APK用于验证应用的签名证书。此步骤可防止签名不一致,并确保后续应用更新的完整性和真实性。

操作步骤:

1. 下载空APK

2. 使用您的keystore生成/签名:

keytool -genkey -v -keystore <your-release-key.keystore> -alias <your-key-alias> -keyalg RSA -keysize 2048 -validity 10000

 jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore <your-release-key.keystore> <your-app.apk> <your-key-alias>

3. 将签名后的APK以主题小米 – 已签名空APK,发送邮件至dev-support@now.gg

注意:如应用已在Google Play发布,建议使用相同的keystore进行签名。



3.2 ONE Store – 启用全球发布

如果您希望全球(韩国以外)发布应用,ONE Store需要一个已签名的output.zip。该文件包含您的加密应用签名密钥,ONE Store可安全管理应用签名,并验证全球分发时应用的真实性。

工作流程

  • 我们将为您的应用提供专用加密密钥,您可以用它导出并加密您的私有签名密钥,生成output.zip

操作步骤:

1. 下载PEPK工具(来自Google镜像

2. 生成output.zip:

java -jar pepk.jar --keystore=<your-keystore-file.keystore> --alias=<your-alias> --output=output.zip --include-cert --encryptionkey=<your-encryption-key>

3. 将output.zip以主题ONE Store – output.zip,发送邮件至dev-support@now.gg

注意:PEPK工具由Google开发和提供。其用于安全加密应用签名密钥,未经授权不得修改或分发。



3.3 亚马逊应用商店 – PEM文件

亚马逊应用商店要求您包含一个PEM文件,内含应用公钥。这样可以实现应用内购买的安全通信与验证,防止欺诈并确保交易安全。

操作步骤:

  • 联系dev-support@now.gg获取您的应用PEM文件。
  • 将其放置于app/src/main/assets原生Android)或Assets/StreamingAssetsUnity)目录下。
×
文本已复制到剪贴板
copyLinkText
有疑问?请通过以下方式联系我们: dev-support@now.gg