lua学习笔记 1 android 调用Lua, Lua脚本中启动Intent
16lz
2021-12-04
android 调用Lua, Lua脚本启动Intent
android 中的调用
try {mLuaState.LdoString(readStream(getResources().openRawResource(R.raw.testLua)));// 找到functionInLuaFile函数mLuaState.getField(LuaState.LUA_GLOBALSINDEX, "launchIntent");mLuaState.pushJavaObject(getApplicationContext());mLuaState.call(1, 0);} catch (Exception e) {e.printStackTrace();}
readStream 实现
private String readStream(InputStream is) {try {ByteArrayOutputStream bo = new ByteArrayOutputStream();int i = is.read();while (i != -1) {bo.write(i);i = is.read();}return bo.toString();} catch (IOException e) {Log.e("ReadStream", "读取文件流失败");return "";}}
在Android 工程 res/raw/新建lua脚本 testLua.lua
-- 启动 intentfunction launchIntent(context)-- new 一个java 实例local intent = luajava.newInstance("android.content.Intent")intent:addFlags(0x10000000)intent:setAction("android.intent.action.VIEW")-- bind 一个Java实例,调用static 方法local uri = luajava.bindClass("android.net.Uri")intent:setData(uri:parse("http://blog.csdn.net/hpccn"))context:startActivity(intent);end
静态类使用
uri = luajava.bindClass("android.net.Uri")
非静态类
intent = luajava.newInstance("android.content.Intent")
在Lua脚本中发启一个Intent, 打开一个网页,就是本人的博客。
更多相关文章
- android调用系统发短信界面功能
- Android获取OAID设备标识
- android中View.measure方法详解
- android 调用js中的方法
- android webview
- Dealing with bitmap object in android NDK
- android > 调用拨打电话 并子线程监控然后返回跳转
- android调用系统发短信界面功能
- Android(安卓)获取版本号