阿里雲產品大規模減價

最高降幅59%

平均降幅23%

查看詳細資訊
本文由簡體中文內容自動轉碼而成。阿里雲不保證此自動轉碼的準確性、完整性及時效性。本文内容請以簡體中文版本為準。

使用 mPaaS 架構萬用群組件(非必需)

更新時間:2024-07-12 22:53

本文檔是在組件化接入方式轉為原生 AAR 接入方式的情況下,解決原有的 mPaaS 架構萬用群組件的適配問題。若未使用 mPaaS 架構萬用群組件,可以跳過閱讀本文檔。

為了相容組件化(路由)的方案,在 10.1.60 及以上基準支援使用 apt 的方式來使用以下四個組件:

說明
這四個組件的使用方式與在組件化接入中的使用方式相同,可點擊上方組件名查看詳情。

使用組件

  1. 在 library 和 Application 工程中引入相關的依賴。

    implementation 'com.mpaas.mobile:metainfo-annotations:1.3.4'
    kapt 'com.mpaas.mobile:metainfo-compiler:1.3.4' // kotlin 的 apt 接入方式
    annotationProcessor  'com.mpaas.mobile:metainfo-compiler:1.3.4' // java 的 apt 接入方式
  2. 定義上述四個組件時分別加上特定的 Annotation。Annotation 有如下四種:

    • @Application
    • @Service
    • @BroadcastReceiver
    • @Pipeline

    Annotation 中的參數與 metainfo.xml 定義的相同。例如,使用 @Application 時,只需要採用如下的方式:

    @Application(appId = "123123")
    public class MicroApplication extends ActivityApplication {
    }

不使用 library module

若不使用 library module,只需要在 APP Module 工程中的任意一個類加上 @MetaInfoApplication 即可。如果您搭配使用了 easyconfig 外掛程式(通常會搭配使用),那麼還需要開啟一個開關。樣本如下:

@MetaInfoApplication(compatibleWithPlugin=true)

使用 library module

若在 library module 工程中定義了上述四個組件,則需要執行以下操作:

  1. 在任意類中聲明一個 @MetaInfoLibrary,其中的參數傳入 library module 的 packageName。例如:

    @MetaInfoLibrary(applicationId=BuildConfig.APPLICATION_ID)
  2. app module 工程中的任意一個類加上 @MetaInfoApplication,依賴傳入 library module 中產生的 MetaInfoConfig.java。例如:

    @MetaInfoApplication(dependencies={com.mylibrary.MetaInfoConfig.class})

    如果您搭配使用了 easyconfig 外掛程式(通常會搭配使用),那麼還需要開啟一個開關。整合了開啟開關的樣本如下:

    @MetaInfoApplication(dependencies={com.mylibrary.MetaInfoConfig.class}, compatibleWithPlugin = true)

混淆相關

把相關的類加入混淆的白名單,特別是 com.alipay.mobile.core.impl.MetaInfoConfig。可以使用以下命令:

-keep public class com.alipay.mobile.core.impl.MetaInfoConfig
  • 本頁導讀 (0, M)
  • 使用組件
  • 不使用 library module
  • 使用 library module
  • 混淆相關
文檔反饋
phone Contact Us

Chat now with Alibaba Cloud Customer Service to assist you in finding the right products and services to meet your needs.

alicare alicarealicarealicare