Решил написать серию статей про написание программ на Python для смартфонов Nokia на базе Symbian S60.
Python для S60 (или сокращенно PyS60) является open source проектом компании Nokia по портированию языка Python на смартфоны, работающие на платформе S60. Он предоставляет все возможности языка Python а также доступ к специфичным для телефонов функциям, таким как: работа с камерой, календарем, телефонной книгой, GPS, запись и воспроизведение аудио и видео, передача данных через Bluetooth, WiFi и GPRS.
PyS60 является open source проектом и распространяется под лицензиями Apache 2 и Python. На момент написания статьи последняя версия 1.9.1
Итак, начнем!
Для начала установим Python на наш смартфон(также существует возможность установить его и на эмуляторе S60)
Перед установкой нам необходимо знать версию операционной системы нашего смартфона, так как различные версии системы требуют различне версии Python. Для этого заходим сюда, находим в таблице свою модель телефона и смотрим в первой колонке название (к примеру, у меня «S60 3rd Edition, Feature Pack 2»):
Для установки нам потребуются 2 пакета:
- сам PyS60 (для версий 3rd Edition и новее качаем с maemo garage, для 2nd Edition качаем с SourceForge). Внимание! Качайте только версию для своей операционной системы (к примеру для «S60 3rd Edition, Feature Pack 2» мне понадобился файл Python_1.9.1_3rdEdFP2.sis)
- PythonScriptShell (аналогично, для версий 3rd Edition и новее качаем с maemo garage, для 2nd Edition качаем с SourceForge). Внимание! Качайте только версию для своей операционной системы (к примеру для «S60 3rd Edition, Feature Pack 2» мне понадобился файл PythonScriptShell_1.9.1_3rdEdFP2.sis)
После этого закидываем оба файла на телефон любым удобным для вас способом и устанавливаем вначале PythonForS60, а затем PythonScriptShell
После установки на карте памяти телефона будет создана папка Python(если по каким то причинам она не была создана, вы можете создать ее сами), в которой и будут храниться все наши .py файлы.
Если появляется ошибка об утсутвствии Python Runtime and PIPS Library, смотрите решение в конце топика
После успешной установки в меню телефона появляется значок Python
Сам Python встречает нас информацией об установленной версии.
После нажатия на левую софт-клавишу, будет выведен список возможных операций. Тут можно вызвать предустановленные скрипты, или вызвать интерактивную консоль, что мы и сделаем. Здесь можно поиграть немного с выводом на экран.
Интерактивная консоль позволяет писать и целые скрипты, если конечно вам удобно набирать их на клавиатуре телефона.
Также интерактивная консоль успешно справляется и с математическими выражениями, что позволяет использовать ее как удобный калькулятор.
Предустановленные скрипты раскрывают некоторые из возможностей PyS60. Вот некоторые из них:
- ball.py — при помощи стрелок мы управляем шариком, который подчиняется некоторым законам физики
- snake.py – всеми любимая змейка
- simplecube.py – простой вращающийся куб – показывает возможности PyS60 в 3D
- gles_demo.py – еще одна демонстрация возможностей 3D
В следующих статьях я рассмотрю как создавать простейшие программы на PyS60 для решения тех или иных задач: файловый менеджер, работа с встроенной камерой, просмотр и обработка изображений и многое другое.
upd: так как на сайте есть блоги посвященные Symbian или Python не смог выбрать в какой из них перенести топик и решил создать новый блог «Python для S60»
upd2: если при установке выдает ошибку об отсутствии Python Runtime and PIPS Library:
- установите PIPS(P.I.P.S. Is POSIX on Symbian OS) отсюда: http://developer.symbian.com/wiki/display/pub/P.I.P.S. (спасибо nik_the_spirit)
- либо(если есть эмулятор Symbian на помпьютере) необходимо поставить к нему плагин Open C/C++ отсюда и затем установить на телефоне следующие файлы:
(они находятся в папке <ваш путь к SDK>\nokia_plugin\openc\s60opencsis)
1)pips_nokia_1_3_SS.sis
2)glib.sis
3)ssl.sis
4)stdioserver_s60_1_3_SS.SIS
после этого установите Python как было написано выше