Appearance
Android Activity 方式集成 Runtime SDK
runtime sdk
集成可以使开发者自有APK快速实现runtime
运行环境的能力
第1步:引⼊SDK
点击查看源码
js
# ⼯程根gradle增加sdk的maven仓库
allprojects {
repositories {
maven { url 'https://nexus.extscreen.com/repository/maven-public/' }
}
}
# app gradle增加引⽤
dependencies {
implementation 'com.extscreen.runtime:official:1.0.31'
}
第2步:初始化
在Application
调⽤初始化⽅法
点击查看源码
javascript
import EsKitInitHelper;
public class App extends Application {
@Override
public void onCreate() {
EsKitInitHelper.init(this, InitConfig.getDefault()
.setDebug(BuildConfig.DEBUG) // 是否打印log
.addFlags(InitConfig.FLAG_DYNAMIC_SO) // 为了减⼩sdk体积,开启动态SO,如需内置so,请联系开发者
);
}
}
第3步:测试
使⽤adb
命令测试SDK
是否集成成功
点击查看源码
shell
adb shell
am start -d 'esapp://action/start?from=cmd&pkg=es.skill.weather.tv&args={}'
#args参数⾮必须,参数格式:
{
"url": "⻚⾯路由地址",
"params": "⻚⾯路由参数"
}
第4步:代码调⽤Scheme启动
点击查看源码
js
Uri uri = new Uri.Builder()
.scheme("esapp")
.authority("action")
.appendPath("start")
.appendQueryParameter("pkg", "es.skill.weather.tv")
.appendQueryParameter("from", "集成SDK的应⽤包名")
.appendQueryParameter("args", "启动参数(json格式字符串),⾮必须")
.build();
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.setPackage("集成SDK的应⽤包名");
context.startActivity(intent);
第5步:代码调⽤Activity启动
点击查看源码
js
String pkgName = "集成SDK的应⽤包名";
String action = pkgName + ".ES_ACTION_LAUNCH";
Intent intent = new Intent(action);
intent.putExtra("pkg", "es.skill.weather.tv");
intent.putExtra("from", "集成SDK的应⽤包名");
intent.putExtra("args", "启动参数(json格式字符串),⾮必须");
intent.setPackage(pkgName)
context.startActivity(intent);
第6步:参数接收
如果要接收启动的args
参数,需在Vue
端覆写⽣命周期⽅法:
点击查看源码
js
export default {
mixins: [ESPage],
methods: {
onESCreate(params) {
if (ESLog.isLoggable(ESLog.DEBUG)) {
ESLog.d(TAG, "----启动参数----->>>>>" + JSON.stringify(params))
}
},
}
}