Android 与 Lua

Lua: 一种轻量语言,由标准C编写而成,体积小,启动速度快。Lua 有一个同时进行的 JIT 项目,提供在特定平台上的即时编译功能。

LuaJ
Luaj 是一个 Java 的 Lua 解释器,基于 Lua 5.2.x 版本,目的是:

  • 基于 Java 的实现,可以在 Java 应用中集成 Lua 虚拟机
  • 轻量级、高性能的执行 Lua
  • 多平台支持
  • 完整的库和工具支持
  • 可在 Java ME、SE 和 EE 环境中执行
  • luajava api 支持
  • 混合调试

AndroLua :
Androlua 是安卓平台上的用 Lua 开发安卓程序的工具,不仅支持调用Java API,而且支持编写安卓界面程序,还可以将自己写的 Lua 程序打包成 apk 安装文件安装。Lua 语言的简单使没有任何编程经验的用户也能在短时间内开发出安卓程序。(来自百度百科)

LuaViewSDK - Android版
LuaViewSDK 由阿里聚划算无线开发团队开发并维护, LuaView 是一种运行在一个 ViewController/Activity 中,可以灵活加载 Lua 脚本,并能够按照 Native 的方式运行的一种面向业务的开发技术方案。可以快速开发电商应用中既要求体验又要求灵活性的页面功能,例如首页,类目首页,垂直频道,大促活动会场等。LuaViewSDK 还有 iOS 版。

LuaViewSDK 体验

官方文档放了一个很详细的入门文档 👉新手入门 - android

下面的是我自己创建的项目,加载 assets 目录下的 haha.lua 文件
图片

下面尝试加载外部的脚本文件, 我在 sd 卡上新建了一个 local.lua 脚本文件
内容如下

1
2
3
4
5
6
7
w,h = System.screenSize();
window.frame(0, 0, w, h);
window.backgroundColor(0x220000);
label = Label();
label.frame(16,16,w, 60);
label.text("Local Hello World LuaView to Android");

我们页可加载服务器上的 lua 脚本,注意校验服务器的文件,防止 lua 脚本恶意攻击。

相关文章