我一直在寻找一种在phonegap中执行LimeJS的简单方法。我已经在LimeJS中编写了一个简单的游戏,它在浏览器上运行完美。但是当我尝试将它包装在phonegap-ios上时,它只是没有显示内容。
有关于如何做到这一点的任何好的或简单的例子吗?
感谢。
答案 0 :(得分:1)
在将它包装到phonegap之前,你已经在phonegap上编译了源代码吗? 这里是关于如何编译limejs项目的文档
答案 1 :(得分:1)
我自己偶然发现了这个致命的组合。但是,有一种比将所有的closure,bin和lime文件复制到PhoneGap项目更好的方法(特别是因为闭包库大约是15MB ......)
到目前为止,这是我的工作流程:
在LimeJS中创建应用程序。在浏览器中测试。
编译游戏:
bin/lime.py build name_of_game -o output/path/and/filename.js
将已编译的JavaScript文件移动到PhoneGap项目的www文件夹中 以及应用程序在适当路径中所需的任何资源。
添加从index.html调用JavaScript文件的行 到PhoneGap项目的index.html。 (不要包括引用的行 Closure库。它已被编译到JavaScript文件中。
使用Android AVD Manager启动模拟器。 (使用adb devices
查看
Android设备可用。)或者,插入Android设备。
使用adb install path/to/file.apk
安装应用程序
模拟器或使用adb -d install path/to/file.apk
来安装
应用于设备上。
乱用应用程序!
如果您这样做,可以将应用程序的文件大小减小。 LimeJS使用的闭包编译器会自动将必要的部分放入一个“编译”的JavaScript文件中,这是您在PhoneGap应用程序中引用的文件。
我还没有搞乱与设备相关的功能(声音,加速度计,本地存储等),但我认为你只需要使用PhoneGap库(需要对此过程稍微调整一下) 。您甚至可以将lime和封闭库留在PhoneGap项目中,直到您准备好部署,然后使用LimeJS脚本进行构建,然后摆脱额外的东西。
希望这有帮助!
答案 2 :(得分:0)
您可以使用预编译的文件。将游戏根目录中的所有内容复制到phonegap www文件夹中,然后编辑index.html以加载用于关闭和游戏的脚本。
文件夹结构如下所示:
/www
/bin
/box2d
/closure
/lime
/myGame
index.html
cordova-2.2.0.js
另外还有一些其他文件夹,我敢肯定。然后在索引中你需要:
<script type="text/javascript" src="closure/closure/goog/base.js"></script>
<script type="text/javascript" src="myGame/myGame.js"></script>
只要您指向脚本的正确目录并正确编译,所有内容都应该正确加载。