Atualmente, a Apple aceita aplicativos para iPhone com Lua incorporado?

11

Eu estava pesquisando isso e não consigo encontrar uma resposta concreta.

Ryan
fonte
1
O Angry Birds usa Lua como seu formato de arquivo de nível (bem, pelo menos no N900).
Mrbinary

Respostas:

12

A seção 3.3.2 do contrato do programa para desenvolvedores do iOS lê (em parte) o seguinte:

Um aplicativo não pode baixar ou instalar código executável. O código interpretado só pode ser usado em um Aplicativo se todos os scripts, códigos e intérpretes estiverem empacotados no Aplicativo e não forem baixados.

Quando o contrato de licença foi atualizado em 2010, essa alteração foi coberta pela maioria dos principais sites de notícias da Apple (uma vez que era um relaxamento das regras anteriores). Por exemplo, aqui .

Para esse fim, Lua deve ficar bem, desde que todo o código que você executa esteja incluído nos recursos do seu aplicativo e nunca baixe remotamente (para que a Apple possa verificá-lo). É claro que não sou advogado, portanto minha interpretação dos documentos legais deve ser feita com uma pitada de sal adequadamente grande.


fonte
Estou certo ao pensar que o contrato do desenvolvedor costumava conter uma "cláusula do clube da luta" afirmando que você não deve dizer o que está no contrato?
George Duckett
1
@ George: Dado que o programa do desenvolvedor é aberto a qualquer pessoa disposta a pagar US $ 100 (e você concorda com os termos antes de pagar), duvido que tenha uma cláusula desse tipo. No mínimo, seria totalmente sem sentido.
1
Advertência: O código pode ser baixado em compras de aplicativos, como se você pretendesse ter níveis para download com LUA.
DampeS8N
5

Considerando que o Corona SDK existe, eu diria que sim.

A Apple também permitiu à Adobe criar um tempo de execução do AIR para iOS.

michael.bartnett
fonte
2
O IIRC Monotouch usa especificamente o compilador AOT para evitar o código JIT. Não tenho certeza se é o melhor exemplo aqui.
Jimmy
@ Jimmy isso é verdade, eu revi a resposta.
Michael.bartnett 19/10/11
@ Jimmy: Isso é verdade, mas proibir o JIT não é a mesma coisa que proibir linguagens incorporadas.
2

A Apple permite qualquer linguagem de script, existe um problema, ele deve ser empacotado no aplicativo ou addons de aplicativos que passam pela apple, não pode ser baixado de um servidor externo e o usuário não pode editá-lo.

Matt Jensen
fonte
Em relação a "o usuário não pode editá-lo": o aplicativo gratuito Paragraf permite que o usuário edite shaders GLSL no dispositivo. (Agora, tecnicamente, GLSL não é uma linguagem de script, mas acho que a presença deste app ainda é uma pena datapoint considerando.)
smokris
1
Depende da sua definição de linguagem de script, é um pedaço de código que é executado em tempo de execução. Mas eu concordo, é uma ideia bastante interessante.
Matt Jensen