1

After I have uploaded app to itunes i get mail saying that my app using non public api methods- cancelButtonClicked, setResult:

But cancelButtonClicked is used as IBAction method for various buttons and searchBar. Do I need to rename it? Also, this is very common please suggest..

For setResult: Method I have not used this method any where also, I haven't found this method used in my complete workspace.

I have used multiple third party APIs some of them are below:

  • AFNetworking
  • Google Maps SDK
  • Google Places SDK
  • Google Analytics
  • RSK Image Cropper
  • Facebook SDK
  • Twitter SDK
  • ASIHTTP
  • MBProgressHud
  • Reachability
  • SDWebImageCache

Please suggest what I can do.

Also, I am using Xcode 6.3.2 with deployment target iOS 8.0. In some SO's answers it was suggested to use Xcode 6.0.1 but I can't use it as Google Maps SDK POD suggested to use Xcode6.3 or later.

Any help appreciated.

Avtar Guleria
  • 2,126
  • 3
  • 21
  • 33
  • Were you ever able to figure this out? How is cancelButtonClicked a private api call? – Mike Sprague May 04 '16 at 20:09
  • There was a method I have defined in one of my protocol named as cancelButtonClicked. This is causing issue with apple. Once I have renamed it issue is resolved. – Avtar Guleria May 05 '16 at 11:26
  • @AvtarGuleria and what about setResult: was that also have been used by you? did you rename setResult also? – Ashish Karpe Jan 05 '18 at 07:39

1 Answers1

3

You should make a search in your project directory for the method's call that you mentioned. This is a command line script to search in the whole project. This will return where these methods are called, and then you should modify the name of the method or update the library/framework containing the call.

grep -Rnis 'cancelButtonClicked' *
grep -Rnis 'setResult:' *
Tekaya Marouene
  • 620
  • 3
  • 14
  • I have used cancelButtonClicked method as an IBAction in multiple view controllers. I think that is quite obvious to create IBAction for cancel button with same name, So it should not be the case – Avtar Guleria Nov 18 '15 at 11:15
  • @TekayaMarouene thanks to your grep command recomendation I found the problematic framework. After trying unsuccessfully with "otool" and "strings" commands, "grep -R" gave me the solution! great answer! – 6rod9 Dec 03 '15 at 14:46
  • PhysicianPortal_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; – Ashish Karpe Dec 21 '17 at 13:54
  • 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 – Ashish Karpe Dec 21 '17 at 13:55
  • 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 – Ashish Karpe Dec 21 '17 at 13:56
  • Is it due to the Facebook plugin which our Developers have used? now, what to do next? – Ashish Karpe Jan 05 '18 at 07:41