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


lua 调用 Java中静态类与非静态类的方法不同。

静态类使用

uri = luajava.bindClass("android.net.Uri")

非静态类

intent = luajava.newInstance("android.content.Intent")

在Lua脚本中发启一个Intent, 打开一个网页,就是本人的博客。


更多相关文章

  1. android调用系统发短信界面功能
  2. Android获取OAID设备标识
  3. android中View.measure方法详解
  4. android 调用js中的方法
  5. android webview
  6. Dealing with bitmap object in android NDK
  7. android > 调用拨打电话 并子线程监控然后返回跳转
  8. android调用系统发短信界面功能
  9. Android(安卓)获取版本号

随机推荐

  1. Android之SharedPreferencesUtils,支持对
  2. Arouter异常汇总
  3. Android(安卓)Notification基础知识
  4. Android(安卓)自定义Dialog 的使用
  5. FastJson使用详解Demo
  6. Android(安卓)-- 在一个Activity开启另一
  7. 〖Android〗/system/etc/fallback_fonts.
  8. Android(安卓)EditText 中hint文字大小以
  9. android转页面
  10. android 应用的相关权限