1

I have an cross-platform app that runs Lua scripts, and I am interested in publishing it on the iOS App Store. I know that Apple does not allow apps to download and run code from the internet on iOS, but what about a simple Lua configuration file, like this:

obj.title = "Hello world"
obj.author = "Somebody"
obj.version = "1.0.1"

Or if assignments count as code, what about a simple JSON-like table, like:

{
    title = "Hello world",
    author = "Somebody",
    version = "1.0.1"
}

Would either of these violate the guidelines?

2

This is fine. Apple doesn't approve of apps which download executable Objective-C. Other languages seem to be fine, including but not limited to JavaScript. A configuration file, regardless of the language, is perfectly within the guidelines.

The specific wording of the guideline indicates that content (used figuratively to mean data, executables, scripts, etc) that is provided by the app developer, modifying the functionality of the app further than is already built in to the app at review time, is prohibited. This is to prevent apps changing completely once they've been reviewed and accepted. Your app which runs Lua scripts presumably can run Lua built in, rather than executing the scripts externally and receiving the result. This means that all the functionality is within the app, thus acceptable.

  • Great! Do you know if this rule also applies to scripts read from iTunes file sharing? As in if the user downloads the config file on a computer, and uses iTunes to copy the file to the app? – Andrew Sun Sep 7 '15 at 17:31
  • @Andrew iTunes File Sharing (or any other user-initiated method of adding data to an app) is exempt from the rule completely. Users can add anything they please to the app, providing they're doing it themselves. – grg Sep 7 '15 at 17:37
  • Does that rule apply to only configuration files, or any files? Could I run scripts with side effects from iTunes file sharing? – Andrew Sun Sep 8 '15 at 13:25
  • @Andrew The specific wording of the guideline indicates that content (used figuratively to mean data, executables, scripts, etc) that is provided by the app developer, modifying the functionality of the app further than is already built in to the app at review time, is prohibited. This is to prevent apps changing completely once they've been reviewed and accepted. Your app which runs Lua scripts presumably can run Lua built in, rather than executing the scripts externally and receiving the result. This means that all the functionality is within the app, thus acceptable. – grg Sep 8 '15 at 15:46
  • So, as long as the script does not change my app functionality-wise, I'm free to execute any external scripts I want? My intention was to provide language translation bundles in the form of Lua scripts which could be downloaded from the internet - that is fine, right? – Andrew Sun Sep 8 '15 at 19:17

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .