最近iOS 審核被拒,說是使用了私有API:com.apple.springboard.lockcomplete
具體內容如下:
發件人 Apple 2. 5 Performance: Software Requirements Guideline 2.5.1 - Performance - Software Requirements Your app uses or references the following non-public APIs: com.apple.springboard.lockcomplete The use of non-public APIs is not permitted on the App Store because it can lead to a poor user experience should these APIs change. Continuing to use or conceal non-public APIs in future submissions of this app may result in the termination of your Apple Developer account, as well as removal of all associated apps from the App Store. Next Steps If you are using third-party libraries, please update to the most recent version of those libraries. If you do not have access to the libraries' source, you may be able to search the compiled binary using the "strings" or "otool" command line tools. The "strings" tool can output a list of the methods that the library calls and "otool -ov" will output the Objective-C class structures and their defined methods. These tools can help you narrow down where the problematic code resides. You could also use the "nm" tool to verify if any third-party libraries are calling these APIs. Resources For information on the "nm" tool, please review the "nm tool" Xcode manual page. If there are no alternatives for providing the functionality your app requires, you can file an enhancement request.
解決方法:
如果不確定是哪個第三方使用了
1. cd 到項目根目錄 2. grep -R 'com.apple.springboard.lockcomplete' * 他會檢索出來,哪使用了
結果:
macdeMacBook-Pro:~ mac$ cd /Users/mac/Desktop/XingChangTongTrunk macdeMacBook-Pro:XingChangTongTrunk mac$ grep -R 'com.apple.springboard.lockcomplete' * Binary file XingChangTong/XingChangTong/ThirdParty/huajiao_ios_sdk_v4.2.4/QHIVideoSDK.framework/QHIVideoSDK matches
最后發現是花椒的SDK:QHIVideoSDK,調用了系統的私有API,如果項目中沒有使用到,建議刪除試試
