Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
LINUXDAY 2013

Programmazione Android
per esseri umani
Roberto Bettazzoni

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linu...
LINUXDAY 2013

print “hello world”

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it

...
LINUXDAY 2013

www.python.it

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it

Robert...
LINUXDAY 2013

Qpython: python for Android

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug.li...
LINUXDAY 2013

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it

Roberto Bettazzoni, P...
LINUXDAY 2013

import web
webapp=web.application(('/(.*)', 'hello'), globals())
class hello:
def GET(self, name):
return "...
LINUXDAY 2013

SL4A Script Layer for Android

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug....
LINUXDAY 2013

SL4A Script Layer for Android
Documentazione
sulle API

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Us...
LINUXDAY 2013

import androidhelper
droid = androidhelper.Android()
droid.makeToast("Hello world")

Bologna, 2013-10-26

E...
LINUXDAY 2013

import androidhelper
droid = androidhelper.Android()
droid.makeToast("Hello world")

Bologna, 2013-10-26

E...
LINUXDAY 2013

import androidhelper
droid = androidhelper.Android()
droid.ttsSpeak("Hello world")

Bologna, 2013-10-26

ER...
LINUXDAY 2013

import androidhelper
droid = androidhelper.Android()
droid.smsSend(“+39333666999”,
"Hello world")

Bologna,...
LINUXDAY 2013

import androidhelper
droid = androidhelper.Android()
droid.sendEmail(
to=“you@youraddress.org”,
subject=”Ci...
LINUXDAY 2013

import smtplib
from email.mime.text import MIMEText
me = "roberto@bettazzoni.it"
you= "you@youraddress.org"...
LINUXDAY 2013

import androidhelper, web
urls = ('/(.*)', 'hello')
App = web.application(urls, globals())
Droid = androidh...
LINUXDAY 2013

def gmapUrl(latitude, longitude):
return "'http://maps.googleapis.com/maps/api/staticmap?center=%s,
%s&zoom...
LINUXDAY 2013

Interfaccia Utente

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it

R...
LINUXDAY 2013

kivy.org

Bologna, 2013-10-26

ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it

Roberto Bet...
LINUXDAY 2013

from kivy.app import App
from kivy.uix.label import Label
class HelloWorldApp(App):
def build(self):
return...
LINUXDAY 2013

from kivy.app import App
from kivy.uix.button import Button
hw='Hello World'
class HelloWorldApp(App):
def ...
LINUXDAY 2013

from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.label import Label
class HelloWor...
LINUXDAY 2013

GRAZIE PER L'ATTENZIONE
Le slides e le riprese audio/video
dell'intervento saranno disponibili su:

http://...
Upcoming SlideShare
Loading in …5
×

Programmazione android per esseri umani

576 views

Published on

Intervento al linux day 2013
I tools di programmazione per le device mobili sono quasi all'altezza di quelli per Linux; è giunta quindi l'ora di cimentarsi nella scrittura di script e programmi per telefoni: è facile, divertente ed i risultati sono interessanti.
In venti minuti vi mostrerò come si può scrivere un semplice programma per un telefono o tablet Android utilizzando Python e tools open source

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Programmazione android per esseri umani

  1. 1. LINUXDAY 2013 Programmazione Android per esseri umani Roberto Bettazzoni Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. ERLUG 1
  2. 2. LINUXDAY 2013 print “hello world” Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 2
  3. 3. LINUXDAY 2013 www.python.it Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 3
  4. 4. LINUXDAY 2013 Qpython: python for Android Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 4
  5. 5. LINUXDAY 2013 Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 5
  6. 6. LINUXDAY 2013 import web webapp=web.application(('/(.*)', 'hello'), globals()) class hello: def GET(self, name): return "<html><body>Hello world</body></html>" if __name__ == "__main__": webapp.run() Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 6
  7. 7. LINUXDAY 2013 SL4A Script Layer for Android Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 7
  8. 8. LINUXDAY 2013 SL4A Script Layer for Android Documentazione sulle API Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 8
  9. 9. LINUXDAY 2013 import androidhelper droid = androidhelper.Android() droid.makeToast("Hello world") Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 9
  10. 10. LINUXDAY 2013 import androidhelper droid = androidhelper.Android() droid.makeToast("Hello world") Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 10
  11. 11. LINUXDAY 2013 import androidhelper droid = androidhelper.Android() droid.ttsSpeak("Hello world") Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 11
  12. 12. LINUXDAY 2013 import androidhelper droid = androidhelper.Android() droid.smsSend(“+39333666999”, "Hello world") Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 12
  13. 13. LINUXDAY 2013 import androidhelper droid = androidhelper.Android() droid.sendEmail( to=“you@youraddress.org”, subject=”Ciao”, body="Hello world") Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 13
  14. 14. LINUXDAY 2013 import smtplib from email.mime.text import MIMEText me = "roberto@bettazzoni.it" you= "you@youraddress.org" msg = MIMEText("Hello world") msg['Subject'] = "Ciao" msg['From'] = me msg['To'] = you s = smtplib.SMTP('127.0.0.1') s.sendmail(me, [you], msg.as_string()) s.quit() Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 14
  15. 15. LINUXDAY 2013 import androidhelper, web urls = ('/(.*)', 'hello') App = web.application(urls, globals()) Droid = androidhelper.Android() class hello: def GET(self, name): location = Droid.getLastKnownLocation().result location = location.get('network', location.get('gps')) return "<html><body><h3>I am here</h3> <img src=" + gmapUrl(location['latitude'],location['longitude'])+ "/></body></html>" if __name__ == "__main__": App.run() Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 15
  16. 16. LINUXDAY 2013 def gmapUrl(latitude, longitude): return "'http://maps.googleapis.com/maps/api/staticmap?center=%s, %s&zoom=12&size=400x400&sensor=false&markers=color:green|label:I|%s,%s'" % ( latitude, longitude, latitude, longitude) Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 16
  17. 17. LINUXDAY 2013 Interfaccia Utente Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 17
  18. 18. LINUXDAY 2013 kivy.org Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 18
  19. 19. LINUXDAY 2013 from kivy.app import App from kivy.uix.label import Label class HelloWorldApp(App): def build(self): return Label(text='Hello World') if __name__ == '__main__': HelloWorldApp().run() Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 19
  20. 20. LINUXDAY 2013 from kivy.app import App from kivy.uix.button import Button hw='Hello World' class HelloWorldApp(App): def build(self): b = Button(text=hw, font_size=70) def callback(instance): b.text=hw if b.text[0]!="H" else "Ciao mondo" b.bind(on_press=callback) return b if __name__ == '__main__': HelloWorldApp().run() Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 20
  21. 21. LINUXDAY 2013 from kivy.app import App from kivy.uix.widget import Widget from kivy.uix.label import Label class HelloWorld(Widget): def on_touch_down(self, touch): with self.canvas: Label(font_size=50, pos=(touch.x, touch.y), text = "Hello World") class HelloWorldApp(App): def build(self): return HelloWorld() if __name__ == '__main__': HelloWorldApp().run() Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 21
  22. 22. LINUXDAY 2013 GRAZIE PER L'ATTENZIONE Le slides e le riprese audio/video dell'intervento saranno disponibili su: http://erlug.linux.it/linuxday/2013/ Bologna, 2013-10-26 ERLUG: Emilia Romagna Linux Users Group – http://erlug.linux.it Roberto Bettazzoni, Programmazione Android per esseri umani. 22

×