您的位置:首页 > 编程语言 > Lua

[小教程]解决android中加入Lua脚本后安装APK报错的问题。

2012-02-29 20:55 337 查看
其实这是蛮久之前写的, 从网易博客拷过来的,嘿嘿,自己写了东西,总喜欢多多分享~


不是反话吖,是真的开心~标题改日再改回正常的~
这两天把我折腾的~
老大让我把lua弄到android里,我兴奋吧,网上根本找不到资料~
好吧,我认了,找英文的...
一个字一个字地看,一句句地理解。
终于理解完整篇英文了...结果发现不是我要的资料...


然后不断这么重复着~
我很想说些粗口啥的~但是我不会这么做的~
幸好现在大家发明了很优雅的粗口~于是...
你娘亲的~
呼~解气~~~~


好了,这是我第二次写教程~为了我们吃力不讨好的敲代码的同行~
因为我在半个小时前解决了这个问题了~多亏了以下这篇文章:
http://www.ideaex.net/html/Article/2011/07/27/260.html

说了这么久,先介绍一下我的问题:
在android开发中使用lua脚本,编译时没有问题,但是apk安装到手机后会报错。
很美丽的一个错误:大概是说,找不到luajava1-1的lib库文件。

我现在写的教程是以这篇文章为准的~因为上面那篇文章的作者是高手,所以很多细节问题都没有说~
那就,由木头我来补充吧~
好了,废话结束咯~开始~!

1. 先下载这个文件,别怕,100kb不到的大小:http://www.400gb.com/file/19379155

2. OK,文件下载好了? 文件里有两个文件夹: libs和org
3. 先别问是什么,我想先让你把程序跑起来,然后我再慢慢解释。
4. 好了,打开你熟悉的eclipse,新建一个android项目(嘿嘿,别告诉我你不懂,不懂的先学学android开发的基础),我把项目命名为LuaDemo。



5. 好了吧,现在你只需用做两步。
6. 第一步,把刚刚下载的libs文件夹复制到项目的根目录。
7. 第二步,把刚刚下载的org文件夹复制到项目的src目录,看看现在的目录结构:



8. 啊,不好意思,还有第三步,嘿嘿,就是写一个lua的android应用,测试一下下~
9. 怎么写?我现在还不知道~lua脚本我今天才开始学的~怎么办?直接新建一个android的Activity类,把下面的代码拷到onCreate函数里吧:
package mutou.lua.demo;

import org.keplerproject.luajava.LuaState;
import org.keplerproject.luajava.LuaStateFactory;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class LuaDemoActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
LuaState L = LuaStateFactory.newLuaState();
L.openLibs();
L.LdoString("text = 'Hello Android, I am Lua4.'");
L.getGlobal("text");
String text = L.toString(-1);
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText(text);
setContentView(tv);
}
}


好了,连接好你的手机,运行程序~准备享受胜利的喜悦吧~

以上是参照了那篇文章写出来的,所以不算原创~
至于为什么要这么做,请大家去看看那篇原文,说得很清楚了。
原文里要下载很多工具,其实目的就是生成一个os库文件。
而我发现,我很不厚道地发现,这个库文件是通用的,不需要每个android应用都生成一次~
所以,您只需把那不到100kb的文件下载了,就可以解决问题了(原文里可是要下载差不多2G的文件呢~)~
然后,还有那个org文件夹,里面是luajava的文件,有了它们,才能使用一些lua提供的类。

喂~~嘿嘿,我很开心啊~~可是,我只能和敲代码的你们分享~
希望能帮到未来需要我这篇文章的人。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