App store上架被拒,app store审核拒绝的原因
1、Guideline 5.1.1 Legal Privacy Data Collection and StorageWe noticed that your app requests the user’s consent to access the local network information but does not clarify the use of the local network information in the applicable purpose string.To help users understand why your app is requesting access to their personal data, all permission request alerts in your app should specify how your app will use the requested feature.Next StepsPlease revise the relevant purpose string in your app’s Info.plist file to specify why the app is requesting access to the local network information. Make sure the purpose string includes an example of how the users data will be used.You can modify your apps Info.plist file using the property list editor in Xcode.ResourcesFor additional information and instructions on requesting permission, please review the Requesting Permission section of the iOS Human Interface Guidelines and the Information Property List Key Reference. You may also want to review the Technical QA QA1937: Resolving the PrivacySensitive Data App Rejection page for details on how to provide a usage description for permission request alerts.Please see attached screenshot for details.以下是iOS14之前遇到的被拒记录1.解决方案iPhoneSimulator 修改为 iPhoneOS1.ERROR ITMS90542: Invalid CFBundleSupportedPlatforms value. The keyCFBundleSupportedPlatforms in the Info.plist file in bundle Payload/#XF IE5 RRS .app/HTMIBlue.bundle contains an invalid value [iPhoneSimulator]. Consider removing theCFBundleSupportedPlatforms key from the Info.plist. If this bundle is part of a thirdpartyframework, consider contacting the developer of the framework for an update to address thisissue.2.解决方案keyNSHealthShareUsageDescription/keystringsome string value stating the reason/string2.ERROR ITMS90683: Missing Purpose String in Info.plist. Your apps code references one or more APIs that access sensitive user data. The apps Info.plist file should contain a NSHealthShareUsageDescription key with a userfacing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App store that access user data are required to include a purpose string. If youre using external libraries or SDKs, they may reference APls that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesnt contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_ app/protecting _the. _user. _s_ privacy).3.解决方案项目应导入App store Icon图标3.ERROR ITMS90704: Missing App lcon. An app icon measuring 1024 by 1024 pixels in PNG format must be included in the Asset Catalog of apps built for iOS, iPadOS, or watchOS. Without this icon, apps cannot be submitted for review. For details, see https://developer.apple.com/ios/ humaninterfaceguidelines/iconsandimages/appicon/.4.解决方案info.plist 删除NSExtensionActivationSupportTex字段4.ERROR ITMS90361: Invalid lnfo.plist value type. The value type for the keyNSExtensionActivationSupportTex in bundle #X ???? ??B1?3?? 8R .app/Pluglns/#X ??? ??[1?X3?? lB???? .appex is not a boolean.5.解决方案删除 info.plist 文件中的 Executable file 配置5.ERROR ITMS90535: Unexpected CFBundleExecutable Key. The bundle at Payload/教育部政务服务.app/HTMIBlue.bundle does not contain a bundle executable. If this bundle intentionally does not contain an executable, consider removing the CFBundleExecutable key from its Info.plist and using a CFBundlePackageType of BNDL. If this bundle is part of a thirdparty framework, consider contacting the developer of the framework for an update to address this issue.6.解决方案扩展插件版本号不匹配6.App store Connect Operation Warning WARNING ITMS90473: CFBundleVersion Mismatch. The CFBundleVersion value 100 of extension 教育部政务服务.app/PlugIns/教育部政务服务.appex does not match the CFBundleVersion value 1 of its containing iOS application #J ? 5?ES BRS .app7.解决方案删除 info.plist 文件中的 Executable file 配置7.RROR ITMS90171: Invalid Bundle Structure The binary file #X?8?ES RR5.app/Frameworks/HTMIScreenShotModule.framework/HTMlScreenShotModule is not permitted. Your app cant contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at https://developer.apple.com/go/?id=bundlestructure for information on the iOS app bundle structure.8.解决方案因项目不支持ipad,需在项目中取消 ipad 支持8.ERROR ITMS90023: Missing required icon file. The bundle does not contain an app icon for iPad of exactly 76x76 pixels, in .png format for iOS versions = 7.0. To support older operating systems, the icon may be required in the bundle outside of an asset catalog. Make sure the Info.plist file includes appropriate entries referencing the file. See https://developer.apple.com/documentation/bundleresources/information_ property_ list/user_ interface9.解决方案info.plist 增加keyNSHealthUpdateUsageDescription/keystringsome string value stating the reason/string9.ERROR ITMS90683: Missing Purpose String in Info.plist. Your apps code references one or mor APIs that access sensitive user data. The apps Info.plist file should contain a NSHealthUpdateUsageDescription key with a userfacing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Sto that access user data are required to include a purpose string. If youre using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APls, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesnt contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core _app/protecting_ the_ _user. _s_ privacy).10. 解决方案删除敏感方法_actionButtonTapped_applicationIconImageForBundleIdentifier:format:scale:allInstalledApplicationscurrentSessionopenApplicationWithBundleID:10.ITMS90338:Nonpublic API usage The app references nonpublic selectors in 教育部政务服务:_actionButtonTapped:,_applicationIconImageForBundleIdentifier:format:scale:, allInstalledApplications, currentSession, openApplicationWithBundleID:. If method names in your source code match the private apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed. For further information, visit the Technical Support Information at http://developer.apple.com/support/technical/11.解决方案问题主要是说你的App中获取用户权限时,info.plist中通讯录权限【NSContactsUsageDescription】没有具体的使用说明,请补充完整 。