如何使用ZEROBRANE STUDIO远程调试COCOS2D-X的LUA脚本(转)
2016-03-15 20:49
726 查看
http://www.cocos2d-x.org/docs/manual/framework/native/v2/lua/lua-remote-debug-via-zerobrane/zh
ZeroBrane Studio做为一个轻量级的Lua IDE,因为它支持跨平台(支持
Mac OS X 10.9
Xcode 5.01
1.将
2.用Xcode打开
3.运行ZeroBrane Studio,点击界面从左上角的Project下面的
4.打开hello.lua,鼠标点击行号右边的空白处加入断点:
5.从ZeroBrane Studio的菜单栏开启Debugger Server:
6.切换回XCode,运行HelloLua iOS测试例,触发断点(
7.通过debug工具栏,进行step in, step out, step over, continue等相应操作。此处需要注意,ZeroBrane有个地方比较奇怪,以
8.点击
9.点击
Android Developer Tools
HTC G17
Android(
其中,
http://blog.csdn.net/kenkao/article/details/46126103
ZeroBrane Studio做为一个轻量级的Lua IDE,因为它支持跨平台(支持
Windows、
Mac和
Linux)和支持真机调试(
Andorid、
IPhone和
IPad),所以经常被用来调试Lua。目前,Cocos2d-x通过集成LuaSocket也支持应用ZeroBrane Studio进行测试例的调试(Linux除外)。我们以HelloLua为例,详细描述如何使用ZeroBrane Studio进行iOS模拟器和Android真机的调试。
版本
Cocos2d-x Version 3.0 Beta2iOS模拟器调试
测试环境
ZeroBrane Studio (0.39 for mac; MobDebug 0.542)Mac OS X 10.9
Xcode 5.01
1.将
ZeroBrane Studio.app/Contents/ZeroBraneStudio/lualibs/mobdebug/mobdebug.lua这个文件拷贝到
cocos2d-x/samples/Lua/HelloLua/Resources目录下。这步过程在Cocos2d-x v3.0 Beta2及以上版本可以略过,引擎已经集成了这个文件。
2.用Xcode打开
cocos2d-x/build/cocos2d_samples.xcodeproj之后,先把
mobdebug.lua文件加入HelloLua工程,然后在
HelloLua/Resources/hello.lua文件里面添加debugger调用的指令,仅需要插入
require('mobdebug').start()一句,插入在
require "hello2"行之前,如下:
local function main() ... require('mobdebug').start() --<-- only insert this line require "hello2" cclog("result is " .. myadd(1, 1)) ... end
3.运行ZeroBrane Studio,点击界面从左上角的Project下面的
...按钮, 然后选中cocos2d-x/samples/Lua/HelloLua/Resources目录,将HelloLua的Resources导入到Project下,如图所示:
4.打开hello.lua,鼠标点击行号右边的空白处加入断点:
5.从ZeroBrane Studio的菜单栏开启Debugger Server:
6.切换回XCode,运行HelloLua iOS测试例,触发断点(
Windows环境下切换回Visual Studio 2012):
7.通过debug工具栏,进行step in, step out, step over, continue等相应操作。此处需要注意,ZeroBrane有个地方比较奇怪,以
local visibleSize = cc.Director:getInstance():getVisibleSize()这行函数为例,需要step over三次才能走到下一行函数,可能是因为此处有两个函数调用。
8.点击
View->Watch Window,打开Watch Window,添加要观察的变量:
9.点击
View->Stack Window,还可以看到相应的堆栈信息:
Android真机调试
测试环境
ZeroBrane Studio (0.39 for mac; MobDebug 0.542)Android Developer Tools
HTC G17
Android(
IPhone或
IPad)真机调试的流程和iOS模拟器调试基本相同,主要的区别在于
hello.lua中debugger调用的指令,如下:
local function main() ... require('mobdebug').start('192.168.1.110') require "hello2" cclog("result is " .. myadd(1, 1)) ... end
其中,
192.168.1.110为PC的IP地址,测试手机的wifi IP需要与PC的IP地址同一网段,否则无法调试。
http://blog.csdn.net/kenkao/article/details/46126103
相关文章推荐
- Cocos-2dx-Lua中使用Luaj的完整示例(转)
- cocos2d-x 关于tilemap滚动时黑线闪动的问题
- cocos2dx 自己主动加入cpp文件到android.mk
- Cocos2d-x 3.1 内存管理机制
- cocos2d碰撞问题(下)—乱码的解决
- cocos2dx3.x开启重力感应
- cocos2dx3.x将c++绑定到lua MAC
- 15款Cocos2d-x游戏源码
- [cocos2dx] lua注册回调到c++
- Cocos2d-x像素级触摸处理
- cocos2d-x 碰撞问题详解(上)
- Cocos2D-X2.2.3学习笔记9(处理重力感应事件,移植到Android加入两次返回退出游戏效果)
- cocos2d-x中几种存储数据的方式
- Cocos2d-x 3.1.1 学习日志5--cocos2d-x3.1.1打飞机的实现
- cocos2d-x lua 示例Demo
- MAC下Android Studio 1.4编译构建Cocos2d-x 3.9之Android版本程序
- Cocos2d-x客户端代码加密
- Cocos2dx android apk签名打包流程
- Cocos2d-x客户端资源加密
- Cocos2d-x中使用OpenGL ES2.0编写shader