一 使用浏览器chrome打开程序,进行调试。跟普通js程序一样。

    • 要么自行搭建服务器,利用python脚本,或者用其他服务器程序(LAMP或XAMPP)。然后用浏览器打开服务器地址。
    • 要么直接使用cocos提供好的命令行:cocos run –p web

浏览器调试好处是,方便,对于小程序或者非native代码是非常有意义的。但部署到真机后遇到的问题,这就无法解决了,而且一些native代码也无法调试。

二 使用firefox远程调试。

因为cocos2d-js使用spidermonkey作为js解析引擎,这个玩意就是mozilla派的,所以用firefox做远程调试。题外话。。。这让firefox在chrome如日中天的年代又找到了点存在感啊~~~真怀念。

可以参考大牛的文章:

http://goldlion.blog.51cto.com/4127613/1359572   不过大牛这里的配图有个缺陷,连接手机的地址没有说明。127.0.0.1是用本机模拟器运行时才用到的,如果是真机,必须是手机的网络地址。这可以让开发机和手机在同一个wifi网络中,然后到路由器里边找找手机的ip,也可以用开发机ping一下。

调试步骤:

1 firefox 新版(测试在V27)

2 打开cocos2d程序的debug

在AppDelegate.cpp(在framework里边),改写AppDelegate::applicationDidFinishLaunching()函数,在sc->start()后面加入sc->enableDebugger()的调用

bool AppDelegate::applicationDidFinishLaunching()

{

// initialize director

Director *director = Director::getInstance();

director->setOpenGLView(EGLView::getInstance());

// turn on display FPS

director->setDisplayStats(true);

// set FPS. the default value is 1.0/60 if you don't call this

director->setAnimationInterval(1.0 / 60);

ScriptingCore* sc = ScriptingCore::getInstance();

sc->addRegisterCallback(register_all_cocos2dx);

sc->addRegisterCallback(register_all_cocos2dx_extension);

sc->addRegisterCallback(register_cocos2dx_js_extensions);

sc->addRegisterCallback(register_all_cocos2dx_extension_manual);

sc->addRegisterCallback(jsb_register_chipmunk);

sc->addRegisterCallback(JSB_register_opengl);

sc->addRegisterCallback(jsb_register_system);

sc->start();

#if defined(COCOS2D_DEBUG) && (COCOS2D_DEBUG > 0)

sc->enableDebugger();

#endif

ScriptEngineProtocol *engine = ScriptingCore::getInstance();

ScriptEngineManager::getInstance()->setScriptEngine(engine);

ScriptingCore::getInstance()->runScript("cocos2d-jsb.js");

return true;

}

3 编译运行 cocos run –p android

4 firefox连接手机

在FireFox中,连接功能的菜单项缺省是被隐藏的,我们需要改一下浏览器配置。

如下操作

这样菜单项就显示出来了,然后。

