0

After uploading my application to the Apple Store, I received this email from Apple:

Guideline 2.5.2 - Performance - Software Requirements

During review, your app installed or launched executable code, which is not permitted on the App Store. Specifically, your app uses the itms-services URL scheme to install an app. Important Information As a result of violating this guideline, your app’s review has been delayed. Future submissions of this app, and other apps associated with your Apple Developer account, will also experience a delayed review. Deliberate disregard of the App Store Review Guidelines and attempts to deceive users or undermine the review process are unacceptable and is a direct violation Section 3.2(f) of the Apple Developer Program License Agreement. Continuing to violate the Terms & Conditions of the Apple Developer Program will result in the termination of your account, as well as any related or linked accounts, and the removal of all your associated apps from the App Store. We want to provide a safe experience for users to get apps and a fair environment for all developers to be successful. If you believe we have misunderstood or misinterpreted the intent of your app, you may submit an appeal for consideration or provide additional clarification by responding directly to this message in Resolution Center in iTunes Connect.

I have read this existing question. And then I removed the usage of JSPatch.

However, I received the same email after upload again.

I then checked my project: there are no method like dlopen() or dlsym() used?

So, what is causing this issue? Or how can I found out what causes it?

Is there any difference from Xamarin.iOS and native iOS?

GhostCat
  • 137,827
  • 25
  • 176
  • 248
Akai Rika
  • 59
  • 6
  • 1
    The message says you are using `itms-services` to install an app - search through your code for this string and remove that functionality – Paulw11 Sep 12 '18 at 08:37
  • 1
    Welcome to Stack Overflow! Other users marked your question for low quality and need for improvement. I re-worded/formatted your input to make it easier to read/understand. Please review my changes to ensure they reflect your intentions. Feel free to drop me a comment in case you have further questions or feedback for me. – GhostCat Sep 12 '18 at 09:02
  • If you use native way to write native Apps using Objective-C / Swift, you probably won't encounter such problem. `Xamarin` is not a native way to write apps, and it might be banned by Apple at any time in future. Try switching to native ways to write apps. – Raptor Sep 13 '18 at 02:44
  • If you use some third-party libraries, these private methods may be called in somexxx.a files. You can use the command line nm -u xxx.a >> xxx.tx t to print the information of the library and check that whether it contains the methods mentioned above . – Lucas Zhang Sep 13 '18 at 03:13
  • @LucasZ Hey, you are right . It's caused by a VoIP library. I used the old version.Now I have updated it. Thanks! – Akai Rika Sep 13 '18 at 04:55

1 Answers1

1

If you use some third-party libraries, these private methods may be called in somexxx.a files. You can use the command line nm -u xxx.a >> xxx.txt to print the information of the library and check that whether it contains the methods mentioned above .

Lucas Zhang
  • 18,630
  • 3
  • 12
  • 22