雖然版上 Unity 的討論比較多,但還是 po 上來。
有關 Cocos2d-x 遊戲專案要打包成 android apk 檔案
在 cmd 介面下指令 cocos compile 的時候出現錯誤訊息:
c:\CocosTemp\test>cocos compile
Traceback (most recent call last):
File "C:\cocos2d-x-3.17.1\tools\cocos2d-console\bin\/cocos.py", line 1081,
in <module>
run_plugin(command, argv, plugins)
File "C:\cocos2d-x-3.17.1\tools\cocos2d-console\bin\/cocos.py", line 970,
in run_plugin
plugin.run(argv, dependencies_objects)
File
"C:\cocos2d-x-3.17.1\tools\cocos2d-console\plugins\plugin_compile\project_compile.py",
line 1508, in run
self.parse_args(argv)
File "C:\cocos2d-x-3.17.1\tools\cocos2d-console\bin\cocos.py", line 615, in
parse_args
self._add_custom_options(parser)
File
"C:\cocos2d-x-3.17.1\tools\cocos2d-console\plugins\plugin_compile\project_compile.py",
line 74, in _add_custom_options
help=MultiLanguage.get_string('COMPILE_ARG_BUILD_TYPE'))
File "C:\cocos2d-x-3.17.1\tools\cocos2d-console\bin\MultiLanguage.py", line
52, in get_string
fmt = cls.get_instance().get_current_string(key)
File "C:\cocos2d-x-3.17.1\tools\cocos2d-console\bin\MultiLanguage.py", line
158, in get_current_string
ret = ret.encode(self.encoding)
UnicodeEncodeError: 'cp950' codec can't encode character u'\u7f16' in
position 84: illegal multibyte sequence
用的是目前官網的 3.17.1 版本引擎,Python 是
Python 2.7 (r27:82525, Jul 4 2010, 09:01:59) [MSC v.1500 32 bit (Intel)] on
win32 版本的。
查過網路上的其它資料,有寫是 UTF-8 的問題、轉 CP950 的問題、Python 的問題、
cmd 的轉換的問題。
目前有試過有中文的 .cpp 和 .h 存成 UTF-8 檔案;
在 cmd 切換成 chcp 65001 下去 compile 還是一樣的錯誤。
要移植到 Android Studio 好像也要透過 cmd 的指令,
現在卡在打包 apk 的問題了很頭痛,官方的文件也沒什麼幫助....
希望有好心人能夠幫忙解決,感謝!