日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 插件框架机制之Small

發布時間:2025/4/5 Android 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 插件框架机制之Small 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android 插件框架機制系列文章:
Android 插件框架機制之預熱篇
Android 插件框架機制之DroidPlugin


引言

上一篇文章提到過Small,這次就簡單說一下Small,這只是一篇入門的文章,如果想深入了解,可以下載官方demo,里面會有詳細的示例。

官方demo

我是用AS打開的這個demo,如圖所示:

工程結構如圖所示:

第一次運行demo會提示如下問題:

這是我們打開AS自帶的終端:

輸入gradle命令,進行編譯,這些需要注意的是的,如果使用的是windows使用./gradlew,如果使用的mac或linux,使用gradle即可:

gradle buildLib -q復制代碼gradle buildBundle -q復制代碼

最后輸入這個命令查看插件情況:

gradle small復制代碼

如果此時你的終端有如下顯示,則表明正確:

注意,如果你們有使用AS自帶的終端,請切到項目目錄下輸入這些命令
此時再運行,就會看到如下界面了:

入門教學

新建工程

在工程下的build.gradle(注意是project的不是module的),進行修改如下

buildscript {repositories {jcenter()}dependencies {classpath 'com.android.tools.build:gradle:2.1.2'classpath 'net.wequick.tools.build:gradle-small:1.1.0-alpha2'//添加依賴} }allprojects {repositories {jcenter()} }task clean(type: Delete) {delete rootProject.buildDir } //引用 gradle-small 插件 apply plugin: 'net.wequick.small' small {buildToAssets = falseaarVersion = '1.1.0-alpha2'android {compileSdkVersion = 23buildToolsVersion = "23.0.3"supportVersion = "23.4.0"} }復制代碼

可以像上面講解demo中提到過的一樣,在終端輸入:

gradle small復制代碼

看看是否編譯正常。

配置宿主

我們新建的這個工程中有一個app module,假設這就是我們的宿主應用,即主應用,我們在該module中新建Application:

public class DeepApp extends Application{public DeepApp(){Small.preSetUp(this);//初始化Small}@Overridepublic void onCreate() {super.onCreate();} }復制代碼

再在 AndroidManifest.xml 中指定這個 Application。

<applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:supportsRtl="true"android:name=".DeepApp"android:theme="@style/AppTheme"><activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application>復制代碼

模塊插件

我們新建立一個module,選擇Phone & Tablet Module,設置 Application/Library name 為 App.main,此時 Module name 自動為 app.main,如圖所示:

了確認我們確實啟動了插件,我們修改插件的布局文件 app.main > res > layout > activity_main.xml,將 TextView 的內容改為 Hello deep!

編譯插件

像我們上面講解demo中提到的一樣,在終端進行編譯:

gradle buildBundle -q復制代碼

關聯插件

現在我們已經生成了插件并內置到宿主包中,要啟動插件,我們需要配置一個路由來指向它。

右鍵 app 模塊,New > Folder > Assets Folder 新建 assets 目錄:

在bundle.json文件中添加如下代碼:

{"version": "1.0.0","bundles": [{"uri": "main","pkg": "deep.appmain"},] }復制代碼
  • version,是 bundle.json 文件格式版本,目前始終為 1.0.0
  • bundles,插件數組
  • uri,插件唯一ID
  • pkg,插件包名

    運行

    然后回到app module中,找到MainActivity,重寫onStart():

    Small.setUp(this, new Small.OnCompleteListener() {@Overridepublic void onComplete() {Small.openUri("main", MainActivity.this);}});復制代碼

    main就是剛才bundle.json中uri的參數。說明我們要啟動main這個module的MainActivity。
    由于我之前做過別的設置,所以發現點擊運行報錯了,這時我們需要清除之前的編譯:

    gradle cleanLib -q復制代碼

    然后重新編譯,即可運行。

總結

所有關于Small的講解,在官方文檔上說的非常詳細,我之前也沒有用過,但是前幾天總結插件框架的時候發現的這個,就去看了看,不算很難上手,而且Android IOS都會支持。需要的朋友,建議利用官方文檔入門,然后在分析一下他的demo即可,涵蓋的功能很全面。
這里再放一下地址:
官方文檔
官方demo

總結

以上是生活随笔為你收集整理的Android 插件框架机制之Small的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。