跳到主要内容

Android 检查规则

E1:ComboSDK.json 错误

问题描述

ComboSDK.json 的配置不符合预期。

影响范围

  • 未配置 ComboSDK.json 文件,Combo SDK 初始化将失败,Combo 所有功能将不可用。
  • 未及时更新 ComboSDK.json 文件(内容错误),版本预期新增/更改的特性/功能将不生效或异常。

解决方案

ComboSDK.json 是 Combo SDK 的核心配置文件,集中管理所有第三方服务密钥、功能开关和合规链接,实现快速集成和动态调整,避免代码层频繁修改。

E2:包名错误

问题描述

游戏产物未使用世游提供的包名 (Bundle ID)。

影响范围

  • 渠道发行审核将被拒
  • 无法使用需要效验签名包名的第三方SDK,例如支付宝、微信支付、分享、广告买量SDK、手机号一键登录等

解决方案

方法1

  • 通过 Combo CLI build 命令自动设置 applicationId 来完成包名修改

方法2

  • 通过Unity Player Settings修改包名
    • 打开Unity项目 → File → Build Settings → 选择 Android 平台。
    • 点击 Player Settings → Player → Other Settings。
    • 在 Identification 部分,修改 Package Name(必须与世游后台的bundle_id完全一致)。

E3:签名密钥错误

问题描述

游戏产物未使用世游提供的签名密钥对产物进行签名。

影响范围

  • 渠道发行审核将被拒
  • 无法使用需要效验签名包名的第三方SDK,例如支付宝、微信支付、分享、广告买量SDK、手机号一键登录等

解决方案

方法1

通过 Combo CLI build 命令获取密钥文件、密码以及别名,并进行签名配置

方法2

通过Unity Player Settings 设置应用签名

  • 打开Unity项目 → File → Build Settings → 选择 Android 平台。
  • Publishing Settings 勾选 Custom Keystore,填写密钥库路径、密码、别名及密码,确保签名与console后台

E4:minSdkVersion 不正确

问题描述

AndroidManifest.xmlminSdkVersion 小于 Combo SDK Android 设定的23

影响范围

  • 用户进行渠道发布时,如果minSdkVersion不符合渠道的最低要求,应用会被下架

解决方案

方法1:通过Unity Player Settings修改minSdkVersion

  1. 打开Unity项目 → File → Build Settings → 选择 Android 平台。
  2. 点击 Player Settings → Player → Other Settings。
  3. 在 Minimum API Level 中选择 Android 6.0 'Marshmallow' (API Level 23) 或更高版本。

方法2:通过Gradle强制覆盖

在mainTemplate.gradle(位于Assets/Plugins/Android/)中添加:

android {
defaultConfig {
minSdkVersion 23 // 强制设为23
}
}

E5:targetSdkVersion 不正确

问题描述

AndroidManifest.xmltargetSdkVersion 小于 Combo SDK Android 的设定:33

影响范围

  • targetSdkVersion 如果低于应用市场规定的版本要求,会被拒审
  • 用户需要适配新系统特性时,如Android 13的通知权限,如果 targetSdkVersion 低于33,权限申请会被系统自动拒绝

解决方案

方法1:通过 Unity Player Settings 修改 targetSdkVersion

  1. 打开Unity项目 → File → Build Settings → 选择 Android 平台。
  2. 点击 Player Settings → Player → Other Settings。
  3. 在 Target API Level 中选择:
  • 通用渠道:Android 13 (API Level 33)

方法2:通过Gradle强制覆盖

在mainTemplate.gradle(位于Assets/Plugins/Android/)中添加:

android {
defaultConfig {
targetSdkVersion 33 // 强制设为33
}
}

E6:高危权限滥用

问题描述

AndroidManifest.xml 中声明的权限包含渠道审核禁止的高危权限

影响范围

游戏因声明高危权限会被渠道发行拒审

解决方案

AndroidManifest.xml 中使用 tools:remove 标签移除高危权限

  1. AndroidManifest.xml 中添加 tools 命名空间
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
>
  1. <uses-permission> 标签中添加 tools:remove 属性,指定要移除的权限,示例如下:
<uses-permission
android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
tools:node="remove" />
<uses-permission
android:name="android.permission.WRITE_SETTINGS"
tools:node="remove" />
<uses-permission
android:name="android.permission.SYSTEM_ALERT_WINDOW"
tools:node="remove" />
<!-- 其他高危权限同理 -->
提示

