Non-public API usage
Asked Answered
H

9

38

I can't upload an app to iTunes Connect.

Xcode uploader says that I'm using allocBatch:withEntity:count:, allocWithEntity:, IndexForKey:, fastIndexForKnownKey:

I'm not using this methods, and I don't know where they could be. A week ago same code was uploading successfully. What can be the cause of such behavior?

enter image description here

UPDATE

Submitting with older Xcode is not working anymore, this error reveals on binary processing.

Hasseman answered 14/10, 2014 at 20:23 Comment(4)
I'm having the exact same problem. My App is in Swift with Deployment Target iOS 7.0. I'm using Xcode 6.1 latest beta.Chintz
Can you share an image of the warning?Euratom
I added a screenshot aboveChintz
@Chintz I had the same problem.Gabrielagabriele
W
12

I had this exact issue using Yosemite with Xcode 6.1 and using Objective C. I also got a warning on validation saying you can't upload an app created with a beta version of Xcode, which 6.1 is at the time of writing this.

I trashed Xcode 6.1 by dragging it to the trash form Finder then downloaded Xcode 6.0.1 GM from the App Store. I tried twice to install 6.0.1 over the top of 6.1 but it didn't work, hence the trashing of 6.1

Having cleaned and recompiled my app with Xcode 6.0.1 it validated and submitted to the app store with no problem. I hope this helps.

Weaken answered 15/10, 2014 at 11:40 Comment(2)
As I have moved on to iOS 8.1 on my iPhone I can no longer use XCode 6.0 to run Apps in debug mode. Switching back to 6.0 is not a solution. Please have a look at my Answer to "iOS 7 vs. iOS 8 Deployment Target".Entrance
This currently is the only working solution for anyone who has to support older versions of iOS prior to 8.Fibriform
S
3

I fixed it by changing the deployment target from iOS4.3 to iOS5.0 all fixed using Xcode 6.1

Strangury answered 24/10, 2014 at 5:17 Comment(2)
this worked for me with Yosemite and Xcode 6.1. Thanks!Reddin
worked for me as well. I had to update this in project settings. Target setting was already 6.1 iOS Deployment TargetRaynell
T
3

I encountered the exact same error when using Xcode 6.1 (and its bundled Application Loader) on Mac OS 10.9.5. Clicking "Back" within the Application Loader and re-submitting the same binary worked. In other words, trying a second time succeeded. My app was built with iOS SDK 8.1.

Trolly answered 24/10, 2014 at 16:0 Comment(1)
Indeed. Trying several times with the same binary eventually worked for me. Makes me think all the other answers are just coincidences. :) Clearly it's a random bug on Apple's end.Aryl
D
2

You don't have to delete XCode 6.1. It would become handy in couple days. Just download XCode 6.0.1, copy it somewhere, and use sudo xcode-select --switch /Applications/Xcode601.app/Contents/Developer/. Then start it, and build your great app with it.

Dihedral answered 20/10, 2014 at 22:29 Comment(0)
E
2

The API differs between iOS 7 and iOS 8. I got my App validated by switching to Deployment Target "8.0" - built with XCode 6.1. It might not be the solution to all you guys but you could give it a try.

Might have happened to me because I recently started using UIAlertController -> seems to be an iOS-8-Feature. On iOS 7 this would be UIAlertView. So if you use some nifty new features they might not have been available with previous iOS versions - thus non-public API.

Entrance answered 21/10, 2014 at 23:19 Comment(1)
Moving the deployment target to 8.0 drops support for previous iOS versions. So not useful for anybody who wants to support iOS 7Fibriform
S
2

Increasing the version number of my app did the trick for me.

EDIT: Just saw a comment in my bug report to apple

enter image description here

So most likely the version number had nothing to do :D

Swick answered 23/10, 2014 at 17:58 Comment(0)
P
0

I got the same problem in Xcode 6.0.1 if I use the archive created by Xcode 6.1. It works if I recreate the archive by Xcode 6.0.1. That means the non-public API is added by Apple in Xcode 6.1.

Planar answered 22/10, 2014 at 4:40 Comment(0)
L
0

I tried to delete all DerivedData.

/Users/{user_home_folder}/Library/Developer/Xcode/DerivedData

and I validated successfully.

http://qiita.com/PGMY/items/831618ad416780e0dc7c

Laval answered 27/10, 2014 at 3:28 Comment(0)
I
0

i had meet same issue when i cancelled archiving to app store. Apple send me email about this subject. And than i recreate archiving and send to App Store. Everythink is ok for a now.

Icky answered 16/2, 2016 at 9:5 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.