全部產品
Search
文件中心

Mobile Platform as a Service:接入 Android

更新時間:Apr 23, 2026

如果應用有國際化需求,請執行如下操作:

  • 多語言適配(英/法/俄)

  • 檢查接入的組件

    檢查接入了哪些組件,部分組件依賴的高德 SDK 或熱修複組件可能無法通過 Google Play 的審核,需要替換或移除相關 SDK 或組件,以及部分三方 SDK 可能會向中國內地發送資料,可根據需求決定是否移除相關組件。

  • 使用藍盾

    使用藍盾替換無線保鏢,並根據需求決定是否配置多張藍盾圖片

多語言適配

英語

自 mPaaS Android 10.2.3.68 基準起,mPaaS SDK 已整體適配多語言 - 英語環境,並發布了國際版 10.2.3.global 基準,可以將基準升級到 10.2.3.68 及以上版本或直接使用國際版 10.2.3.global,並使用 Android 官方 API Locale 手動設定語言為英語,或跟隨手機系統語言。

法語/俄語

如還需要支援法語/俄語環境,請搜尋群號 145930007362 加入DingTalk群或 提交工單 聯絡 mPaaS 技術支援人員擷取對應的語言套件,將相關資源放到工程的 res/values-fr/strings.xmlres/values-ru/strings.xml 中,並使用 Android 官方 API Locale 手動設定法語/俄語,或跟隨手機系統語言。

檢查接入的組件

高德定位 & 地圖

高德定位和地圖 SDK 部分版本無法通過 Google Play 審核,請檢查應用是否接入了以下組件:

  • 小程式

  • Mriver 小程式

  • 原生小程式(專有雲)

  • 智能投放

由於這些組件依賴了高德定位或地圖 SDK,您需要根據您的接入方式手動移除相關依賴:

移除高德 SDK 依賴

  • 原生 AAR 接入方式

在主 module 的 build.gradle 中配置如下內容:

configurations.all {
    exclude group:'com.mpaas.group.amap', module: 'amap-build'
    exclude group:'com.alipay.android.phone.thirdparty', module: 'amap3dmap-build'
    exclude group:'com.alipay.android.phone.mobilecommon', module: 'lbs-build'
}
  • 組件化(Portal & Bundle)接入方式

在主 module 的 build.gradle 中配置如下內容:

mpaascomponents {
    excludeDependencies = [
        "com.mpaas.group.amap:amap-build",
        "com.alipay.android.phone.thirdparty:amap3dmap-build",
        "com.alipay.android.phone.mobilecommon:lbs-build",
    ]
}

使用定位組件

如接入了定位組件,需要按照上文所述的方式移除 amap-buildamap3dmap-build,但不能移除 lbs-build,並引入高德官網提供的可以通過 Google Play 審核的版本。以下是 mPaaS 所使用的高德 SDK 版本,以便選取相同或相近的過審版本。

'com.alipay.android.phone.mobilecommon:AMap-2DMap:5.2.1_20190114@jar'
'com.alipay.android.phone.mobilecommon:AMapSearch:6.1.0_20180330@jar'
'com.alipay.thirdparty.amap:amap-location:4.7.2.20190927@jar'

熱修複

由於 Google Play 禁止應用動態下發可執行檔代碼檔案,接入熱修複可能會導致您的應用存在拒審風險,推薦您不接入熱修複組件。

三方 SDK 資料發送

mPaaS SDK 中引入的三方 SDK 可能會向設立於中國內地的伺服器發送請求,如不希望應用向中國內地發送資料,請您檢查並確保未引入以下組件:

  • UC 核心

  • 分享

  • 推送 - 小米

  • 定位

  • 優酷播放器

並參考前述章節 移除高德 SDK 依賴

使用藍盾

使用藍盾替換無線保鏢

由於 mPaaS SDK 中的無線保鏢已停止維護,無法保證適配 targetSdkVersion 34 及以上版本,請參考 mPaaS 10.2.3 支援無線保鏢&藍盾切換 進行替換。

藍盾配置多張圖片

mPaaS 組件向網關發送請求時會使用藍盾加簽,相關資訊儲存在藍盾圖片中,藍盾圖片與應用使用的簽名綁定,如果應用的簽名發生變化,需要重新產生藍盾圖片,否則請求會驗簽失敗。

如您的應用需要在不同情境下使用多個簽名,例如:

  • 啟用了 Google Play 的重簽名機制

  • 使用 v3 簽名的密鑰輪替功能

您可以按照以下步驟操作:

  1. 使用簽名 1 構建 apk,參考文檔 產生藍盾圖片,預設的圖片路徑為 assets/abs_1222.jpg,將該圖片重新命名,如 abs_1222_jks1.jpg

  2. 使用簽名 2 構建 apk,參考文檔 產生藍盾圖片,將該圖片重新命名,例 abs_1222_jks2.jpg

  3. (可選)如使用 Google Play 重簽名機制,可直接從商店下載重簽名後的 apk 來產生藍盾圖片。

  4. 此時您的工程 assets 目錄下有兩張藍盾圖片:

    • assets/abs_1222_jks1.jpg

    • assets/abs_1222_jks2.jpg

  5. 在應用啟動時調用以下 API,設定需要使用的藍盾圖片:

    MPBS.setBSAuthCodeDynamically(String bsAuthCode);
    • 支援該 API 的基準版本為 10.2.3.67 及以上版本。

    • 參數 bsAuthCode 為藍盾圖片名,不帶尾碼,例如圖片為 abs_1222_jks1.jpg 則參數應傳入 abs_1222_jks1,如不調用則會使用預設圖片名 abs_1222

    • 調用時機必須在 mPaaS 初始化前,推薦在 attachBaseContext 方法中調用,一旦 mPaaS 初始化完成,再次調用該 API 則無法生效。

  6. 您可以根據需要自行判斷使用哪一張圖片,範例程式碼如下。

    // v3 簽名從 Android 9 開始支援
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
        MPBS.setBSAuthCodeDynamically("abs_1222_jks2");
    } else {
        MPBS.setBSAuthCodeDynamically("abs_1222_jks1");
    }
    
    // Google Play 重簽名的應用會下發到 Android 13+ 裝置
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
        MPBS.setBSAuthCodeDynamically("abs_1222_jks2");
    } else {
        MPBS.setBSAuthCodeDynamically("abs_1222_jks1");
    }