高危权限如下:

android.permission.WRITE_SETTINGS(修改系统设置)

android.permission.BIND_DEVICE_ADMIN(设备管理员权限)

android.permission.WRITE_SECURE_SETTINGS (篡改系统安全配置)

android.permission.DISABLE_KEYGUARD(绕过锁屏窃取设备控制权)

android.permission.RECEIVE_BOOT_COMPLETED (开机自启动)

android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS (后台运行)

E7:缺少微信软件可见性配置

问题描述

AndroidManifest.xml 中未声明微信的 queries 包名配置,导致微信相关功能(如登录、分享、支付)可能无法正常使用。

影响范围

Android 11 以上设备受影响(因系统强制限制软件包可见性),微信登录/分享/支付 功能异常(跳转失败或无法唤起微信)

解决方案

manifest 标签内添加 queries 声明,确保 AndroidManifest.xml 包含以下配置:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.your.game.package">
<!-- 声明微信包名(Android 11+ 必需) -->
queries
<package android:name="com.tencent.mm" /> <!-- 微信包名 -->
</queries>
<!-- 其他配置 -->
</manifest>

E8:缺少小红书软件可见性配置

问题描述

若集成 Domain agora, AndroidManifest.xml 中未声明小红书的 queries 包名配置,导致小红书相关功能(如登录、分享)可能无法正常使用。

影响范围

Android 11 以上设备受影响(因系统强制限制软件包可见性),小红书登录/分享/支付功能异常(跳转失败或无法唤起小红书)

解决方案

manifest 标签内添加 queries 声明,确保 AndroidManifest.xml 包含以下配置:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.your.game.package">
<!-- 声明小红书包名(Android 11 必需) -->
queries
<package android:name="com.xingin.xhs" /> <!-- 小红书包名 -->
</queries>
<!-- 其他配置 -->
</manifest>

E9:缺少微博软件可见性配置

问题描述

若集成 Domain weibo, AndroidManifest.xml 中未声明微博的 queries 包名配置,导致微博相关功能(如登录、分享)可能无法正常使用。

影响范围

Android 11 以上设备受影响(因系统强制限制软件包可见性),微博登录/分享/支付功能异常(跳转失败或无法唤起微博)

解决方案

manifest 标签内添加 queries 声明,确保 AndroidManifest.xml 包含以下配置:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.your.game.package">
<!-- 声明微博包名(Android 11+ 必需) -->
queries
<package android:name="com.sina.weibo" /> <!-- 微博包名 -->
<package android:name="com.sina.weibog3" />
</queries>
<!-- 其他配置 -->
</manifest>

E10:缺少QQ软件可见性配置

问题描述

若集成 Domain qq, AndroidManifest.xml 中未声明QQ的 queries 包名配置,导致QQ相关功能(如登录、分享)可能无法正常使用。

影响范围

Android 11 以上设备受影响(因系统强制限制软件包可见性),QQ登录/分享/支付功能异常(跳转失败或无法唤起QQ)

解决方案

在 manifest 标签内添加 queries 声明,确保 AndroidManifest.xml 包含以下配置:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.your.game.package">
<!-- 声明QQ包名(Android 11+ 必需) -->
queries
<package android:name="com.tencent.mobileqq" />
<package android:name="com.tencent.tim" />
<package android:name="com.tencent.minihd.qq" />
</queries>
<!-- 其他配置 -->
</manifest>

E11:缺少抖音软件可见性配置

问题描述

若集成 Domain douyin, AndroidManifest.xml 中未声明抖音的 queries 包名配置,导致抖音相关功能(如登录、分享)可能无法正常使用。

影响范围

Android 11 以上设备受影响(因系统强制限制软件包可见性),抖音登录/分享功能异常(跳转失败或无法唤起抖音)

解决方案

manifest 标签内添加 queries 声明,确保 AndroidManifest.xml 包含以下配置:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.your.game.package">
<!-- 声明抖音包名(Android 11+ 必需) -->
queries
<!--允许查询抖音和抖音极速版的软件包信息-->
<package android:name="com.ss.android.ugc.aweme" />
<package android:name="com.ss.android.ugc.aweme.lite" />
<package android:name="com.ss.android.ugc.live" />
</queries>
<!-- 其他配置 -->
</manifest>

E12:缺少支付宝软件可见性配置

问题描述

