Apple accepte-t-il actuellement les applications iPhone avec Lua intégré?


11

Je faisais des recherches là-dessus et je n'arrive pas à trouver de réponse concrète.


1
Angry Birds utilise Lua comme format de fichier de niveau (enfin, au moins sur le N900).
mrbinary

Réponses:


12

La section 3.3.2 du contrat de programme pour les développeurs iOS se lit (en partie) comme suit:

Une Application ne peut pas télécharger ou installer de code exécutable. Le code interprété ne peut être utilisé dans une application que si tous les scripts, le code et les interprètes sont emballés dans l'application et non téléchargés.

Lorsque l'accord de licence a été mis à jour en 2010, ce changement a été couvert par la plupart des principaux sites d'actualités Apple (car il s'agissait d'un assouplissement des règles antérieures). Par exemple, ici .

À cette fin, Lua devrait être correct tant que tout le code que vous exécutez est regroupé dans les ressources de votre application et jamais téléchargé à distance (afin qu'Apple puisse le vérifier). Bien sûr, je ne suis pas avocat, donc mon interprétation des documents juridiques doit être prise avec une pincée de sel suffisamment importante.


Ai-je raison de penser que l'accord avec les développeurs contenait auparavant une «clause du club de combat» stipulant que vous ne devez pas dire ce qu'il contient?
George Duckett

1
@George: Étant donné que le programme pour développeurs est ouvert à tous ceux qui souhaitent payer 100 $ (et vous acceptez les conditions avant de payer), je doute qu'il contienne une telle clause. À tout le moins, cela n'aurait aucun sens.

1
Avertissement: le code peut être téléchargé avec des achats intégrés, comme si vous aviez l'intention d'avoir des niveaux téléchargeables avec LUA.
DampeS8N

5

Étant donné que le SDK Corona existe, je dirais que oui.

Apple a également autorisé Adobe à créer un runtime AIR pour iOS.


2
IIRC Monotouch utilise spécifiquement le compilateur AOT pour éviter d'avoir du code JIT. Je ne suis pas sûr que ce soit le meilleur exemple ici.
Jimmy

@Jimmy c'est vrai, j'ai révisé la réponse.
michael.bartnett

@Jimmy: C'est vrai, mais interdire JIT n'est pas la même chose que d'interdire les langages intégrés.

2

Apple autorise n'importe quel langage de script, il y a un hic, il doit être emballé dans l'application ou les addons d'application qui passent par Apple, il ne peut pas être téléchargé depuis un serveur externe et l'utilisateur ne peut pas le modifier.


Concernant "l'utilisateur ne peut pas le modifier": l'application gratuite Paragraf permet à l'utilisateur de modifier les shaders GLSL sur l'appareil. (Maintenant, techniquement, GLSL n'est pas un langage de script, mais je pense que la présence de cette application est toujours un point de données à considérer.)
smokris

1
Cela dépend de votre définition du langage de script, c'est un morceau de code qui s'exécute au moment de l'exécution .. Mais je suis d'accord, c'est une idée assez intéressante.
Matt Jensen
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.