My first app with React Native to the Apple App Store has been rejected because they say, "... it contains hidden features, hidden features. Specifically, your app includes support for Hot Update functionality that allows your app to download a new main.jsbundle anytime. It would be appropriate to remove this functionality from your app."
It's a fairly simple app with a search to Firebase Realtime database for jobs.
I've spent hours scouring the net for answers, have about 4 Case numbers with Apple requesting specific information as to exactly where it sees the problem - still waiting.
Has anyone encountered and solved this problem? Detailed message from Apple below.
Guideline 2.3.1 - Performance
We discovered that your app contains hidden features.
Specifically, your app includes support for Hot Update functionality
that allows your app to download a new main.jsbundle anytime. It would
be appropriate to remove this functionality from your app.
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.
Next Steps
- Review the Performance section of the App Store Review Guidelines.
- Ensure your app is compliant with all sections of the App Store Review Guidelines and the Terms & Conditions of the Apple Developer
Program.
- Once your app is fully compliant, resubmit your app for review.
Submitting apps designed to mislead or harm customers or evade the
review process may result in the termination of your Apple Developer
Program account. Review the Terms & Conditions of the Apple Developer
Program to learn more about our policies regarding termination.
Guideline 2.5.2 - Performance - Software Requirements
Your app, extension, or linked framework appears to contain code
designed explicitly with the capability to change your app’s behavior
or functionality after App Review approval, which is not in compliance
with App Store Review Guideline 2.5.2 and section 3.3.2 of the Apple
Developer Program License Agreement.
This code, combined with a remote resource, can facilitate significant
changes to your app’s behavior compared to when it was initially
reviewed for the App Store. While you may not be using this
functionality currently, it has the potential to load private
frameworks, private methods, and enable future feature changes. This
includes any code which passes arbitrary parameters to dynamic methods
such as dlopen(), dlsym(), respondsToSelector:, performSelector:,
method_exchangeImplementations(), and running remote scripts in order
to change app behavior and/or call SPI, based on the contents of the
downloaded script. Even if the remote resource is not intentionally
malicious, it could easily be hijacked via a Man In The Middle (MiTM)
attack, which can pose a serious security vulnerability to users of
your app.
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.
Next Steps
- Review the Software Requirements section of the App Store Review Guidelines.
- Ensure your app is compliant with all sections of the App Store Review Guidelines and the Terms & Conditions of the Apple Developer
Program.
- Once your app is fully compliant, resubmit your app for review.
Submitting apps designed to mislead or harm customers or evade the
review process may result in the termination of your Apple Developer
Program account. Review the Terms & Conditions of the Apple Developer
Program to learn more about our policies regarding termination.