iOS Xcode11上传包时遇到的问题汇总

直接进入主题:
1、ERROR ITMS-90183
问题内容:

ERROR ITMS-90183: "Invalid Bundle OS Type Code. 
The value of 'Bundle OS Type Code' [CFBundlePackageType]
in your application bundle's Info.plist file must be one of [APPL]."

截图如下:


Snip20200207_5.png

此问题解决办法在工程中的info.plist文件中增加一个string类型字段,字段为CFBundlePackageType,值为APPL

CFBundlePackageType
APPL
Snip20200207_7.png

2、ERROR ITMS-90035
问题内容:

ERROR ITMS-90035: "Invalid Signature. A sealed resource is missing or invalid. 
The file at path [******.app/*****] is not properly signed. 
Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate. 
Verify that the code signing settings in Xcode are correct at the target level (which override any values at the project level). 
Additionally, make sure the bundle you are uploading was built using a Release target in Xcode, not a Simulator target. 
If you are certain your code signing settings are correct, choose "Clean All" in Xcode, delete the "build" directory in the Finder, and rebuild your release target. 
For more information, please consult https://developer.apple.com/library/ios/documentation/Security/Conceptual/CodeSigningGuide/Introduction/Introduction.html"

问题截图:


Snip20200207_9.png

问题解决:

Xcode -> File -> Workspace Settings -> Build System ->legacy build system
或者:
Xcode -> File -> Project Settings -> Build System ->legacy build system

截图如下:


Snip20200207_11.png

3、ERROR ITMS-90535
问题内容:

ERROR ITMS-90535: "Unexpected CFBundleExecutable Key.
The bundle at 'Payload/******.app/*****.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 third-party framework, consider contacting the developer of the framework for an update to address this issue."

问题截图:


Snip20200207_13.png

问题解决:
方式一

1、删除问题bundle中的info.plist中CFBundleExecutable这个字段
2、将问题bundle中的info.plist文件中的CFBundlePackageType字段值改为BNDL

方式二

如果没有用到bundle中的info.plist,就直接整个info.plist文件都删除即可

PS:我采用的方式二,因为没用到,并且第三方的bundle文件中都不会有info.plist文件

以上~~~

你可能感兴趣的:(iOS Xcode11上传包时遇到的问题汇总)