Info.plist 中的 UIFileSharingEnabled 键
UIFileSharingEnabled key in Info.plist
我将密钥 UIFileSharingEnabled
添加到我的应用程序的版本信息 中,这样我的用户就可以将文件保存到我的应用程序文档文件夹中。在测试中效果很好。尝试使用 Application Loader 上传到苹果商店,我得到了一个 ERROR ITMS-90039: "Type Mismatch. The value for the Info.plist key UIFileSharingEnabled is not of the required type for that key.
。我用谷歌搜索并发现其他人在哪里遇到问题,但 none 他们的解决方案有所帮助。以下是我尝试在 Info.plist:
中显示此密钥的方法
<key>UIFileSharingEnabled</key>
<string>true</string>
<key>UIFileSharingEnabled</key>
<true/>
<key>UIFileSharingEnabled</key>
<string>YES</string>
<key>UIFileSharingEnabled</key>
<YES/>
结果都一样,Application Loader 吐出 ERROR ITMS-90039
。这个键是一个布尔键,对于 Info.plist 中的其他布尔键,它们看起来就像我展示的最上面的那个。任何人都有一个示例 Info.plist,这个密钥是真的,我们也可以比较一下吗?
我在 Rad Studio 10.3.2 (C++ Builder) 中构建了我的应用程序。他们在 phone.
上与测试版本一起工作
成功了,这是一笔交易:iOSDevice64\Release
文件夹中的 Info.plist
文件仅供您参考,而不是在应用程序加载器中上传到 apple 的文件。上传的 Info.plist
位于在 Rad Studio 中构建发布版本时创建的 .ipa file 中,并且已签名,因此您显然无法修改它。
解决方案是 edit the info.plist.TemplateiOS.xml
,它位于我的应用程序的项目文件夹中。当您构建时,您输入 Project->Options-Application->Version Info
的密钥会添加到此 info.plist.TemplateiOS.xml
中。所以,我编辑了这个模板文件并将正确的密钥表示放在 <%ExtraInfoPListKeys%>
和最后一个 </dict>
:
之间
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<%VersionInfoPListKeys%>
<%ExtraInfoPListKeys%>
<key>UIFileSharingEnabled</key>
<true/>
</dict>
</plist>
如果您只是将 UIFileSharingEnabled
键放在 Project->Options-Application->Version Info
中,它将以 Info.plist
结尾,如下所示,这是错误的,Application Loader 会给出该错误:
<key>UIFileSharingEnabled</key>
<string>true</string>
密钥必须像下面这样才能在您提交到应用商店的版本上工作:
<key>UIFileSharingEnabled</key>
<true/>
我将密钥 UIFileSharingEnabled
添加到我的应用程序的版本信息 ERROR ITMS-90039: "Type Mismatch. The value for the Info.plist key UIFileSharingEnabled is not of the required type for that key.
。我用谷歌搜索并发现其他人在哪里遇到问题,但 none 他们的解决方案有所帮助。以下是我尝试在 Info.plist:
<key>UIFileSharingEnabled</key>
<string>true</string>
<key>UIFileSharingEnabled</key>
<true/>
<key>UIFileSharingEnabled</key>
<string>YES</string>
<key>UIFileSharingEnabled</key>
<YES/>
结果都一样,Application Loader 吐出 ERROR ITMS-90039
。这个键是一个布尔键,对于 Info.plist 中的其他布尔键,它们看起来就像我展示的最上面的那个。任何人都有一个示例 Info.plist,这个密钥是真的,我们也可以比较一下吗?
我在 Rad Studio 10.3.2 (C++ Builder) 中构建了我的应用程序。他们在 phone.
上与测试版本一起工作成功了,这是一笔交易:iOSDevice64\Release
文件夹中的 Info.plist
文件仅供您参考,而不是在应用程序加载器中上传到 apple 的文件。上传的 Info.plist
位于在 Rad Studio 中构建发布版本时创建的 .ipa file 中,并且已签名,因此您显然无法修改它。
解决方案是 edit the info.plist.TemplateiOS.xml
,它位于我的应用程序的项目文件夹中。当您构建时,您输入 Project->Options-Application->Version Info
的密钥会添加到此 info.plist.TemplateiOS.xml
中。所以,我编辑了这个模板文件并将正确的密钥表示放在 <%ExtraInfoPListKeys%>
和最后一个 </dict>
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<%VersionInfoPListKeys%>
<%ExtraInfoPListKeys%>
<key>UIFileSharingEnabled</key>
<true/>
</dict>
</plist>
如果您只是将 UIFileSharingEnabled
键放在 Project->Options-Application->Version Info
中,它将以 Info.plist
结尾,如下所示,这是错误的,Application Loader 会给出该错误:
<key>UIFileSharingEnabled</key>
<string>true</string>
密钥必须像下面这样才能在您提交到应用商店的版本上工作:
<key>UIFileSharingEnabled</key>
<true/>