- 介绍
最近在用uniapp写个app,涉及一些硬件的调用,因为设备特殊,官方api没有支持,只能自己原生android开发调用。
官方文档各种翻阅,都没有一篇靠谱的介绍怎么自定义app入口的,有几个示例代码也说的不清不楚的。 - 开始
首先新建自己的MainActivity
import io.dcloud.WebAppActivity;
public class MainActivity extends WebAppActivity {
private String data="test";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public boolean isStreamAppMode() {
return false;
}
public String getResData(){
return data;
}
}
关键是继承的类,注意引入,然后是isStreamAppMode方法,如果没有这个方法,会无法正常加载页面
有了自定义的入口Activity,别忘了在AndroidManifest.xml里修改入口Activity
- 扩展
有了自定义的activity作为入口,前端js怎么和后台交互就很重要了,代码如下
var main = plus.android.runtimeMainActivity();//获取当前的Activity
var res=main.getResData();//直接调用自定义Activity中的getResData方法
console.log(res);
- 结语
APP的入口Activity可以自己写了,这样一些原生应用才能办到的需求就可以做了,就看大家自己发挥了。