unity5 使用GB(“2312”)编码在L2cpp模式下IOS打包

要使用GB("2312")编码,需从Unity安装目录(Editor\Data\Mono\lib\mono\unity 和 Editor\Data\Mono\lib\mono\2.0 两个目录中,拷贝I18N.DLLI18N.CJK.DLL到项目目录Asset文件夹下,PC测试可正常使用。但在unity5中要支持64位ios,就要选择IL2cpp模式,打包出来报错如下:

”NotSupportedException: CodePage "G2312" not supported”

而在mono2.x模式下打包正常运行。

原因是IL2cpp模式打包I18N.DLLI18N.CJK.DLL没有导入到xcode工程中,在xcode工程中搜索“I18N.DLL "、"I18N.CJK.DLL"没有结果。

解决方法:

将GB("2312") 改名为GB(936),两者是一样的。

在Assets根目录下添加link.xml文件,其内容如下:


<?xml version="1.0" encoding="utf-8"?>  
<linker>
  <assembly fullname="I18N"> <type fullname="I18N.Common.Manager" preserve="all"/>    
</assembly>  
  <assembly fullname="I18N.CJK">
 <type fullname="I18N.CJK.CP936" preserve="all"/>  
  </assembly>
 </linker>

打包后该编码能正常使用。

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页