
参考uniapp使用安卓原生插件(包含插件带第三方jar)_执拗的小豆芽的博客-CSDN博客_uniapp 原生插件
导入下载的项目UniPlugin-Hello-AS
下载Android 离线SDKhttps://nativesupport.dcloud.net.cn/AppDocs/download/android
package com.example.mylibrary;
import com.taobao.weex.annotation.JSMethod;
import com.taobao.weex.bridge.JSCallback;
import java.io.IOException;
import Decoder.BASE64Decoder;
import Decoder.BASE64Encoder;
import io.dcloud.feature.uniapp.common.UniModule;
public class ToastPlus extends UniModule {
JSCallback jsCallback;
String path = "";
@JSMethod(uiThread = true)
public void encoder(String data, JSCallback jsCallback) {
//调用第三方sdk处理字符串
this.jsCallback = jsCallback;
BASE64Encoder encoder = new BASE64Encoder();
String encode = encoder.encode(data.getBytes());
jsCallback.invoke(encode);
}
@JSMethod(uiThread = true)
public void decoder(String data, JSCallback jsCallback) throws IOException {
//调用第三方sdk处理字符串
this.jsCallback = jsCallback;
BASE64Decoder decoder = new BASE64Decoder();
byte[] bytes = decoder.decodeBuffer(data);
jsCallback.invoke(new String(bytes));
}
}
dependencies {
implementation files('libs\BASE64Decoder.jar')
compileOnly fileTree(dir: 'libs', include: ['*.jar'])
compileOnly fileTree(dir: '../app/libs', include: ['uniapp-v8-release.aar'])
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'com.google.android.material:material:1.4.0'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
在uni-app中使用刚刚生成的aar包
package.json配置
{
"name": "toastPlusTest",
"id": "toastPlusTest",
"version": "1.0.0",
"description": "原生Toast",
"_dp_type":"nativeplugin",
"_dp_nativeplugin":{
"android": {
"plugins": [
{
"type": "module",
"name":"toastPlusTest",
"class": "com.example.mylibrary.ToastPlus"
}
],
"integrateType": "aar"
}
}
}
选择刚刚配置的插件
新建test.vue 测试一下
打包自定义基座,测试
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)