然后,我们把调试器和设备连接起来:(地址填手机的网络地址,图中127.0.0.1是因为模拟器运行;端口必须是5086

弹出一个新窗口,表示连接成功。基本1s内就连接成功了,如果不成功,再检查一下cocos程序是否在运行,或者手机ip地址是否正确,或者开发机和手机是否在同一个子网。

5 开始调试

点debugger调试器开始调试。

这个方法也有一定缺陷,也就是必须在cocos程序启动后才能调试。启动过程中做的事情,就不好捕捉了。。。这时候需要用cc.log配合一下了。具体方法请参考前一篇日志http://www.cnblogs.com/kenkofox/p/3906562.html

cocos2d-js 调试办法 断点调试 Android真机调试的更多相关文章

  1. 在Mac系统上配置Android真机调试环境

    在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...

  2. Unity Profiler连接Android真机调试

    Profiler在Editor模式就可以观看性能消耗,但是毕竟电脑配置高,跟手机真机环境还是有区别.实际开发中的优化还是推荐用真机测试. 因为IOS一般比Android手机的配置高,在Android平 ...

  3. Android真机调试手动添加程序包的LogCat

    android真机调试有时候看LogCat 时,有时候那个跑的本程序的LogCat 没有出现而是 出现的是" All messages (no filters) " .此时 的Lo ...

  4. Android真机调试的时候logcat中无法输出调试信息的解决办法

    真机调试不输出日志到logcat的原因是手机厂商默认关闭了调试打印的功能,通过以下方法开启此方法. 下面以华为P6手机为例进行操作: 1.在拨号界面输入:*#*#2846579#*#* 进入测试菜单界 ...

  5. eros --- Windows Android真机调试

    1.下载并安装JDK 2.下载并安装Android Studio 上面两项不管用weex还是eros都是前置条件,度娘有大量教程. 开始eros 手脚架安装: $ npm i -g eros-cli ...

  6. Unity Frame Debugger连接Android真机调试

    当用Profiler分析到不是代码导致的性能问题,当前场景最大的性能瓶颈是渲染时,或者自己写的Shader要调试时,都可以用Frame Debugger进行调试. 按下列步骤设置打包,既可以用Prof ...

  7. Android真机调试试验

    之前一直使用模拟器,很不好用,今天使用真机调试试验. 准备材料:电脑,Android手机. 首先,就遇到了一个问题,我的手机是华为的,之前不知道怎么回事,打开调试总是自动关闭,而且切换总是切换不了,老 ...

  8. Android ——真机调试

    1. 设置android手机为USB调试模式.步骤: menu---> 设置 ---> 应用程序 ---> 开发 , 选择[USB调试] 2. 用USB连接手机和电脑,并确保成功.步 ...

  9. Android真机调试访问本地服务器(localhost)的解决方案

    Android系统把它自己作为了localhost!当连接localhost都是他自己啊.. 囧,在这里晕了好久才发现.. 网上介绍的都是模拟器连接本地服务器的,我试着把链接改为http://10.0 ...

随机推荐

  1. ifram 取父窗体的URL地址

    var url=''; try { url = window.top.document.referrer ;     } catch(M) {           if (window.parent) ...

  2. [转]PHP资源列表

    转自:http://www.cnblogs.com/CraryPrimitiveMan/p/4437272.html 一个PHP资源列表,内容包括:库.框架.模板.安全.代码分析.日志.第三方库.配置 ...

  3. Eclipse Debug提示source not found解决方案

    场景:我在引用的jar包的某个class文件的某一行代码打了个断点,当然我是已经指定了source源码包路径,否则我是查看不了class文件的源码更不用说打断点了,但是在debug模式下,却提示&qu ...

  4. Linux命令之du

    Linux du命令用来查看文件或目录所占用磁盘空间的大小(Summarize disk usage of each FILE, recursively for directories.) 语法: d ...

  5. iOS:麦克风权限检测和获取

    一.检测 该方法是用来判断麦克风是否进行过授权,如果授权过就直接进行需要的功能操作:如果没有进行授权,那么就要获取授权. AVAuthorizationStatus authStatus = [AVC ...

  6. 一幅画<十六芒星盾>---程序员or艺术家

    画上是一面含有16个尖角的铜盾,这是我用程序算法生成的图像中最震撼的一幅.图像生成出来后,我看了好久,一边看一边想我的人生转向问题:我是不是该离开苦逼又屌丝的程序界,混入高端大气上档次的艺术圈? 说要 ...

  7. 【转载】Qt Creator 添加自定义注释

    原文:https://blog.csdn.net/liang19890820/article/details/54925434 自定义注释注释的原则是有助于对程序的阅读理解,不宜太多,也不能太少(一般 ...

  8. Groupnet, Subnet, IP Pool的概念

    Groupnet是OneFS 8.0新引入的network object,专门为了服务Multi-Tenancy而创建,目的是让OneFS可以同时地处理多套网络配置. 如果用户不需要使用multi-t ...

  9. Express application generator的使用

    首先拷贝express官网的一篇文章: (http://expressjs.com/en/starter/generator.html ) Express application generator ...

  10. mongoDB开发规范

    mongoDB库的设计 mongodb数据库命名规范:db_xxxx 禁止使用任何 " _ "(下划线)外的特殊字符 禁止使用数字打头的库名 数据库名最多为 64字符 mongoD ...