安卓遊戲開發,vs win32到eclipse apk出現的跨平臺問題

之前我用adt bundle is for windows 做安卓開發,所以,用cocos2dx 也用的windows平臺。而不是linux.但普遍認爲linux+安卓studio要比winodws+eclipse要好。所以,建議前者。
    本來配置好windows下的coco2dx的下的開發環境,就直接用eclipse做調試和運行。但聽了“前人”的建議,發現效率不高。cocos2dx是用c++開發的跨平臺的第三方庫。所以使用coco也是用c++完成90%開發,jni完成c/c++和java交互。ndk完成幫助開發者快速開發C(或C++)的動態庫,並能自動將so和java應用一起打包成apk。所以,用coco做安卓開發,基本上用的c++ + coco類庫。直接用eclipse寫,調試和運行,更新apk.但這樣速度會很慢。vs強大的c++調試功能是eclipse所不能比的。所以,先用vs下做win32開發,調試運行成功後,在將工程下的安卓目錄導入到eclipse下運行 ,然後真機或者avd模擬,效率更高。
    當然,在vs下成功運行後,可以在cmd下利用指令python......更新安卓apk也可以。但是有時候從vs win32 到apk就會出現下列問題(目前,我所遇到的)


1:如果你添加了新的類.h和.cpp文件。直接python或者不做任何修改,在eclipse運行會出現找不到這個類文件的問題。做出的改正:

在Android.mk在添加相應的.cpp文件。


-1是必須要有的類文件
-2創建場景等的類文件,可以刪除,因爲我們可以自己創建類,創建場景
-3我們自己添加的類,需要在Android.mk下添加自己的.cpp文件
然後重新編譯,運行,OK

2:在vs下做的win32 coco開發,調試運行完,也說明你的遊戲已經可以再windows下可以運行了。coco的跨平臺幫助你很快產生apk文件。因爲有時要用到C語言庫,問題在於:win32開發coco調用的C語言庫是glibc的庫。而eclipse 下coco調用的安卓的linux內核的Bionic c庫。

http://baike.baidu.com/view/4504508.htm?fr=aladdin鏈接介紹了安卓的linux內核和linux系統內核以及x86的區別簡介。

所以,昨天我在vs下調用了atoa的函數,但是在安卓下的C語言庫中不存在這個函數,糾結了好久,問了一下其他人才解決了這個問題。

或者自己實現atoa函數的功能,或者用sprintf替換atoa等很多。。。

修改之後,python成功。。。等着模擬吧。


目前,就遇到這兩個問題,但是在跨平臺中肯定還是會有更多的
 問題出現。。。。。。。。      
發佈了26 篇原創文章 · 獲贊 80 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章