UIFileSharingEnabled 键

问题描述 投票:0回答:2

我将密钥

UIFileSharingEnabled
添加到我的应用程序的版本信息 ,如此处所述,以便我的用户可以将文件保存到我的应用程序文档文件夹中。在测试中效果很好。尝试使用应用程序加载器上传到苹果商店,我得到了
ERROR ITMS-90039: "Type Mismatch. The value for the Info.plist key UIFileSharingEnabled is not of the required type for that key.
。我用谷歌搜索了一下,发现其他人在哪里遇到了问题,但他们的解决方案都没有帮助。以下是我尝试在 Info.plist 中显示此键的方法:

<key>UIFileSharingEnabled</key>
<string>true</string>

<key>UIFileSharingEnabled</key>
<true/>

<key>UIFileSharingEnabled</key>
<string>YES</string>

<key>UIFileSharingEnabled</key>
<YES/>

所有结果都相同,应用程序加载器吐出

ERROR ITMS-90039
。该键是一个布尔键,对于 Info.plist 中的其他布尔键,它们看起来就像我显示的顶部那个键。有人有一个示例 Info.plist ,其中这个键为 true,我们也可以比较吗?

我已经在 Rad Studio 10.3.2 (C++ Builder) 中构建了我的应用程序。它们主要适用于手机上的测试构建。

firemonkey c++builder c++builder-10.3-rio
2个回答
4
投票

让它工作起来,事情是这样的:

Info.plist
文件夹中的
iOSDevice64\Release
文件仅供您参考,它不是在应用程序加载器中上传到苹果的内容。上传的
Info.plist
位于 .ipa 文件 中,该文件是在 Rad Studio 中构建发布版本时创建的,并且已签名,因此您显然无法修改它。

解决方案是编辑我的应用程序项目文件夹中的

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
中,如下所示,这是错误的,应用程序加载器将给出该错误:

 <key>UIFileSharingEnabled</key>
 <string>true</string>

密钥必须如下所示才能在您提交到应用商店的版本上使用:

<key>UIFileSharingEnabled</key>
<true/>

0
投票

仅使用此:

<key>UIFileSharingEnabled</key>
<true/>
© www.soinside.com 2019 - 2024. All rights reserved.