【问题标题】:Apportable porting from Cocos2d project error来自 Cocos2d 项目错误的适当移植
【发布时间】:2013-06-05 08:15:07
【问题描述】:

我现在正在尝试使用 Apportable 移植我的 Cocos2d 1.x 项目之一,在编译阶段出现以下错误:

     apk = env.BuildAPK(os.path.join(env['VARIANT_DIR'], env['APPLICATION_NAME'], config['APPLICATION_NAME'] + '.apk'), lib, assets + env['LIBRARY_ASSETS'])
  File "/Users/*user*/.apportable/SDK/lib/scons/engine/SCons/Environment.py", line 223, in __call__
    return self.method(*nargs, **kwargs)
  File "/Users/*user*/.apportable/SDK/site_scons/android/sdk.py", line 1123, in APKBuilder
    packaged = ResourcesFinalize(env, target=res_apk_path, source=source, assets=assets)
  File "/Users/*user*/.apportable/SDK/site_scons/android/sdk.py", line 922, in ResourcesFinalize
    all_assets = RemapAssetList(env, assets)
  File "/Users/*user*/.apportable/SDK/site_scons/android/sdk.py", line 847, in RemapAssetList
    (remap, target) = Remap(env, asset, target)
  File "/Users/*user*/.apportable/SDK/site_scons/android/sdk.py", line 723, in Remap
    (base, ext) = os.path.splitext(str(source))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u0421' in position 58: ordinal not in range(128)

是SDK问题还是我的源代码有解决方案?

【问题讨论】:

  • 只是猜测,您的项目名称或路径是否有任何非 ascii 字符?

标签: android porting apportable


【解决方案1】:

正如 LearnCocos2D 猜测的那样,Apportable 目前不处理具有非 ASCII 名称的资源文件。

如果您想保持 IOS 项目不变,您可以将资源文件复制或链接到 ASCII 名称并相应地更新 configuration.json:

例如,在 remove_params 部分:

        "assets": [
              "Resources/Audio/@#$%\u2122!.wav",
               .....

在 add_params 部分:

        "assets": [
               "apportable/Resources/sonOfA.wav",  // link to Resources/Audio/@#$%\u2122!.wav"

此外,我们现在正在更新 Apportable 平台以正确处理非 ASCII 字符,因此,如果您在未来一两个多星期后阅读本文,那么这个问题将没有实际意义。

【讨论】:

  • 有没有办法检测出哪个文件是错误的,大约有 500 个文件可能错误地插入了非 ASCII 符号。如果正确理解,它应该是 C 字母表示的文件名之一。
  • 好的,似乎找到了找出非 ASCII 文件名的方法,在 MAC 上通过终端导航到资源文件夹并执行命令:ls | perl -ne '打印 if /[^[:ascii:]]/'
  • 很好地发现了如何追踪非 ASCII 文件名。另一种选择是查看 python 调试器。见stackoverflow.com/questions/1623039/python-debugging-tips
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多