參考:
https://ask.dcloud.net.cn/article/35416
https://ask.dcloud.net.cn/article/35763
(如何填寫uniapp的插件格式)
https://nativesupport.dcloud.net.cn/NativePlugin/course/package
概述:
最近需要研究Uniapp混合開發,首先需要解決插件開發的難題。這裏主要使用weex開發一個module插件,實現從uniapp彈出hello的安卓原生頁面。
步驟一:拷貝uniapp-release.aar到libs文件夾下面
步驟一:在build.gradle中添加依賴dependencies
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
compileOnly fileTree(dir: '../app/libs', include: ['uniapp-release.aar'])
implementation "com.android.support:recyclerview-v7:28.0.0"
implementation "com.android.support:support-v4:28.0.0"
implementation "com.android.support:appcompat-v7:28.0.0"
implementation 'com.alibaba:fastjson:1.1.46.android'
implementation 'com.facebook.fresco:fresco:0.12.0'
// testImplementation 'junit:junit:4.12'
// androidTestImplementation 'androidx.test.ext:junit:1.1.1'
// androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}
第三步:編寫一個module
package com.example.uniappmodule;
import android.content.Intent;
import com.taobao.weex.WXSDKEngine;
import com.taobao.weex.annotation.JSMethod;
public class moduleFirst extends WXSDKEngine.DestroyableModule{
@Override
public void destroy() {
}
@JSMethod(uiThread = true)
public void goNewActivity() {
if(mWXSDKInstance != null) {
Intent intent = new Intent(mWXSDKInstance.getContext(), MainActivity.class);
mWXSDKInstance.getContext().startActivity(intent);
}
}
}
第四步:編譯成aac包
位置在下圖:
************************************新建的activity一定要繼承Activity***********************