使用 mPaaS 插件
mPaaS 插件通過圖形化界面,幫助您快速地接入 mPaaS 并便捷地使用 mPaaS 的功能。
mPaaS 插件的功能主要包括 原生 AAR 方式、組件化接入、基礎(chǔ)工具、幫助 和 構(gòu)建。
原生 AAR 接入、組件化接入 分別提供了接入面板,在接入面板中的接入向?qū)f(xié)助您將 mPaaS 以不同的接入方式接入到您的工程中。在完成接入后,您還可以在接入面板進行 基線升級 和 組件管理。
在 基礎(chǔ)工具 中,mPaaS 提供了 熱修復、生成加密圖片(專有云配置文件)、生成 UC Key 簽名信息 和 生成藍盾圖片 的功能,方便快速完成使用 mPaaS 功能前的信息準備。
在 幫助 中,mPaaS 提供了 日志診斷工具、常見問題、和 查看文檔 的功能,方便在使用 mPaaS 過程中遇到問題時快速獲得支持。
構(gòu)建,完成接入 mPaaS 后構(gòu)建工程。
添加配置文件
接入過程的主要工作是將配置文件添加到工程中,mPaaS 插件支持 手動導入 的方式添加配置文件。手動導入需要在控制臺下載配置文件后,再通過 mPaaS 插件手動添加到工程里。
手動導入
前提條件
已創(chuàng)建了螞蟻或阿里云賬號并開通了 mPaaS 服務。
已在 mPaaS 控制臺創(chuàng)建應用。更多關(guān)于創(chuàng)建應用的信息,請參見 在控制臺創(chuàng)建 mPaaS 應用 。
已有一個Android 開發(fā)工程。
操作步驟
在 Android Studio 中打開已有工程,單擊 mPaaS > 原生 AAR 接入 或 組件化接入。在彈出的接入面板中,單擊 導入 App 配置 下的 開始導入。
選擇 我已經(jīng)從控制臺上下載配置文件(Ant-mPaaS-xxxx.config),準備導入到工程,單擊 Next。
選擇配置文件后,單擊 Finish,即完成了配置文件的導入。導入成功后,將會收到導入配置文件成功的提示信息。
AAR 接入
操作步驟
在 Android Studio 中打開已有工程,單擊 mPaaS > 原生 AAR 接入。
導入 App 配置。在接入面板中,單擊 開始導入,使用 手動導入 的方式完成配置文件的添加。
后續(xù)步驟
組件化接入
操作步驟
在 Android Studio 中打開已有工程,單擊 mPaaS > 組件化接入。
導入 App 配置。在接入面板中,單擊 開始導入,使用 手動導入 的方式完成配置文件的添加。
轉(zhuǎn)換工程。如果您的工程是原生 Android 工程,還需要對工程進行轉(zhuǎn)換。在接入面板中,單擊 安裝 mPaaS Portal。在安裝 mPaaS Portal 窗口中,分別選擇原始工程的位置和配置文件,單擊 OK。
后續(xù)步驟
接入/升級基線
升級到常規(guī)基線
操作步驟
單擊 mPaaS > 原生 AAR 接入 或 組件化接入,在彈出的接入面板中,單擊接入/升級基線下的 開始配置。
選擇需要升級的基線版本,單擊 OK。 升級成功后,您將看到 基線升級成功 的提示。
后續(xù)步驟
單擊接入面板中的升級基線,在選擇基線窗口中將會看到您的基線版本號。
升級到自定義基線
通常情況下,我們提供的基線面向所有客戶,如 10.1.32、10.1.60、10.1.68。當您需要定制 mPaaS 的功能時,您可以向和您對接的 mPaaS 的工作人員提出需求,我們會按照您的需求為您定制基線。在交付時,mPaaS 的工作人員會向您提供定制基線的 ID,您只需要在 mPaaS 插件中填寫該 ID,即可獲得此定制基線。
前提條件
確認您的 Android Studio mPaaS 版本為 V2.19111217 或以上。您可以參考 更新 mPaaS 插件 以了解當前的 mPaaS 插件版本和如何升級 mPaaS 插件。
操作步驟
刪除您 Android Studio 工程里已經(jīng)存在的 mpaas_package.json 文件。
單擊 mPaaS > 原生 AAR 接入 或 組件化接入,在彈出的接入面板中,單擊接入/升級基線下的 開始配置。
在基線升級對話框中勾選 自定義基線 并輸入您得到的定制基線 ID。
單擊 OK,即完成自定義基線的引入。
配置/更新組件
mPaaS組件管理(AAR)
前提條件
您已完成基線升級。
操作步驟
單擊 mPaaS > 原生 AAR 接入,在彈出的接入面板中,單擊配置/更新組件下的 開始配置。
在彈出的管理窗口中,單擊 mPaaS 組件管理,選擇要進行管理的 module,勾選要添加的組件,單擊 OK。如果您的工程中有多個 module,您可以在選擇不同的 module 后,分別為其添加組件。
組件添加完成后,單擊 OK。
組件管理
操作步驟
單擊 mPaaS > 組件化接入,在彈出的接入面板中,單擊配置/更新組件下的 開始配置。
在彈出的組件管理窗口中,單擊按鈕安裝需要的組件。
基礎(chǔ)工具
基礎(chǔ)工具中包含 熱修復、生成加密圖片(專有云配置文件)、生成控制臺用簽名 APK、生成 UC Key 簽名信息、生成藍盾圖片 等功能。
熱修復
使用熱修復能力前,首先要讓 App 具備熱修復的能力。更多詳情,請參見 熱修復管理:接入 Android——熱修復。
生成熱修復補丁
使用 mPaaS 插件的 生成熱修復補丁,通過以下步驟生成熱修復包:
針對不同的 mPaaS 集成方式,選擇對應的包,通過 mPaaS 插件的 生成熱修復補丁 生成熱修復包。
如果是 原生 AAR 工程 ,需要準備有 bug 的線上
APK
包和修復后的APK
包。mPaaS 插件會根據(jù)代碼的不同,生成熱修復包。提示:
在 New bundle 欄,填寫修復后的
APK
包的本地地址。在 Old bundle 欄, 填寫有 bug 的
APK
包的本地地址。在 白名單 一欄輸入白名單。
如果是 組件化(Portal&Bundle)工程,需要準備 正在使用的有 bug 的 bundle 包 和 修復后的 bundle 包。
提示:
bundle 的輸出路徑為 bundle 的主 module 目錄下的
build/intermediates/bundle/xxxx-raw.jar
。如果是 release 包則沒有-raw
。New bundle:選擇修復 bug 的包路徑。
Old bundle:選擇有 bug 的包路徑。
白名單:選擇用于指定修復的類的
.txt
格式的配置文件。該配置文件的編寫規(guī)則見下文 白名單配置文件編寫規(guī)則。 使用原生 AAR 工程時強烈推薦使用該功能。Patch file dir:輸出的 patch 包路徑。
是否使用 dexPatch:選擇是否使用 dexPatch 熱修復方式。mPaaS 插件的 生成熱修復補丁 功能支持 Andfix 和 dexPatch 兩種熱修復方式。不論使用哪種熱修復方案,在發(fā)版本前都需要進行驗證,查看熱修復包是否能生效。
不勾選時,會生成 Andfix 熱修復包。Andfix 熱修復包能夠立即生效,不需要重啟應用;但因機型問題,修復的場景限制較多。
勾選時,會生成 dexPatch 熱修復包。dexPatch 熱修復包不能立即生效,需要殺掉進程后才能生效;但其能夠修復的場景比 Andfix 熱修復包多,且機型適配問題少。
輸入簽名信息生成熱修復包。
重要生成熱修復包所需要的簽名文件必須和運行的
APK
的簽名文件保持一致,并且簽名文件和生成圖片選擇的APK
的簽名文件也要保持一致。生成的圖片需要放在 Portal 工程的res/drawable
文件夾下面,命名為yw_1222.jpg
。
白名單配置文件編寫規(guī)則
打熱修復包時用于指定修復的類的配置文件為 .txt
格式,該配置文件應包含并按順序包含以下信息:
需要 Patch 的類。以
L
開頭,后跟以混淆后真實類名。如果多個類,每行只可寫一個。示例:Lxxx.xxx.clazzX
設置 Patch 類型為 dexpatch。示例:
PatchType: dexpatch
設置是否是靜態(tài) Bundle。默認為
true
。示例:HostDex: true
適配 Android 11。示例:
android-phone-mobilesdk-quinox-Configs: ForceEnableQSecondDex-true
。android-phone-mobilesdk-quinox
為 Bundle 名稱。如果采用的是組件化 Portal&Bundle 接入方式,請按照 Bundle 名稱更新; AAR 接入方式下沒有 Bundle 工程,值就是android-phone-mobilesdk-quinox
。
合并補丁
一個 Android App 版本最多只能有一個熱修復包在運行。如果客戶端某版本有兩個 bug,那需要先在本地使用 合并補丁 功能將修正兩個 bug 的熱修復包合成一個熱修復包。例如,針對某一個版本的 App 已經(jīng)發(fā)過熱修復包 A, 之后在這個版本上又發(fā)現(xiàn)了另外一個問題,這時可在本地生成另外一個熱修復包 B,然后合并 A 與 B 兩個熱修復包,最后下發(fā)到客戶端。
本節(jié)僅針對使用組件化(Portal&Bundle)工程的用戶,使用原生 AAR 工程的用戶可以在原先修復的基礎(chǔ)上,相對于最原始未修復的包再打出一個補丁發(fā)布。
操作步驟
填寫熱修復包文件夾地址。
Merge dir:選擇合并的 hotpatch 包目錄。文件夾下面是所有的需要合并的包,包名需要以
.jar
或者.apk
結(jié)尾。Patch file dir:選擇合并之后輸出的熱修復包目錄。
配置簽名信息。
合并完成后,將會收到合并成功的提醒。
生成加密圖片(專有云配置文件)
為了安全,mPaaS 某些組件訪問網(wǎng)絡時需要對內(nèi)容進行加密。
具有特殊名稱
yw_1222.jpg
的圖片為加解密提供密鑰信息。mPaaS 組件自動使用該圖片進行加解密,無需額外操作。由于公有云環(huán)境已棄用該加密圖片,故公有云用戶可忽略本節(jié)內(nèi)容。
生成并使用加密圖片 yw_1222.jpg
的詳情如下。
準備
加密圖片與 APK 的簽名文件有綁定關(guān)系。因此,需要準備 Portal 工程簽名之后的 APK。具體的簽名步驟,請參考 Android 官方網(wǎng)站:對應用進行簽名。
此處的 APK 應和 發(fā)布版本 的 APK 使用相同的簽名文件。
生成的加密圖片只能用在該 APK 工程中。
生成
您可以通過 mPaaS 插件 生成加密圖片。
在 Android Studio 中,單擊 mPaaS > 基礎(chǔ)工具 > 生成加密圖片(專有云配置文件)。
在 Release Apk, 選擇 Portal 工程簽名之后的 APK 文件, RSA 會自動填充。
在 mPaaS Config File, 選擇 Portal 工程的
.config
文件, workSpaceId、appId 和 packageName 會自動填充。如果沒有,可以根據(jù)工程的.config
文件中的配置填寫到對應輸入框中。填寫 appsecret 。
注意:作為服務端管理人員,您可以從控制臺中查詢 appid 所對應的 appsecret。
在 jpg Version 欄,填寫對應的無線保鏢圖片版本號。
說明查看 Portal 工程主 module 下
build.gradle
文件中securityguard
版本,低于 5.4 的填 4(例如基線中給出的securityguard-build:5.1.38.180402194514
),其余填 5 。在 outPath, 選擇無線保鏢圖片
yw_1222.jpg
的輸出路徑,即加密圖片生成的本地路徑。單擊 OK 生成加密圖片。
使用
加密圖片的使用步驟如下:
將加密圖片
yw_1222.jpg
存放到 Portal 工程的res/drawable
文件夾中。如使用 ProGuard,需避免加密圖片被混淆。
檢查
build.gradle
中是否配置了如下內(nèi)容:minifyEnabled true shrinkResources true
若有如上配置,為了避免加密圖片被混淆,需要在
res/raw
下創(chuàng)建keep.xml
文件。文件內(nèi)容如下:<?xml version="1.0" encoding="utf-8"?> <resources xmlns:tools="http://schemas.android.com/tools" tools:keep="@drawable/yw_1222*" /><!--tools:discard="@layout/unused2"-->
生成藍盾圖片
如果您從 mPaaS 控制臺下載的 .config
文件中的 absBase64Code
值為空,則需進行下面 生成藍盾圖片 的操作(適用于私有云場景)。
如果您在公有云環(huán)境下,從 mPaaS 控制臺下載的 .config
文件中的 absBase64Code
值為空,請確認下載前已上傳簽名正確的 APK 并重新下載。詳情請參考 填寫配置信息,并上傳簽名 APK。
單擊 mPaaS > 基礎(chǔ)工具 > 生成藍盾加密圖片,輸入相關(guān)信息,即可生成藍盾圖片。
重點輸入項說明:
Release Apk : 接入 mPaaS 的工程打包出的 release apk 包,需要進行簽名。
MD5: release apk 包上傳之后會自動獲取填入,即 apk 包的
public md5 key
。mPaaS config File: mPaaS 控制臺點擊下載配置即可下
.config
文件并傳入。appSecret:mPaaS 控制臺查看。
其他項 appId、packageName、outPath 傳入以上信息后會自動識別填入。
最后將生成的圖片添加到工程的 assets
目錄下。
生成控制臺用簽名 APK
在 mPaaS 控制臺中獲取配置文件時,需要上傳簽名后的 APK 文件。但在未創(chuàng)建工程或未編譯出簽名后的 APK 時,獲取配置文件的過程就會受阻而無法進行。為解決此問題,mPaaS 已將此過程簡化為 Android Studio mPaaS 插件的 生成控制臺用簽名 APK 功能。該功能可在只需輸入簽名相關(guān)的參數(shù)的前提下,生成簽名后的 APK。
生成
單擊 mPaaS > 基礎(chǔ)工具 > 生成控制臺用簽名 APK,進入 構(gòu)造簽名 APK 頁面。
在 構(gòu)造簽名 APK 頁面,填寫相關(guān)配置信息。
單擊 OK 即可生成簽名后的 APK 文件。
單擊 Reveal in Finder 即可找到上述步驟生成的 APK 文件,文件名為
mpaas-signed.apk
。至此,簽名后的 APK 生成成功。打開該 APK 文件查看,會發(fā)現(xiàn)該文件很小,且已經(jīng)被簽名。
生成 UC Key 簽名信息
在 Android 應用中接入 UC SDK 能夠有效解決各種廠商瀏覽器的兼容性問題。為添加 UC SDK,您需要先申請 UC SDK 的授權(quán)。該功能能夠幫助您快速獲得授權(quán),下文介紹了申請 UC SDK 授權(quán)的全流程操作。
該功能自 V2.20062211 版本起加入。更多信息,請參見 V2.20062211 發(fā)布說明。
操作步驟
在工程中,添加 UC 內(nèi)核(UCCORE) 依賴。
提供應用的 Android native package 名稱(package name)。
單擊 mPaaS > 基礎(chǔ)工具 > 生成 UC Key 簽名信息,進入 查詢簽名信息 頁面。
在 查詢簽名信息 頁面,填寫相關(guān)配置信息。單擊 Next。
復制獲得的 SHA1 信息。
填寫 UC key 申請表 并提交。
說明由于產(chǎn)品策略變更,UC 不再全面開放申請,從2022.12.01起不支持公開申請 UC Key。需要填寫表單相關(guān)信息,工作人員會進行審核并反饋申請結(jié)果。
將獲取的 Key 填入 Portal 項目的
AndroidManifest.xml
文件中:<meta-data android:name="UCSDKAppKey" android:value="您申請獲得的 key"/>
。說明UC SDK 的授權(quán)信息與 APK 的 包名 以及 簽名 綁定。因此,如果 UCWebView 沒有生效,請檢查簽名和包名與申請時使用的信息是否一致。
幫助
日志診斷工具
單擊 mPaaS > 幫助 > 日志診斷工具。
將您需要分析的日志信息 copy 到輸入框,單擊 Next。
等待分析結(jié)果。
查看分析結(jié)果。 分析結(jié)果中包含定位原因和解決方案 的信息,您可以根據(jù)具體的定位信息和解決方案來修改您的代碼。
修改完成后單擊 Finish 關(guān)閉彈窗。
常見問題
單擊 mPaaS > 幫助 > 常見問題,即可跳轉(zhuǎn)至 接入 Android 常見問題,查看接入過程中的常見問題。
查看文檔
單擊 mPaaS > 幫助 > 查看文檔,即可跳轉(zhuǎn)至 mPaaS 文檔中心,查看各組件的使用文檔。
構(gòu)建
在 Android Studio 中選擇 mPaaS > 構(gòu)建。即可構(gòu)造工程。