若集成 Domain seayoo_store, AndroidManifest.xml 中未声明支付宝的 queries 包名配置,导致支付宝相关功能(如登录、支付)可能无法正常使用。

影响范围

Android 11 以上设备受影响(因系统强制限制软件包可见性),支付宝登录/支付功能异常(跳转失败或无法唤起支付宝)

解决方案

manifest 标签内添加 queries 声明,确保 AndroidManifest.xml 包含以下配置:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.your.game.package">
<!-- 声明支付宝包名(Android 11+ 必需) -->
queries
<package android:name="com.eg.android.AlipayGphone" /> <!-- 支付宝包名 -->
</queries>
<!-- 其他配置 -->
</manifest>

E13:OPPO渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain oppo, AndroidManifest.xml 中未正确配置OPPO渠道参数 oppo_app_key 如下:

<!-- android:value 对应console后台 oppo_app_key -->
<meta-data
android:name="app_key"
android:value="xxxxxxx" />

影响范围

OPPO游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 oppo_app_key 的值是否与console后台配置相同

参考链接

https://open.oppomobile.com/new/developmentDoc/info?id=12176

E14:VIVO 渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain vivo, AndroidManifest.xml 中未正确配置VIVO渠道参数 vivo_app_id ,正确示例如下:

<!-- android:value 对应console后台 vivo_app_id -->
<meta-data
android:name="vivoUnionAppId"
android:value="105679098" />

影响范围

VIVO游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 vivo_app_id 的值是否与console后台配置相同

参考链接

https://dev.vivo.com.cn/documentCenter/doc/450#s-74knd99g

E15:小米渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain xiaomi, AndroidManifest.xml 中未正确配置VIVO渠道参数 xiaomi_app_idxiaomi_app_key ,正确示例如下:

<!-- android:value 对应console后台 mi_$vivo_app_id -->
<meta-data
android:name="miGameAppId"
android:value="mi_2882303761520268023" />

<!-- android:value 对应console后台 mi_$xiaomi_app_key -->
<meta-data
android:name="miGameAppKey"
android:value="mi_5392026825023" />

影响范围

小米游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 xiaomi_app_idxiaomi_app_key 的值是否与console后台配置相同

参考链接

https://dev.mi.com/xiaomihyperos/documentation/detail?pId=1421

E16:荣耀渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain honor, AndroidManifest.xml 中未正确配置VIVO渠道参数 honor_app_idhonor_developer_id ,正确示例如下:

<!-- android:value 对应console后台 honor_app_id -->
<meta-data
android:name="com.hihonor.iap.sdk.appid"
android:value="${honor_app_id}" />

<!-- android:value 对应console后台 honor_developer_id -->
<meta-data
android:name="com.hihonor.iap.sdk.cpid"
android:value="${honor_developer_id}" />

影响范围

荣耀游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 honor_app_idhonor_developer_id 的值是否与console后台配置相同

参考链接

https://developer.honor.com/cn/docs/game_center/guides/jieruzhinan/kehuduan#%E5%88%9D%E5%A7%8B%E5%8C%96%E6%AD%A5%E9%AA%A4

E17:应用宝渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain yingyongbao, AndroidManifest.xml 中未正确配置应用宝渠道参数 yingyongbao_qq_app_idyingyongbao_wx_app_id ,正确示例如下:

<!-- QQ登录配置 -->
<activity
android:name="com.tencent.tauth.AuthActivity"
android:exported="true"
android:launchMode="singleTask"
android:noHistory="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- 必须替换为应用自身的QQAppId tencent1112326530 -->
<data android:scheme="tencent${yingyongbao_qq_app_id}" />
</intent-filter>
</activity>

<!-- 微信登录配置 -->
<activity
android:name="com.tencent.ysdk.module.user.impl.wx.YSDKWXEntryActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:excludeFromRecents="true"
android:exported="true"
android:label="WXEntryActivity"
android:launchMode="singleTop"
android:taskAffinity="${applicationId}.diff"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<!-- 必须替换为应用自身的微信AppId wxca172f0d161f72cd -->
<data android:scheme="${yingyongbao_wx_app_id}" />
</intent-filter>
</activity>

影响范围

  • QQ登录功能不可用
  • 微信登录功能不可用
  • 应用宝渠道社交分享功能异常

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 yingyongbao_qq_app_idyingyongbao_wx_app_id 的值是否与console后台配置相同

参考链接

https://wikinew.open.qq.com/index.html#/iwiki/4008531348

