Imagine that I've got a piece of custom audio hardware that I'd like to be able to control in a multitude of ways via a tablet/touchscreen GUI. In particular, my goals are to have the tablet's control GUI be "pretty" (i.e. nicely animated and modern looking, as one would expect from an iPad), have it be cross-platform (i.e. the same codebase can be run on iOS, Android, and/or on a desktop computer and behave roughly the same on each), and also make the app's run-time behavior as generic/flexible as possible.
Since the server hardware can do so many different things, I think it would be useful if I could avoid having to hard-code any particular GUI functionality into the tablet's app, except for the ability to discover and connect to the server hardware, and then download the appropriate QML file(s) and JavaScript and execute it, and have the QML and JavaScript execute to set up an appropriately customized GUI for that tablet on that server. That way the user isn't constantly forced to upgrade the client-app on each of his tablets every time new features or behaviors are added to the server (and I'm not forced to constantly push updates to both the iOS and Android app stores).
That approach seems like it would technically work, except I'm worried that Apple wouldn't allow such an app onto the Mac app store, due to their rule forbidding downloaded interpreted code. I'd hate to got to a lot of trouble designing and implementing this approach, only to find out at the end that I have to start over since Apple simply won't allow it.
So my questions are:
Is this approach technically possible with Qt Quick and QML? (AFAICT it is, but it never hurts to double check)
Is a program that does this likely to get rejected by Apple for the App Store? (AFAICT it will, but perhaps there is some loophole I can exploit, or perhaps I misunderstand the rule somehow)
If this approach would get rejected by the App Store, is there an alternative/recommended design I could use instead that would pass muster, while still preserving the qualities I'd like to retain (i.e. full/turing-complete server-side specification of the GUI behavior and appearance at run-time, without forcing the user to upgrade the app every time)? (I suppose one approach would be to implement my app as a JavaScript-enabled web page instead, and have the user point his tablet's web browser at a web-server on my server hardware to "run" it, but I'm not confident that that would give me enough control over the user-experience to be very satisfactory)