O PyS60 é, como o nome sugere, uma versão do Python que roda sobre o S60, oferecendo acesso aos módulos e recursos do sistema. Ele é uma boa opção de ferramenta de programação para smartphones, pois usa uma sintaxe simples, sem grandes diferenças em relação ao interpretador Python para PCs.
Você pode baixar o interpretador Python para o S60 através do:
https://opensource.nokia.com/projects/pythonfors60/
… ou diretamente no: https://sourceforge.net/projects/pys60
Podemos escrever um “olá mundo” em PyS60 com apenas duas linhas, importando o módulo “audio”, que inclui as funções relacionadas à reprodução e gravação de áudio e o acesso ao sintetizador de voz. A partir daí, podemos usar a função “audio.say” para fazer o aparelho falar, veja só:
import audio
audio.say(“Tenha um bom dia”)
Se você preferir que a mensagem seja exibida em uma janela de texto, pode usar a função “appuifw.note”, que faz parte do módulo “appuifw”. Este é o módulo responsável por criar janelas e diálogos, por isso é usado por praticamente todos os programas:
import appuifw
appuifw.note(u”Tenha um bom dia”)
Para fazer uma pergunta, e armazenar a resposta em uma variável, você poderia usar a seguinte função:
import appuifw
arquivo = appuifw.query(u”Digite o nome do arquivo”, “text”)
A função “appuifw.query” permite fazer perguntas, enquanto o “arquivo =” no início da linha faz com que o texto digitado seja armazenado na variável especificada, que pode ser usada para abrir ou salvar um arquivo, por exemplo.
A riqueza do Python está em permitir o acesso aos recursos do aparelho, tirando fotos, enviando ou recebendo arquivos, usando o acelerômetro, acessando a agenda de contatos, enviando mensagens SMS e assim por diante. Para tirar uma foto com a câmera, por exemplo, você usaria:
import camera
foto = camera.take_photo()
photo.save(“E:\\foto.jpg”)
Como pode imaginar, o módulo “camera” carrega as funções relacionadas à câmera, que permite tirar fotos, gravar vídeos, ativar o LED do flash e assim por diante. Uma das funções mais simples é a “camera.take_photo”, que simplesmente tira uma foto na resolução máxima. Como queremos que a foto seja salva em um arquivo, salvamos a foto na variável “foto” e em seguida usamos a função “photo.save” para salvá-la no arquivo “foto.jpg”, no diretório raiz do cartão de memória (visto pelo sistema como o drive E).
Com apenas estas três linhas, o programa não teria muita utilidade, já que ele iria sempre salvar a foto no mesmo arquivo. Entretanto, se você combinasse a função e tirar a foto com a ler uma variável do exemplo anterior, poderia fazer com que o programa perguntasse o nome do arquivo antes de salvar. A parti daí, Você poderia adicionar uma função para definir a resolução, enviar a foto por e-mail (ou via Bluetooth) e assim por diante. O interessante do Python é justamente oferecer uma curva de aprendizado mais suave, permitindo que você comece com scripts simples e vá gradualmente adicionando novos truques
A forma mais simples de rodar o programa é criar um arquivo de texto (você pode usar o notepad do Windows, o Gedit ou qualquer outro editor de texto puro) contendo os comandos e transferí-los para o smartphone. Salve seu arquivo de texto com a extensão “.py” e copie-o para a pasta “Python” do cartão de memória (ou da memória interna). Em seguida, abra o Python e use o “Options > Run Script” para executá-lo:
Uma forma bastante conveniente de trabalho é usar o perfil de transferência de arquivos do Bluetooth para acessar os arquivos do smartphone diretamente. Isso permite que você edite o script diretamente a partir do aparelho e possa executá-lo rapidamente a cada mudança para testar novas rotinas e corrigir os erros conforme eles apareçam.
Para scripts simples, como nesse primeiro exemplo, você também usar o console (“Opções > Interactive console”), que permite que você simplesmente escreva as instruções diretamente, com o sistema executando os comandos linha a linha:
Você pode ver mais exemplos de scripts em Python que executam as mais diversas funções (de um gravador de som a um servidor web) no Mobile Python: https://www.mobilenin.com/mobilepythonbook/examples.html
Outros sites com exemplos de código são o Cyke64 (https://cyke64.googlepages.com/), o DZone (https://snippets.dzone.com/tags/series60) e o Croozeus (https://www.croozeus.com/).
Outra parada obrigatória é o Wiki: https://wiki.opensource.nokia.com/projects/Python_for_S60
Na hora de distribuir os aplicativos que escrever, você tem a opção de simplesmente disponibilizar os arquivos .py, que podem ser executados dentro do interpretador, ou transformá-los em arquivos .sis, que se comportam como aplicativos nativos do sistema.
A segunda opção é a ideal se você pretende distribuir os aplicativos, já que melhora a apresentação e elimina o incômodo de precisar executá-los dentro do interpretador python. Uma vez empacotados, os programas aparecem no menu e são executados exatamente da mesma forma que outros aplicativos.
Você pode gerar os arquivos .sis com o Ensymble, disponível no: https://code.google.com/p/ensymble/
Você pode usá-lo tanto no Linux quanto no Windows (o comando é o mesmo nas duas plataformas). É necessário apenas que o interpretador Python esteja instalado. Ele já vem instalado por padrão no Linux e o instalador da versão Windows pode ser baixado no:
https://www.python.org/download/
Com o Python instalado, use o comando “python -V” para descobrir qual é a versão que está instalada:
$ python -V
Python 2.4.4
No site do Ensymble, você encontra diferentes versões do script, correspondentes às versões do Python. Como estou usando a versão 2.4.4 do Python, baixo o arquivo “ensymble_python2.4-0.27.py”.
O uso é bastante simples. Coloque o arquivo dentro de uma pasta junto com o arquivo .py do seu aplicativo. Em seguida, acesse a pasta via terminal (no Windows use o prompt do DOS) e use o comando de conversão:
$ python ensymble_python2.4-0.27.py py2sis –vendor=GDH hello.py hello.sis
Dentro do comando, o “–vendor=” especifica o nome do desenvolvedor (ou seja, você), que é mostrado ao usuário quando ele instala o pacote. O “hello.py” é o arquivo de entrada, enquanto o “hello.sis” é o arquivo que será gerado. O nome do programa (que aparece nos menus) é por padrão o mesmo nome do arquivo, mas você pode especificar outro nome usando o parâmetro “–appname=Nome”.
O script gera um arquivo .sis auto-assinado, que pode ser instalado diretamente em aparelhos com o S60 3ed. Como todo arquivo auto-assinado, ele exibe o tradicional aviso de segurança, mas, com exceção disso, a instalação ocorre sem percalços, como em qualquer outro aplicativo.


