【uniapp】安卓插件Module类型,AS无报错HB无报错排查-传参问题

安卓插件Module类型,AS无报错HB无报错排查-传参问题

环境

Hbuilder X :3.7.11.20230427
Android studio:Android Studio Flamingo | 2022.2.1 Patch 1
uniapp:nvue文件

事发

const wsMod = uni.requireNativePlugin('wsMod');

js中我是这样调用方法并传参的

wsMod.startMyWebsocketServer((this.port))

Android Studio中这样写的

@UniJSMethod(uiThread = true)
public void startMyWebsocketServer(int port) {
	Log.i("port",""+port);
}

将hb的项目打包离线,丢进AS中无任何报错,完美运行。
但是将AS的插件打成aar丢进hb项目后,打基座,无任何报错,插件使用无反应,也无任何提示。

解决方案

js中使用json数据传递,并给回调。官方文档:JSCallback结果回调

wsMod.startMyWebsocketServer({
	port:this.port
},(ret) => {
	console.log(ret)
})

AS中接收json数据,并以json格式返回数据

public void startMyWebsocketServer(JSONObject options,UniJSCallback callback) {
	Log.i("port",""+options.getIntValue("port"));
	port = options.getIntValue("port");//获取uni传递过来的参数
	
	JSONObject data = new JSONObject();
    data.put("data","start success");
    callback.invoke(data);//返回数据
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值