今天下午解决了因为偷懒一直忍受的两个让我不爽很久了的问题:
1Eclipse无法连接手机调试的问题。
在设备管理器中看到的Android设备有黄色的感叹号,
说明驱动不是最新的。
按照网上搜到的解决方案,去android sdk目录下的extra下面找搜索驱动来安装,
或者按照Adobe论坛上提供的方式去Flash Bulder目录下的utility文件夹下面去搞这搞那。
全特么不行啊。
幸好我天资聪颖,想了想,何不去搜索一下我手机对应的usb驱动呢,
于是在网上找到我手机对应的驱动,
更新了一下驱动,然后设备管理器里面显示的就正常了。
perfect,如下图,这特么还不行我就要砸电脑了:
现在,老子终于可以用自己的手机调试了,哈哈。
2 This Android SDK requires Android Develop Toolkit 23.0.0 or above
这个问题也搞我搞了很久,
一开始的解决方案是将位于adt\sdk\tools\lib\plugin.prop里面的plugin.version的值改得尽量小。
但是每次更新玩SDK之后,这个地方的值都会被改,我想是时候根本解决掉它了。
之前Elicpse里面check update非常多次,但是Eclipse死不承认我的ADT版本是22.0的。
需要先uninstall之前的ADT,
然后重启Eclipse,重新用ADT地址装一下ADT,然后就不会提示上面这个了,也就是说ADT的版本问题解决了。
但是.......
如果你只是更新了Android Develop Tool那么你接下来就会遇到很多奇怪的问题,
那是因为你的ADT里面还有其他的内容:Android DDMS, Android Hierarchy Viewer, Android Native Development Tools, Android Traceview都是低版本的,
只要将他们按照上面的方式重装就可以了。
3 Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing...
在连接手机调试的时候,运行到
static {
System.loadLibrary("game");
}
的时候,报
Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing...
也就是找不到game.so这个文件,
于是乎去网上搜索了一下,
发现很有可能是build_native.bat编译不成功。
于是进入命令行,跑了一下,发现如下问题:
看起来似乎是NDK_MODULE_PATH的问题,但是在build_native.bat中添加NDK_MODULE_PATH={我的NDK路径}时,发现还是报错,所以估计不是NDK路径的问题,
仔细看了下,发现COCOS2DX_ROOT是空的,所以将COCOS2DX_ROOT设置为我的QUICK_COCOS_2DX下面的cocos2dx路径,
因为如果设置为你下载的别的COCOS2dx路径的话,很可能会因为版本不同导致其他问题。
然后,把APP_PLATFORM的问题也在Eclipse中解决一下,发现还只是解决了几个WARNING。
我了个擦,看了下最后的一个问题:Cannot find module with tag 'cocos2dx' in import path
于是用了我最不愿意用的搜索引擎搜了一下,搜到的第一条结果如下:
http://blog.csdn.net/kissnsms/article/details/12294823
在你的Android.mk中导入一个路径即可!
注意换成你项目的路径
$(call import-add-path, /home/nsms/project/cocos2d-x-2.2.0)
$(call import-add-path, /home/nsms/project/cocos2d-x-2.2.0/cocos2dx/platform/third_party/android/prebuilt)
按照他说的在quick-cocos2d-x-2.2.1-rc\lib\proj.android\Android.mk的第23行增加了以上的两句,不同的是我的值是绝对路径。
然后现在编译好了,如下:
如何知道你的编译是好的呢,打开或者刷新一下你的Eclipse项目,你就会发现你的Android项目下面多了一个libs文件夹,如下:
嗯,我想我现在应该可以编译正常的在我的手机上debug了。
2014-07-04 17:43
终于可以在手机上面跑起来了,有那么一瞬间觉得自己有点高大上了,截屏留念一下,虽然还有很多文件找不到的bug。
2014-7-4 17:55
已在手机上完美运行,结贴,嘿嘿。