使用Xcode上传到应用商店时出现错误:
itunes store operation failed the app references non-public selectors in payload: setResult; taskWithResult
关于iOS应用程序-非公共API的使用-应用程序引用了非公共选择器:cancelButtonClicked,setResult:
我发现:PatienPortal_ios_build_new jenkins $ grep -Rnis’etResult:’*
Binary file build/Physician Portal.xcarchive/Products/Applications/Physician Portal.app/Physician Portal matches Binary file node_modules/cordova-plugin-facebook/src/ios/Bolts.framework/Bolts matches node_modules/cordova-plugin-facebook/src/ios/Bolts.framework/Headers/BFTaskCompletionSource.h:37:- (void)setResult:(id)result; node_modules/cordova-plugin-facebook/src/ios/Bolts.framework/Headers/BFTaskCompletionSource.h:63:- (BOOL)trySetResult:(id)result; Binary file node_modules/cordova-plugin-facebook/src/ios/FBSDKCoreKit.framework/FBSDKCoreKit matches Binary file platforms/ios/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/Physician Portal/IntermediateBuildFilesPath/Physician Portal.build/Release-iphoneos/Physician Portal.build/Objects-normal/arm64/Physician Portal matches Binary file platforms/ios/DerivedData/Build/Intermediates.noindex/ArchiveIntermediates/Physician Portal/IntermediateBuildFilesPath/Physician Portal.build/Release-iphoneos/Physician Portal.build/Objects-normal/armv7/Physician Portal matches Binary file platforms/ios/Physician Portal/Plugins/cordova-plugin-facebook/FBSDKCoreKit.framework/FBSDKCoreKit matches Binary file plugins/cordova-plugin-facebook/src/ios/Bolts.framework/Bolts matches plugins/cordova-plugin-facebook/src/ios/Bolts.framework/Headers/BFTaskCompletionSource.h:37:- (void)setResult:(id)result; plugins/cordova-plugin-facebook/src/ios/Bolts.framework/Headers/BFTaskCompletionSource.h:63:- (BOOL)trySetResult:(id)result; Binary file plugins/cordova-plugin-facebook/src/ios/FBSDKCoreKit.framework/FBSDKCoreKit matches
这意味着该问题归因于Facebook插件!
此外,我将捆绑包ID添加到.plist参考 https://developers.facebook.com:
<key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>fbxxxxxx</string> </array> </dict> </array> <key>FacebookAppID</key> <string>xxxxx</string> <key>FacebookDisplayName</key> <string>PC360-PatientPortal</string>
不过,我也遇到同样的错误!所以,请帮帮我,我很困,下一步该怎么办?
注意:我正在使用Xcode 9,并使用Jenkins构建Cordova项目。
您必须联系解决中心的Apple,并告诉他们您没有使用任何私有API,然后解释对setResult和taskWithResult的调用是对FacebookBolts SDK的调用,而不是对私有API的调用。
您可以尝试向他们发送在Facebook SDK网站上打开的错误报告的链接。
通常可以,但是如果不起作用,则必须删除添加了该SDK的插件,然后尝试使用另一个不使用Bolts的插件。
人们抱怨应用程序因此而被拒绝的另一个问题