cocos2d-js 調試辦法 斷點調試 Android真機調試

來源:互聯網
上載者:User

標籤:android   style   blog   http   color   使用   os   io   

一 使用瀏覽器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 directorDirector *director = Director::getInstance();director->setOpenGLView(EGLView::getInstance());// turn on display FPSdirector->setDisplayStats(true);// set FPS. the default value is 1.0/60 if you don‘t call thisdirector->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();#endifScriptEngineProtocol *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。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.