cocos2d-x 1.0.1 for Android 使用Box2D

來源:互聯網
上載者:User

環境:2dx-1.0.1-x-0.9.2

ps:在1.0.1版本,建立一個android項目,缺少一個default.properties  拷貝一個到androud目錄下

但是to android的時候編譯會出錯 因為2dx for android 工程並沒有加入Box2D庫

需要修改下列檔案:

jni目錄下

Application.mk

APP_MODULES := cocos2d box2d cocosdenshion game_logic game

Android.mk
subdirs := $(addprefix $(LOCAL_PATH)/。。/。。/,$(addsuffix /Android.mk, \
cocos2dx \
Box2D \
CocosDenshion/android \

))

helloworld裡面的Android.mk

$(LOCAL_PATH)/。。/。。\
$(LOCAL_PATH)/。。/。。/Classes

LOCAL_LDLIBS := -L$(call host-path, $(LOCAL_PATH)/。。/。。/libs/$(TARGET_ARCH_ABI)) \
-lcocos2d -llog -lgame_logic -lbox2d

Classes裡面的Android.mk

LOCAL_C_INCLUDES := $(LOCAL_PATH)/。。/。。/cocos2dx \
$(LOCAL_PATH)/。。/../ \
$(LOCAL_PATH)/。。/../Box2D \

LOCAL_LDLIBS := -L$(call host-path, $(LOCAL_PATH)/../android/libs/$(TARGET_ARCH_ABI)) \
-lcocos2d -lcocosdenshion -lbox2d \

這樣就可以了

ps.如果提示匯入box.h錯的 主要是修改一下BOX2D的位置 $(LOCAL_PATH)/。。/../Box2D \ 就可以了

 

轉自:http://leenjewel.blog.163.com/blog/static/60193792201162710514314/

在上一篇日誌《cocos2d-x 中使用 Box2D》中遺漏了一個步驟,很可能引發 android 程式的意外崩潰。現在在這裡補充說明一下。按照上一篇日誌《cocos2d-x 中使用 Box2D》操作完成後,還需要對 android 工程的主 Activity 類(繼承自 Cocos2dxActivity)檔案進行修改。在 cocos2d 產生的標準 android 工程檔案中有一個主 Activity 類檔案,在該檔案的最後有類似如下的代碼:

                static {
                         System.loadLibrary("cocos2d");
                         System.loadLibrary("cocosdenshion");
                         System.loadLibrary("game");
                 }

       
在這裡需要將 box2d 庫做引入。不過需要特別注意的是,引入 box2d 庫的 System.loadLibrary 語句的位置。引入
box2d 庫的語句一定要放在 System.loadLibrary("game") 語句之前,也就是要保證
System.loadLibrary("game") 語句是最後一個引入的動作陳述式。修改完成後的代碼應該是這樣子:

                static {
                         System.loadLibrary("cocos2d");
                         System.loadLibrary("box2d");
                         System.loadLibrary("cocosdenshion");
                         System.loadLibrary("game");
                 }

        這樣的話,在 cocos2d-x 中引入 Box2D 製作的程式就可以順利的運行了。其實不僅是 Box2D,在 cocos2d-x 中還有其他一些引擎,需要引入這些庫的方法和引入 Box2D 的方法是大同小異的,請大家自己舉一反三吧。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.