The document discusses a CodeLab on Android Wear. It includes an agenda for the CodeLab that covers creating a new project, adding libraries, layouts for smartwatches, communication with smartphones, and multi-fragment layouts. It provides code examples for creating WatchViewStubs, communicating between the mobile and wear modules using Teleport, and implementing a GridViewPager with fragments. The CodeLab aims to demonstrate building a simple survey app with Android Wear, including syncing data and updating the UI in response to changes.
3. Android Wear CodeLab – November 2015 – @fabioCollini 3
Agenda
1. Android Wear
2. Creazione nuovo progetto
3. Aggiunta librerie
4. Layout per smartwatch
5. Comunicazione con smartphone
6. Layout multi fragment
17. Android Wear CodeLab – November 2015 – @fabioCollini 17
BoxInsetLayout
Gestisce il padding di un layout adattandolo a
smartwatch quadrati e rotondi
Il layout contenuto specifica quali lati gestire (per
esempio con app:layout_box=“all”)
Non deve contenere un padding specificato
23. Android Wear CodeLab – November 2015 – @fabioCollini 23
ClickListener
Aggiungere il click listener sui due button che
mandano un messaggio usando teleportClient
24. Android Wear CodeLab – November 2015 – @fabioCollini 24
Service
public class MyService extends TeleportService {
private SurveyManager surveyManager;
@Override public void onCreate() {
super.onCreate();
surveyManager = new SurveyManager(this);
setOnGetMessageCallback(new MyOnGetMessageCallback());
}
private class MyOnGetMessageCallback extends OnGetMessageCallback {
@Override public void onCallback(String s) {
…
setOnGetMessageCallback(new MyOnGetMessageCallback());
}
}
}
28. Android Wear CodeLab – November 2015 – @fabioCollini 28
Activity -> Fragment
Spostare tutto il codice in una nuova classe
Creazione del layout in onCreateView usando
inflater.inflate(R.layout.answer, container, false);
Metodi protected -> public
this -> getActivity()
34. Android Wear CodeLab – November 2015 – @fabioCollini 34
Survey detail fragment
onCreate
aggiunge un listener sul sync per aggiornare la UI
onStart
invia un messaggio di start allo smartphone
onStop
invia un messaggio di stop allo smartphone
35. Android Wear CodeLab – November 2015 – @fabioCollini 35
Service su mobile
Messaggio di start
surveyManager.addValueEventListener per
eseguire un sync ogni volta che cambiano i dati
su Firebase usando
syncString("survey", survey.toJson());
Messaggio di stop
surveyManager.removeEventListener
36. Android Wear CodeLab – November 2015 – @fabioCollini 36
Sync su wear
Prendere la stringa con il json dal dataMap
Eseguire il parsing usando Survey.parse
Aggiornare la ui con i dati
37. Android Wear CodeLab – November 2015 – @fabioCollini 37
Thanks for your attention!
androidavanzato.it
Questions?