记录下自己遇到的坑,需求是,自己公司的项目要做成一个程序包(混淆后的aar)提供给客户,集成到他们的项目中,他们的项目是用H5开发的。
js代码写在他们展示的html的入口里
<li id="other" class="mui-table-view-cell">
<a class="">
第三方界面
</a>
</li>
/**
* 第三方界面
*/
document.getElementById("other").addEventListener('tap', function() {
try {
//获取宿主上下文
var main = plus.android.runtimeMainActivity();
//通过反射获取Android的Intent对象
var Intent = plus.android.importClass('android.content.Intent');
//通过宿主上下文创建 intent
var intent = new Intent(main.getIntent());
intent.putExtra("IP", "192.168.8.159");
intent.putExtra("PORT", "9095");
intent.setClassName(main, 'com.xbj.activity.MainActivity');
//开启新的界面
main.startActivity(intent);
} catch (e) {
alert(e);
}
ps:如果一直跳转不过去考虑是安卓新版本权限问题,添加兼容权限
<application android:requestLegacyExternalStorage="true" android:usesCleartextTraffic="true"