Android development workshop held as part of Java class on Faculty of Electrical Engineering and Computing, University of Zagreb, Croatia.
22.06.2012. Zagreb
4. Android OS
koristi se za tablet i smartphone uređaje
trenutno postoji preko 300 različitih telefona
900 000 novih uređaja se aktivira dnevno
330 000 000 uređaja je trenutno aktivno
17. Dalvik VM
virtual machine koji izvršava Dalvik byte-code
slično JVM, no nije JVM
Java se kompajlira u .dex datoteke
svaka aplikacija se izvršava u vlastitom
sandboxu i na vlastitoj instanci VM-a
Java SE 5
25. layout.xml
definiranje sučelja koristeći XML
android:id="@+id/my_button”
moguće učitavanje on runtime pomocu
LayoutInflater servicea
super.onCreate(savedInstanceState);
setContentView(R.layout.main_layout);
32. Custom Components
Extend an existing View class or subclass with your own class.
Override some of the methods from the superclass. The superclass
methods to override start with 'on', for example, onDraw(),
onMeasure(), and onKeyDown(). This is similar to the on... events in
Activity or ListActivity that you override for lifecycle and other
functionality hooks.
Use your new extension class. Once completed, your new extension
class can be used in place of the view upon which it was based.
example: extend ImageView and add some rounded border
http://developer.android.com/guide/topics/ui/custom-
components.html
51. Android Intents
Intents are used as a message-passing
mechanism that works both within your
application, and between applications.
Declare your intention that an Activity or
Service be started to perform an action,
usually with (or on) a particular piece of data
Broadcast that an event (or action) has
occurred
52. Explicit intents
startActivity
Intent intent = new Intent(this, MyActivity.class);
startActivity(intent);
startActivityForResults
Intent intent = new Intent(this, MyActivity.class);
startActivity(intent);
53. Implicit intents
trazimo od OS-a da izabere pomocu cega ce
izvrsiti Intent
Intent intent = new
Intent(Intent.ACTION_CALL, Uri.parse(‘tel:
0959115614’);
startActivity(intent);
68. Paziti na
Low processing power
Limited RAM
Limited permanent storage capacity
Small screens with low resolution
High costs associated with data transfer
Slow data transfer rates with high latency
Unreliable data connections
Limited battery life
76. Android Market
25$ account
kad krenete razvijati applikaciju nije loše
uploadat ju odmah na početku developmenta
kako bi si rezervirali namespace
(hr.infinum.nixa...)
“od sljedećeg tjedna izgleda da ćemo moći
kupovati/prodavati aplikacije i iz Hrvatske”
DORS/CLUC 2011 - ovo jos uvijek ne radi :-)
- neke stvari se mogu emulirati no ne sve\n- recimo emuliranje kamere, telefonskih poziva i slicno radi\n- ne moze se emulirati sensore, slobodno pokusajte tresti laptop, ali ne moj!\n- network bandwidth se moze mijenjati\n
\n
pokazati ini file\ngdje se nalazi SD kartica i slicno\nmksdcard za napraviti karticu rucno\nprilikom stvaranja AVD-a mozemo izabrati ili velicinu ili datoteku\n
\n
\n
\n
\n
radi deployment na emulator ili na uredjan no brine se za transfer i instalaciju na ciljanom uredaju\n