Xcode 12 个 SwiftUI 应用因 UIRequiredDeviceCapabilities plist 键而被拒绝
Xcode 12 SwiftUI app rejected for UIRequiredDeviceCapabilities plist key
我刚刚创建了一个新的 iOS 应用程序并将其提交给 Apple 审核。
他们拒绝了它,原因如下:
Guideline 2.3 - Performance - Accurate Metadata
We were unable to install the app on iPhone. The UIRequiredDeviceCapabilities key in the Info.plist is set in such a way that the app will not install on iPhone .
Next Steps
To resolve this issue, please check the UIRequiredDeviceCapabilities key to verify that it contains only the attributes required for your app features or the attributes that must not be present on the device. Attributes specified by a dictionary should be set to true if they are required and false if they must not be present on the device.
Resources
Please review the Technical Q&A 1397: Understanding the UIRequiredDeviceCapabilities key for information on the UIRequiredDeviceCapabilities key.
You may also wish to review the dictionary keys table in the "Declaring the Required Device Capabilities" section of the App Programming Guide for iOS.
我没有更改 UIRequiredDeviceCapabilities
的值,所以我很困惑它可能有什么问题。以下是我采取的步骤:
- 我使用 Xcode 12.0
创建了应用程序
- 我使用了 SwiftUI 模板
- 我只支持iOS 14
- 我的应用程序不需要任何特定设备
要求(例如 GPS)
此模板生成的 plist 密钥是:
<?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>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UIApplicationSceneManifest</key>
<dict>
<key>UIApplicationSupportsMultipleScenes</key>
<true/>
</dict>
<key>UIApplicationSupportsIndirectInputEvents</key>
<true/>
<key>UILaunchScreen</key>
<dict/>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
</array>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
</dict>
</plist>
我应该完全删除这个密钥吗? Xcode 使用此密钥创建应用程序是否存在错误?
原来只是 Apple Review 忘记了如何在他们的设备上安装应用程序。给他们发消息,让他们再试一次解决问题。
我刚刚创建了一个新的 iOS 应用程序并将其提交给 Apple 审核。 他们拒绝了它,原因如下:
Guideline 2.3 - Performance - Accurate Metadata
We were unable to install the app on iPhone. The UIRequiredDeviceCapabilities key in the Info.plist is set in such a way that the app will not install on iPhone .
Next Steps
To resolve this issue, please check the UIRequiredDeviceCapabilities key to verify that it contains only the attributes required for your app features or the attributes that must not be present on the device. Attributes specified by a dictionary should be set to true if they are required and false if they must not be present on the device.
Resources
Please review the Technical Q&A 1397: Understanding the UIRequiredDeviceCapabilities key for information on the UIRequiredDeviceCapabilities key.
You may also wish to review the dictionary keys table in the "Declaring the Required Device Capabilities" section of the App Programming Guide for iOS.
我没有更改 UIRequiredDeviceCapabilities
的值,所以我很困惑它可能有什么问题。以下是我采取的步骤:
- 我使用 Xcode 12.0 创建了应用程序
- 我使用了 SwiftUI 模板
- 我只支持iOS 14
- 我的应用程序不需要任何特定设备 要求(例如 GPS)
此模板生成的 plist 密钥是:
<?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>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UIApplicationSceneManifest</key>
<dict>
<key>UIApplicationSupportsMultipleScenes</key>
<true/>
</dict>
<key>UIApplicationSupportsIndirectInputEvents</key>
<true/>
<key>UILaunchScreen</key>
<dict/>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
</array>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
</dict>
</plist>
我应该完全删除这个密钥吗? Xcode 使用此密钥创建应用程序是否存在错误?
原来只是 Apple Review 忘记了如何在他们的设备上安装应用程序。给他们发消息,让他们再试一次解决问题。