接入移動開發平台 mPaaS 有 原生 AAR 方式 和 組件化方式(Portal&Bundle)兩種接入方式。本文將向您介紹這兩種接入方式,並給出關於選擇接入方式的建議。
原生 AAR 方式
原生 AAR 接入方式 是指採用原生 Android AAR 打包方案,更貼近 Android 開發人員的技術棧。開發人員無需瞭解 mPaaS 相關的打包知識,通過 mPaaS Android Studio 外掛程式,或者直接通過 Maven 的 pom 和 bom,即可將 mPaaS 整合到開發人員的專案中來。該方式降低了開發人員的接入成本,能夠讓開發人員更輕鬆地使用 mPaaS,適合對 組件化(Portal&Bundle)接入方式 沒有特別需求,想快速使用 mPaaS 能力的客戶。
原生 AAR 接入方式從 10.1.68 起開始支援。
組件化方式(Portal&Bundle)
組件化方式 是指 mPaaS 基於 OSGi(Open Service Gateway Initiative,開放服務網關倡議)技術將一個 App 劃分成業務獨立的一個或多個 Bundle 工程以及一個 Portal 工程的架構。mPaaS 會對每個 Bundle 工程的生命週期和依賴加以管理,使用 Portal 工程把所有的 Bundle 工程包合并成一個可啟動並執行 .apk
包。該方式適用於大型多人並行開發專案。使用 組件化方式,需要引入 mPaaS gradle 打包工具,對 gradle 版本以及com.android.tools.build:gradle
版本有一定的要求。
如何選擇接入方式
如果使用 mPaaS 需要像使用其他 SDK 一樣簡單接入並使用,推薦使用 原生 AAR 方式。如果使用 mPaaS 來重構您的專案需要引入大規模並行研發的理念,推薦使用 組件化方式 。
接入方式對比
原生 AAR 接入 | 組件化接入 | |
來源 | Google 官方接入方式。 | 源自支付寶。 |
打包速度 | 兩者之中打包最慢,和原生接入一模一樣。 | 打包速度快,打包時間分散。 |
專案組成方式 | App module 和 library module。 | Portal(一個 App 的殼)和 Bundle(各種業務組件)。 |
依賴 Gradle 版本 | 可以升級到官方最新版本。 | 4.4/6.3。開發人員不可擅自升級。 |
依賴 AGP1 工具鏈 | 可以升級到官方最新版本。 | AGP 3.0.1/3.5.x(開發人員不可擅自升級)。 |
Android Support Library | 可使用。 | 必須使用 mPaaS 提供的版本(23),開發人員不可擅自升級。 |
Android X | 完整支援2 | 不支援 |
databinding | 完整支援 | v1 |
kotlin | 完整支援 | 盡量不要使用 |
Android Gradle Plugin,Android 打包用的 gradle 外掛程式。
藉助
android.enableJetifier=true
和android.useAndroidX=true
。