logoblog bluszcza, python, kuchnia, muzyka i wirtualizacja


Python for Nokia E-50 (S60 Series) - PyS60

Jak wiadomo, od pewnego czasu firma Nokia udostępniła miłośnikom pythona możliwość tworzenia aplikacji na platformę S60. Generalnie, choć nie uważam się za gadgeciarza - dałem się na ten haczyk złapać i nabyłem odpowiedni Hardware ;). Wygląda to tak:

Python for s60

Generalnie instalacja jest bezproblemowa, ściągamy ze strony projektu dwa sisy - jeden z interpreterem, jeden z interaktywną konsolą (ja korzystając z bluetootha umieściłem je sobie w katalogu C:\Data\Documents telefonu i następnie Menadżerem plików zainstalowałem). Własne skrypty umieszczamy w katalogu E:\Python.

Do czego może nam sie przydać python w telefonie? Znalazłem w sieci kopię pewnej książki w postaci pdf i zachciałem ją czytać jeżdżąc metrem, niestety, niewielki rozmiar ekranu zmuszał mnie do częstego scrollowania, co utrudniało zabawę ;) Przekonwertowałem więc pdf na txt, i napisałem krótki skrypcik który jest poniżej.

# -*- coding: utf-8 -*-

# importujemy interface do UI S-60
import appuifw

# importujemy "klucze klawiszy"
from key_codes import EKeyDownArrow
from key_codes import EKeyUpArrow

# otwieramy pamiętnik Laury Palmer, tekst zakodowany
# jako utf-8
file = open('c:\Data\Documents\laura.txt').xreadlines()

def __exit__():
    ' Zapewniamy możliwość wyjścia '
    APP_LOCK.signal()

if __name__ == "__main__":
    APP_LOCK = e32.Ao_lock()
    appuifw.app.exit_key_handler = __exit__
    appuifw.app.body = t = appuifw.Text()
    #pod lewy klawisz bindujemy wczytanie następnej linijki
    t.bind(EKeyDownArrow, lambda:t.add(file.next().decode('utf-8')))
    #pod prawy klawisz bindujemy wyczyszczenie ekranu
    t.bind(EKeyUpArrow, lambda:t.clear())
    APP_LOCK.wait()

Na ostrzeżenie - projekt zawiera jeszcze kilka niedociągnięć - najbardziej denerwujące na które się natknąłem pisząc większą aplikację to błąd z wyświetlaniem tekstu na obiekcie typu Canvas, niemniej - patrząc na zaangażowanie community i developerów w projekt wierzę, że będzie coraz lepiej. Na zakończenie garść linków:

Komentarze do notki 'Python for Nokia E-50 (S60 Series) - PyS60'

  1. 1. RaVbaker powiedział(a):

    Nie mów, że dukałeś kod na klawirce komórki. :P

Dodaj komentarz: