Могу ли я написать нативные приложения для iPhone, используя Python - PullRequest
87 голосов
/ 04 сентября 2008

Используя PyObjC , вы можете использовать Python для написания приложений Какао для OS X. Могу ли я писать собственные приложения для iPhone с использованием Python, и если да, то как?

Ответы [ 13 ]

53 голосов
/ 04 сентября 2008

Вы также можете использовать PyObjC на iPhone, благодаря отличной работе Джея Фримена (Саурик). См. Приложения для iPhone на Python .

Обратите внимание, что для этого требуется взломанный iPhone на данный момент.

35 голосов
/ 04 сентября 2008

В настоящее время нет единственного языка, доступного для доступа к iPhone SDK, - это C / C ++, Objective C и Swift.

Нет технической причины, по которой это не могло бы измениться в будущем, но я бы не стал задерживать ваше дыхание в связи с этим в краткосрочной перспективе.

Тем не менее, Objective-C и Swift на самом деле не так уж страшны ...

2016 г. edit

Javascript с платформой NativeScript теперь доступен для использования.

23 голосов
/ 10 сентября 2010

Похоже, что теперь разработчикам разрешено это делать: соглашение для разработчиков iOS было изменено вчера и, похоже, было изменено таким образом, чтобы сделать встраивание интерпретатора Python в приложение легальным:

РАЗДЕЛ 3.3.2 - ПЕРЕВОДЧИКИ

Старый

3.3.2 Приложение не может само установить или запустить другой исполняемый файл код любым способом, в том числе без ограничение за счет использования архитектура плагинов, вызывая другие фреймворки, другие API или иным образом. Если иное не одобрено Apple в писать, никакой интерпретируемый код не может быть загружен или использован в приложении за исключением кода, который интерпретируется и работать с помощью документированных API Apple и встроенный переводчик (и). Несмотря на вышесказанное, с Предварительное письменное согласие Apple, Приложение может использовать встроенный интерпретировать код ограниченным образом, если такое использование исключительно для обеспечения несовершеннолетних функции или функциональность, которые в соответствии с предполагаемым и заявленная цель Приложения.

Новое:

3.3.2 Приложение не может загружать или устанавливать исполняемый код. Интерпретированный код может использоваться только в Приложение, если все скрипты, код и переводчики упакованы в Приложение так и не загружено. Единственным исключением из вышесказанного является скрипты и код загружены и запущены Встроенный в Apple каркас WebKit.

23 голосов
/ 30 января 2010

Да, вы можете. Вы пишете свой код на tinypy (который ограничен Python), затем используете tinypy, чтобы преобразовать его в C ++, и, наконец, скомпилируйте его с XCode в собственное приложение для iPhone. Фил Хасси опубликовал игру под названием Слоны! используя этот подход. Вот более подробная информация,

http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/

21 голосов
/ 12 июля 2012

Да, в настоящее время вы можете разрабатывать приложения для iOS на Python.

Есть две платформы, которые вы можете проверить: Kivy и PyMob .

Пожалуйста, рассмотрите ответы и на на этот вопрос , так как они более актуальны, чем этот.

20 голосов
/ 14 апреля 2010

Обновление Соглашения для разработчиков iOS означает, что вы можете использовать все, что вам нравится, при условии соблюдения рекомендаций разработчика. Раздел 3.3.1, ограничивающий возможности разработчиков для iOS, был полностью удален.

Источник: http://daringfireball.net/2010/09/app_store_guidelines

8 голосов
/ 04 сентября 2013

Pythonista имеет функцию экспорта в Xcode, которая позволяет вам экспортировать ваши скрипты Python как проекты Xcode, которые создают автономные приложения для iOS.

5 голосов
/ 28 сентября 2008

Соглашение iPhone SDK также довольно расплывчато относительно того, разрешено ли вам даже запускать языки сценариев (за исключением Javascript в WebView). Мое чтение таково, что все в порядке - пока ни один из выполняемых вами сценариев не загружен из сети (поэтому предустановленные и отредактированные пользователем сценарии кажутся нормальными).

IANAL и т. Д. И т. Д.

2 голосов
/ 04 мая 2010

Технически, если интерпретированный код НЕ загружен (исключая JavaScript), приложение может быть одобрено. Среда Rhomobiles "Rhodes" делает именно это, объединяя мобильный Ruby, облегченную версию Rails и ваше приложение для распространения через магазин приложений. Поскольку и интерпретатор, и интерпретируемый код упакованы в окончательное приложение - Apple не считает это нежелательным.

http://rhomobile.com/products/rhodes/

Даже после последнего пресс-релиза Apple - приложения Rhodes (mobile ruby) все еще доступны в магазине приложений. Мне было бы трудно поверить, что tinyPy или pyObjC не найдут место, если будет сообщество разработчиков.

1 голос
/ 09 февраля 2019

BeeWare - это платформа с открытым исходным кодом для создания собственных приложений для iOS и Android.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...