Имеет ли компания Apple в настоящее время принимает картинки приложений со встроенным Lua?


11

Я исследовал это, и я не могу найти конкретный ответ.


1
Angry Birds использует Lua в качестве формата файла уровня (ну, по крайней мере, на N900).
mrbinary

Ответы:


12

Раздел 3.3.2 соглашения с разработчиком iOS гласит (частично) следующее:

Приложение не может загружать или устанавливать исполняемый код. Интерпретируемый код может быть использован только в заявке, если все скрипты, код и переводчики упакованы в Заявлении и не загружаются.

Когда лицензионное соглашение было обновлено в 2010 году, это изменение было включено в большинство основных новостных сайтов Apple (поскольку это было ослабление прежних правил). Например, здесь .

С этой целью, Lua должно быть в порядке, пока весь код запуска поставляется в ресурсах приложения и никогда не загружены удаленно (так компания Apple может проверить его). Конечно, я не юрист, поэтому мое толкование юридических документов должно восприниматься с достаточно большой щепоткой соли.


Правильно ли я считаю, что соглашение с разработчиками содержало «пункт о бойцовском клубе», в котором говорилось, что нельзя указывать, что в соглашении?
Джордж Дакетт

1
@ Джордж: Учитывая, что программа для разработчиков открыта для всех, кто готов заплатить 100 долларов (и вы соглашаетесь с условиями до ее оплаты), я сомневаюсь, что в ней есть такой пункт. По крайней мере, это было бы совершенно бессмысленно.

1
Предостережение: код можно загрузить с помощью покупок в приложении, например, если вы намеревались иметь загружаемые уровни с LUA.
DampeS8N

5

Учитывая, что Corona SDK существует, я бы сказал, да.

Apple также разрешила Adobe создать среду выполнения AIR для iOS.


2
IIRC Monotouch специально использует компилятор AOT, чтобы избежать использования кода JIT. Я не уверен, что это лучший пример здесь.
Джимми

@ Джимми, это правда, я пересмотрел ответ.
Майкл Бартнетт

@Jimmy: Это правда, но запрет JIT - это не то же самое, что запрет на встроенные языки.

2

Apple допускает использование любого языка сценариев, есть загвоздка, он должен быть упакован в приложение или дополнения приложения, которые проходят через яблоко, его нельзя загрузить с внешнего сервера и пользователь не может редактировать его.


Что касается «пользователь не может редактировать его»: бесплатное приложение Paragraf позволяет пользователю редактировать шейдеры GLSL на устройстве. (Технически, GLSL не является языком сценариев, но я думаю, что наличие этого приложения все еще стоит учитывать.)
smokris

1
Это зависит от вашего определения языка сценариев, это кусок кода, который выполняется во время выполнения ... Но я согласен, это довольно интересная идея.
Мэтт Дженсен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.