Apple attualmente accetta app per iPhone con Lua integrata?


11

Stavo facendo delle ricerche e non riesco a trovare una risposta concreta.


1
Angry Birds usa Lua come formato di file di livello (beh, almeno sull'N900).
mrbinary,

Risposte:


12

La sezione 3.3.2 dell'accordo sui programmi per sviluppatori iOS recita (in parte) come segue:

Un'applicazione non può scaricare o installare codice eseguibile. Il codice interpretato può essere utilizzato in un'applicazione solo se tutti gli script, il codice e gli interpreti sono impacchettati nell'applicazione e non scaricati.

Quando l'accordo di licenza è stato aggiornato nel 2010, questa modifica è stata coperta dalla maggior parte dei principali siti di notizie Apple (poiché è stato un allentamento delle regole precedenti). Per esempio qui .

A tal fine, Lua dovrebbe andare bene purché tutto il codice che esegui sia raggruppato all'interno delle risorse dell'applicazione e non sia mai scaricato in remoto (in modo che Apple possa verificarlo). Certo, non sono un avvocato, quindi la mia interpretazione dei documenti legali dovrebbe essere presa con un pizzico di sale adeguatamente grande.


Ho ragione nel pensare che l'accordo per gli sviluppatori contenesse una "clausola del fight club" in cui si afferma che non si deve dire cosa c'è nell'accordo?
George Duckett,

1
@ George: Dato che il programma per sviluppatori è aperto a chiunque sia disposto a pagare $ 100 (e tu accetti i termini prima di pagare), dubito che avesse una clausola del genere. Per lo meno sarebbe totalmente privo di significato.

1
Avvertenza: il codice può essere scaricato con acquisti in app, ad esempio se si intende avere livelli scaricabili con LUA.
DampeS8N,

5

Considerando che Corona SDK esiste, direi di sì.

Apple ha inoltre permesso ad Adobe di eseguire un runtime AIR per iOS.


2
IIRC Monotouch utilizza specificamente il compilatore AOT per evitare di avere il codice JIT. Non sono sicuro che sia il miglior esempio qui.
Jimmy,

@Jimmy è vero, ho rivisto la risposta.
michael.bartnett,

@Jimmy: È vero, ma vietare JIT non è la stessa cosa che proibire le lingue incorporate.

2

Apple consente qualsiasi linguaggio di scripting, c'è un problema, deve essere impacchettato nell'app o nei componenti aggiuntivi dell'app che passano attraverso apple, non può essere scaricato da un server esterno e l'utente non può modificarlo.


Per quanto riguarda "l'utente non può modificarlo": l'app gratuita Paragraf consente all'utente di modificare gli shader GLSL sul dispositivo. (Ora, tecnicamente, GLSL non è un linguaggio di scripting, ma penso che la presenza di questa app sia ancora un punto di accesso degno di considerazione.)
smokris

1
Dipende dalla tua definizione di linguaggio di scripting, è un pezzo di codice che viene eseguito in fase di esecuzione .. Ma sono d'accordo, è un'idea abbastanza interessante.
Matt Jensen,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.