luaj与安卓

什么是luaj

luaj是一个Java的一个lua语言引擎,他可以让你在java上运行Lua代码。

在安卓中使用lua干嘛

lua代码可以用来书写布局,或者一些业务逻辑。

为什么要在安卓中使用代码

lua作为脚本语言可以很容易的进行热更新。也有很强的拓展性。

怎么在安卓用使用luaj

  • 添加依赖implementation group: 'org.luaj', name: 'luaj-jse', version: '3.0.1'
  • 创建类LuaLoader
final public class LuaLoader implements ResourceFinder {
private Context context;
private static Globals globals;
public LuaLoader(Context context) {
this.context = context;
LuaLoader.globals = JsePlatform.standardGlobals();
LuaLoader.globals.finder = this;
}
public Globals getGlobals(){
return globals;
}
@Override
public InputStream findResource(String filename) {
try {
return context.getAssets().open(filename);
} catch (java.io.IOException ioe) {
return null;
}
} }
  • 之后我们可以

    • 通过LuaLoader.getGlobals.load()来加载字符串代码。
    • 通过LuaLoader.getGlobals.loadFile()来加载assets里面的代码。

<未完待续>

[luaj]在安卓用使用luaj的更多相关文章

  1. lua调用java过程

    在cocos2dx框架中,有继承好的luaj文件来方便我们去使用lua调用java底层代码,注意:luaj只能使用在安卓平台下,如果在平台下使用,会出错, 所以使用前需要加平台判断,方法 如下: lo ...

  2. Embedding Lua, in Scala, using Java(转)

    LuaJ I was reading over the list of features that CurioDB lacks compared to Redis , that I’d previou ...

  3. Java调用Lua(转)

    Java 调用 Lua app发版成本高,覆盖速度慢,覆盖率页低.一些策略上的东西如果能够从服务端控制会方便一些.所以考虑使用Lua这种嵌入式语言作为策略实现,Java则是宿主语言. 总体上看是一个模 ...

  4. 在JAVA中使用LUA脚本记,javaj调用lua脚本的函数(转)

    最近在做一些奇怪的东西,需要Java应用能够接受用户提交的脚本并执行,网络部分我选择了NanoHTTPD提供基本的HTTP服务器支持,并在Java能承载的许多脚本语言中选择了很久,比如Rhino,Jy ...

  5. GUIForDebug

    package gui; import org.luaj.vm2.Globals; import org.luaj.vm2.LuaValue; import org.luaj.vm2.ast.Chun ...

  6. LuaJavaBridge - Lua 与 Java 互操作的简单解决方案

    http://dualface.github.io/blog/2013/01/01/call-java-from-lua/ 最近在游戏里要集成中国移动的 SDK,而这些 SDK 都是用 Java 编写 ...

  7. Java调用Lua脚本(热载实现)

    前言: Lua作为解析执行的脚本语言, 往往是易变逻辑编写的首选语言, 尤其是在游戏领域. C/C++和Lua的结合, 往往了标配. 比如Redis, Nginx其对Lua的支持, 也是杠杠的. 当然 ...

  8. lua调用java java调用lua[转载]

    转载:http://dualface.github.io/blog/2013/01/01/call-java-from-lua/LuaJavaBridge - Lua 与 Java 互操作的简单解决方 ...

  9. Cocos-2dx-Lua中使用Luaj的完整示例(转)

    如何使用Luaj进行java与Lua之间的交互调用 一.主要分为两个大步骤,Lua工程的修改,android工程的修改 二.工程环境 开发工具:Cocos-Code-IDE Lua版本 : Lua 5 ...

随机推荐

  1. MySQL中0、'0'作为条件时的区别

    一.现象: 今天查询时,某字段x为varchar 可能的值为A B C 0 1 2 3 4 想把0 1 2 3 4的所有数据查出,使用的SQL为 select * from table where x ...

  2. 未能执行URL

    在 <compilation debug="true"> 下 加入: <buildProviders> <add extension=".h ...

  3. robotframework接口之上传图片

    python-requests及robotframework-RequestsLibrary实现multipart/form-data接口上传文件. 如Fiddle抓包截图: 实现如截图: 不要自己在 ...

  4. 玩转PIL >>> 玩转photo

    前:1.使用图片放在文件最后,需要的请自行下载 2.运行环境win10家庭版,已经安装好pillow库 一.学习总结 PIL库支持图像的储存,显示和处理,几乎能处理所有的图片格式,可以完成对图像的缩放 ...

  5. 微信小程序wx.uploadFile 上传文件 的两个坑

    fileUpload: function (tempFilePath) { var that = this;//坑1: this需要这么处理 wx.uploadFile({ url: url地址, / ...

  6. 617A

    #include <stdio.h> int main() { int moves[5]={1,2,3,4,5}; int x; scanf("%d", &x) ...

  7. windows slaver 脚本执行xcopy 报错无效驱动器规格

    jenkins上配置的windows slaver机器如下: 我用这台windows 机器作为slaver机器来编译pc的exe包,但是在最后归档包倒ftp上时报错,如下: 但是我直接在windows ...

  8. 跨平台技术实践案例: 用 reactxp 重写墨刀的移动端

    Authors:  Gao Cong, Perry Poon Illustrators:  Shena Bian April 20, 2019 重新编写,又一次,我们又一次重新编写了移动端应用和移动端 ...

  9. std::bind 的使用说明

    转自: https://www.cnblogs.com/cmranger/p/4743926.html ///////////////////// std::bind bind是对C++98标准中函数 ...

  10. React 学习过程中常见的错误

    1,  react报错Module not found: Error: Can't resolve     解决:  一般是加载文件的路径写错了: