Why iTunes Connect reject my app? - ios

I got the following error message from iTunes Connect.
Performance - 2.3.10
We noticed that your app or its metadata includes irrelevant third-party platform information.
Specifically, your app icon still contains imagery of an Android device.
Referencing third-party platforms in your app or its metadata is not permitted on the App Store unless there is specific interactive functionality.
We've attached screenshot(s) for your reference.
Next Steps
Please remove all instances of this information from your app and its metadata, including the app description, What's New info, previews, and screenshots.
Since your iTunes Connect status is Rejected, a new binary will be required. Make the desired metadata changes when you upload the new binary.
NOTE: Please be sure to make any metadata changes to all app localizations by selecting each specific localization and making appropriate changes.
But I didn't modify anything since previous version.
So, I have no idea what is wrong of my app. I can't believe icons have problems.
Please let me know how can I fix the problem?

Apple keeps improving review rules, so its not necessary that if review passed last time it should also pass this time.
It seems there are 2 problems.
1)Problem with app icon
2)Reference to third party library.

Related

NSUserTrackingDescription failure

I have a build that is stuck in prepare for submission, it keeps telling me the following:
Your app contains NSUserTrackingUsageDescription, indicating that you will request permission to track users. To publish this information on your app's product page, you must indicate which data types are tracking users. If this is incorrect, update your app binary and upload a new build to App Store Connect.
No matter what I say or do I can never get beyond this. I have uploaded binary after binary and even answering the questions nothing solves the problem.
Suggestions? I can't seem to find a way to delete this "prepare for submission" without deleting the app that is currently on the app store.
Step 1:
Under the "Usage Data" Section. Select "Advertising Data".
Step 2:
Then enable the common options.
Third-Party Advertising
Analytics
No, advertising data collected from this app is not linked to the user’s identity
Yes, we use advertising data for tracking purposes
That's All. Be transparent, If you are really tracking the users then select the related options.
It's counter-intuitive, but you are publishing App Privacy for a version of the app that is already on the App Store, not for the update you are preparing to submit.
So if the app version that's already published has NSUserTrackingUsageDescription, you need to select "Yes, used for tracking purposes" for now.
After you upload a new binary with NSUserTrackingUsageDescription removed, and it passes review ("Ready for Sale") you can change App Privacy and select "No, not used for tracking purposes"
My app wasn't live and in the App Privacy section I ran into the same error as the op. My app uses Core Location. To address this issue go to App Store Connect > App Privacy:
1- under Data Types > Location > I selected Precise Location > Next > Save
2-under the gray Location/Precise Location Section (pictured below) press the blue Edit Button and tick these 3 selections:
• Used for App Functionality
• Linked to the user's identity
• Used for tracking purposes this is the last option, you must tick Yes, we use precise location data for tracking purposes. This will make the error go away
Now the Location section it looks likes this and the error went away
Apple has made it complicated as ever, thanks again Apple.
As mentioned above we could not change the Privacy data types in the Appstore connect because the current live version does use that permission.
We did upload a new binary with NSUserTrackingUsageDescription removed, and just got rejected. they ask us to add that permission or modify the privacy section, which we can not do. We replied explaining the situation, I'll modify this comment according to their reply.
Update: At first Apple review team insisted we should either change the privacy settings (can't) or submit a new app version. I found this help page:
https://help.apple.com/app-store-connect/#/dev1b4647c5b
Which under "Adding and removing data types" Mentions this part:
"If your app is currently available on the App Store, make sure your responses reflect the data collected only from that app version."
I quoted it to Apple review team, and now finally update was approved!
We solved this issue.
We choose one option in App Privacy and select
Yes, we use product interaction data for tracking purposes
Question was:
Do you or your third-party partners use product interaction data for
tracking purposes?
Btw, we added nsusertrackingdescription property and ask user for permissions since iOS 14.
Although we tried to upload build without this flag, but no success.

My app got rejected on the App Store but I don't understand why

I have submitted my app on the App Store and result I got this message saying:
From Apple
4. 1 DESIGN: COPYCATS
Design - 4.1
Your app or its metadata appears to contain misleading content.
Specifically, your app includes content that resembles without the necessary authorization.
Please see attached screenshots for details.
Next Steps
Please make the necessary changes to your app so that it does not infringe upon the rights of a third party:
Remove all third-party marks from your app icon, screenshots, and previews.
Can someone explain to me how can I fix this issue or what's going on.
Looks like you need an official document from the person concerned that you are creating the app on his behave. Ideally you present the app reviewer with an official letter (PDF) from the person, where he specifically mentions your name, app name and maybe also the purpose of the app. This should usually be enough for the reviewer.

iOS app built from xcode but not showing build in iTunes Connect

I have built an iOS app and trying to update the version and upload it to AppStore. Its getting uploaded from Xcode and am getting the success message. But i could not find the build in itunesconnect. For a while its shown in activity tab with processing status but while refreshing it gets disappeared.
Sometime, its will takes time to appeared on ITC.
Still it not seen on ITC, then please upload one more time using Application Loader but change the build version.
Lets try it
Make sure your Info.plist has all the keys that you're trying to access.
I had the same issue on Friday. Submission was successful, but then I was waiting for hours, tried Application Loader, changing version number, all with no luck.
A day later got email from Apple:
Dear developer,
We have discovered one or more issues with your recent delivery for "MyAppName". To process your delivery, the following issues must be corrected:
This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSAppleMusicUsageDescription key with a string value explaining to the user how the app uses this data.
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,
The App Store team
In case (like me) you're using Appcelerator, there was a bug in 5.5.1 resolved in 6.0.0. Find out more about it here
‌I had exactly the same problem. On the 3rd rebuild after a version number change while it was uploading I watched the iTunes Connect ->Activity->All Builds page. It appeared there 'processing' for 2 minutes. It then disappeared. However I then got an email from Apple telling me that it had been rejected because it uses the camera and photo library. iOS 10 has stricter control of privacy issues. It only requires a string against the correct key in the .plist to resolve - the keys are of the type 'NSPhotoLibraryUseageDescription' (or 'Privacy - Photo Library Useage Description' depending on how the plist is viewed).
It is extremely frustrating that the first two uploads did not result in any message from Apple - why cant they keep the build on the Activity page with some info about the reason it failed? Why do they not send an email every time they reject a build? I have wasted an entire day on this!
If you are suffering from this issue, have a think about what you are accessing and see if there is an appropriate privacy useage description string you can add to your plist. I see from various forums that some frameworks ask for a whole raft of permissions that you may not think your app needs - try adding every privacy useage description temporarily to see if that resolves the problem
Actually my app had watch extensions which was not removed properly. So once i removed them from "Build Phases" -> "Embed Watch Content", it got solved.

How to detect the installation package is not modified?

How to detect the installation package is not modified.
For example, someone changed my app,how could i know the app had something different ,and shut down the pirate app, or alert for user:The package is damaged, please download it again.
If you're distributing your app via AppStore, then there will be no chance of your app gets pirated or feeling seek. AppStore is providing highly secure ways to distribute your app. So there's no chance that your app was pirated. However, you can add some checksum which can be possible to check on star-up. If its changed then the binary was changed.

Does ios app Metadata rejected means binary is good

I recently got a phone call from Apple saying they would reject our app since there's a problem with the metadata. I asked whether there's a problem with the app itself and she said she doesn't know because she's not part of the review team. She said it should be ok.
So I changed my metadata and resubmit the app, and the status now is in review. According to itunesconnect programmer guide, they will reuse the binary. Does that mean the binary is good? Is it possible that they will take a look at the app again and reject me for some reasons other than they specified in the resolution centre?
I know this is a question that probably only apple can answer, but this is our first app so i don't really know how it works. I asked apple but they didn't tell me anything.
You do not need to upload new binary. They will review it again and approve it (or reject for other reason). It took only few hours in my case. But you can't be sure the binary has already been checked. Maybe they only did the metadata so far and will check the binary after your metadata correction. Anyway, no need to upload anything now.
Usually reviewers stop their review process as soon as they find an issue. This means that the metadata rejection can be the first of a longer list (hopefully no!) or that they reviewed your whole app and found the only issue at metadata level only: in such case fixing your metadata should be enough.
Recently I saw one of my apps rejected due to a mistake in adding an In App Purchase (basically the app was referring to an IAP still not in iTunes). After fixing it (no binary change, just adding the "in app") they found an issue in the app this time and then the binary was submitted. It would have been quite easier for me to know of the two issues together and fix them once, instead the triple-trip delayed my final app submission by 10 extra days (consider 5 days between two consecutive reviews)
From my experience, it doesn't always mean the binary is good. They may have very well reached the point of checking metadata and found an issue without testing the binary itself. Expect the Unexpected with Apple.
This is due to metadata information, no need to upload new binary. They will review it again and approve it (or reject for other reason). In my case, I was using location in background mode but in my Application description did not include the required "battery use" disclaimer, I changed the meta data (Application description only) according to apple message. It took only few hours (hardly 4 hours) and application was live. I was socked :) because some people was saying, It will take upto 7 days(as apple normal process).
Following was reason for app reject in my case(Below was the mail, I received from Apple)
From Apple
   * 2.16 - Multitasking Apps may only use background services for their
intended purposes: VoIP, audio playback, location, task completion,
local notifications, etc.
2.16 Details
Your app uses the Location Background mode but does not include the
required "battery use" disclaimer in your Application Description.
Next Steps
Please add the following disclaimer to your Application Description:
"Continued use of GPS running in the background can dramatically
decrease battery life."
Please see the app store screenshot for confirm.
In my experience, they reject the app as soon as they find a reason and they won't review it any further until next submission. So if the metadata is rejected it does not mean that they have approved the binary.

Resources