Mahendra Y
Mahendra Y

Reputation: 1949

iOS App Rejected - Guideline 2.3.1 - Performance

I just recently submitted my app to the app store. But app store has rejected my app and said

We discovered that your app contains obfuscated code, selector mangling, or features meant to subvert the App Review process by changing this app's concept after approval to the App Store. The next submission of this app may require a longer review time, and this app will not be eligible for an expedited review until this issue is resolved.

We have not added any new third party library from last submission. We are using react-native and firebase in our app from last 1.5 year, is this may be a reason to reject app.

Upvotes: 13

Views: 6707

Answers (2)

smartwolf
smartwolf

Reputation: 310

Most definitely some of the third party libraries are using obfuscation.

  1. Ask the App Store Review team to provide more details which code of the app is obfuscated. They will provide something like this: "Specific methods of note with name scrambling include (but are not necessarily limited to) YVzJpCJy, lUwqjWK, djLkQS, setLUwqjWK, and QsQwZw"

  2. Go to your submitted Xcode archive, open in Finder App.xcarchive/Products/Applications/App.app/Frameworks.

  3. Use otool -ov <path_to_framework_binary_inside_framework_bundle> in terminal. It will print names and methods from the binary. Use cmd+f to search for your symbols provided by the Apple Review Team.

  4. Do point #3 for all frameworks to find who is using an obfuscation. To make it more efficient it makes sense to start with those who potentially could use obfuscation for security, for example, payment service providers.

  5. Check the updated version of a library which removed obfuscation - they can write this in release notes, or contact support to get further instructions on how to use their library in this case.

Upvotes: 0

Mahendra
Mahendra

Reputation: 8924

Apple strictly follow their AppStore Review Guidelines and they do want to compromise in any case. There is very-very-very rare chances that Apple compromise about this.

From that Guideline,

Apple want to say that The app function/feature/behaviour should be same in pre and post review process. The app should not change its function/feature post review process.

Apple feel that Your app function/feature/behaviour may get changed after approval of the app. And this is the reason Apple asked for more time for review.

It can be possible by just setting a Boolean variable based on the api response OR setting the timer in app, etc. If you are doing so then Your app will never get approved.

What you can do now?

You can always reach to app reviewer guy and argue with them about your app and they will explain in detail about what is wrong with the app.

So you can fix and resubmit the app again.

Upvotes: 5

Related Questions