E18:UC渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain uc, AndroidManifest.xml 中未正确配置UC渠道参数 uc_game_id,正确示例如下:

<activity
android:name="cn.uc.gamesdk.activity.PullupActivity"
android:excludeFromRecents="true"
android:exported="true"
android:label="PullupActivity"
android:launchMode="singleTop"
android:taskAffinity="${applicationId}.diff"
android:theme="@android:style/Theme.Translucent"
tools:node="replace">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- 必须替换为应用自身的UC GameID -->
<data android:scheme="ng${uc_game_id}" />
</intent-filter>
</activity>

影响范围

UC游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 uc_game_id 的值是否与console后台配置相同

参考链接 https://game.open.9game.cn/document/doc/detail/15

E19:雷电渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain leidian, AndroidManifest.xml 中未正确配置雷电渠道参数 leidian_game_idleidian_channel_idleidian_sun_channel,正确示例如下:

<!-- 雷电游戏ID -->
<meta-data
android:name="LD_GAME_ID"
android:value="${leidian_game_id}" />
<!-- 雷电主渠道ID -->
<meta-data
android:name="CHANNEL_ID"
android:value="${leidian_channel_id}" />
<!-- 雷电子渠道ID(可选,部分游戏需要) -->
<meta-data
android:name="SUN_CHANNEL_ID"
android:value="${leidian_sun_channel}" />

影响范围

雷电游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 leidian_game_idleidian_channel_idleidian_sun_channel 的值是否与console后台配置相同

参考链接

https://docs.ldmnq.com/docs/3iyTEo#b52baa42d227ce605d779ef580973c7a

E20:猫窝渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain maowo, AndroidManifest.xml 中未正确配置雷电渠道参数 maowo_app_idmaowo_client_idmaowo_client_key,正确示例如下:

<!-- 猫窝APPID -->
<meta-data
android:name="HuoUnion_APPID"
android:value="${maowo_app_id}" />
<!-- 猫窝CLIENTID -->
<meta-data
android:name="HuoUnion_CLIENTID"
android:value="${maowo_client_id}" />
<!-- 猫窝CLIENTKEY -->
<meta-data
android:name="HuoUnion_CLIENTKEY"
android:value="${maowo_client_key}" />

影响范围

猫窝游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 maowo_app_idmaowo_client_idmaowo_client_key 的值是否与console后台配置相同

参考链接

https://doc.huosdk.com/web/#/203/9208

E21:联想渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain lenovo, AndroidManifest.xml 中未正确配置雷电渠道参数 lenovo_open_appid,正确示例如下:

<!-- 联想Open AppID -->
<meta-data
android:name="lenovo.open.appid"
android:value="${lenovo_open_appid}" />
<!-- 联想渠道标识 -->
<meta-data
android:name="lenovo:channel"
android:value="${lenovo_open_appid}" />

影响范围

联想游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 lenovo_open_appid 的值是否与console后台配置相同

参考链接

https://open.lenovomm.com/developer/doc?id=1559820567843188738#w-e-element-1702

E22:绝峰渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain juefeng, AndroidManifest.xml 中未正确配置雷电渠道参数 juefeng_app_idjuefeng_app_key ,正确示例如下:

<!-- 绝峰APPID -->
<meta-data
android:name="JF_APPID"
android:value="${juefeng_app_id}" />
<!-- 绝峰APPKEY -->
<meta-data
android:name="JF_APPKEY"
android:value="${juefeng_app_key}" />

影响范围

绝峰游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 juefeng_app_idjuefeng_app_key 的值是否与console后台配置相同

参考链接

https://game.juefeng.com/view/jfGame_pc/open_platform.html

E23:魅拓渠道参数 AndroidManifest 配置不正确

问题描述

若集成 Domain meituo, AndroidManifest.xml 中未正确配置雷电渠道参数 meituo_appidmeituo_appkey ,正确示例如下:

<!-- 魅拓APPID -->
<meta-data
android:name="beemix_appid"
android:value="${meituo_appid}" />
<!-- 魅拓APPKEY -->
<meta-data
android:name="beemix_appkey"
android:value="${meituo_appkey}" />

影响范围

魅拓游戏SDK初始化失败(登录、支付等功能异常)

解决方案

使用 Combo CLI setup 命令生成 ComboSDK.json 文件,检查 ComboSDK.json 文件中 meituo_appidmeituo_appkey