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.
Programuj rýchlejšie,meraj presnejšieUžitočné Android knižnice   www.matj.sk/androidcodeKošice, 8. november 2012          ...
Matúš Jančík            Originals, s.r.o.   web & facebook & android programátorAndroid aplikácie programujem od jesene 2011
Vtipko - najlepšie vtipy  ●   zbierka vtipov v rôznych      kategóriách  ●   hodnotenie, obľubené  ●   synchornizácia + of...
Max do vreckaAplikácia pre všetkých návštevníkov Zábavno obchodných centier MAX.400 prevádzok v ZOC MAX Nitra, ZOC MAX Pop...
Android knižnice - pridanie do projektuKnižnice pre webové služby (Facebook, Google, ...), reklamné systémy, grafy, ...Kni...
Android Query - frameworkOpen-source - Apache 2.0 licencia - 80kB http://code.google.com/p/android-query/Knižnica pre prác...
Android Query - inštalácia- stiahnutie .jar súboru a skopírovanie do /libsprivate AQuery aq;@Overridepublic void onCreate(...
Android Query - práca s UIbez AQueryTextView text = (TextView) view.findViewById(R.id.text);if(text != null){      text.se...
Android Query - udalostiPred AndroidQueryImageView button = (ImageView) view.findViewById(R.id.button);if(button != null){...
Android Query - asyncMetóda:ajax(java.lang.String url, java.lang.Class<K> type, AjaxCallback<K> callback)AndroidManifest.x...
Android Query - záverDownload, Wiki, Docs, Sourcecode.google.com/p/android-querygithub.com/androidquery/androidqueryAndroi...
Androrm - ORM vrstva pre databázuOpen-source - MIT licencia - 50kB http://androrm.the-pixelpla.netNa základe definovaných ...
Androrm - inštalácia1. stiahnúť *.jar knižnicu zo stránky http://androrm.the-   pixelpla.net/downloads/ a vložiť do libs a...
Androrm príklad - vytvárame modely                                                    1 DB tabuľka = 1 model = 1 súborsrc/...
Androrm - registrujeme modelyKdekoľvek v aplikácii stačí jeden krát zaregistrovať modely (napríklad vspúšťacej aktivite). ...
Androrm - vytvárame záznamsrc/sk.matj.vtipy/PridajvtipActivity.java//po kliknutí na tlačidlo uložiťEditText textInput = (E...
Androrm - čítame záznamyVýber jedného záznamu                          DetailActivity.java// výber vtipu s id = 1Vtip vtip...
Google Analytics - meraniewebová aplikácia                             - počet aktívnych používateľovhttp://www.google.com...
Google Analytics - inštalácia 1/21. stiahnúť *.jar knižnicu a nahrať do /libshttps://developers.google.com/analytics/2. pr...
Google Analytics - inštalácia 2/24. vytvoriť súbor /res/values/analytics.xml<?xml version="1.0" encoding="utf-8" ?><resour...
Google Analytics - inštalácia 2/24. vytvoriť súbor /res/values/analytics.xml<?xml version="1.0" encoding="utf-8" ?><resour...
Google Analytics - štatistiky- ktoré obrazovky sú najviac zobrazované (pohyb po aplikácii)- lokalita a jazyk používateľov-...
Google Analytics - realtime- počet aktívnych používateľov, pomer noví / starí- aktuálne zobrazené obrazovky- verzie- lokal...
Google Analytics - sledovanie udalostíPoužitie@Overridepublic void onClick(View v) {  Tracker myExistingTracker = EasyTrac...
Ďakujem za pozornosť    Priestor pre otázky www.matj.sk/androidcode       Matúš Jančík @matusjancik fb.com/matj.sk
Upcoming SlideShare
Loading in …5
×

Matúš Jančík: Programuj rýchlejšie, meraj presnejšie

2,181 views

Published on

  • Be the first to comment

  • Be the first to like this

Matúš Jančík: Programuj rýchlejšie, meraj presnejšie

  1. 1. Programuj rýchlejšie,meraj presnejšieUžitočné Android knižnice www.matj.sk/androidcodeKošice, 8. november 2012 Matúš Jančík
  2. 2. Matúš Jančík Originals, s.r.o. web & facebook & android programátorAndroid aplikácie programujem od jesene 2011
  3. 3. Vtipko - najlepšie vtipy ● zbierka vtipov v rôznych kategóriách ● hodnotenie, obľubené ● synchornizácia + offline Publikované 2. novembra 2011 ● 20000 stiahnutí ● 7500 aktívnych použ. ● 300 UV denne + Symbian, Facebook, iPhone Súťaž Android Code 2011 Grafika: Peter Bartoš @hrochodyl
  4. 4. Max do vreckaAplikácia pre všetkých návštevníkov Zábavno obchodných centier MAX.400 prevádzok v ZOC MAX Nitra, ZOC MAX Poprad, ZOC MAX Trenčín a ZOC MAX TrnavaKomplexný informačný systém: mobilná aplikácia, mobilný web, Facebook aplikácie
  5. 5. Android knižnice - pridanie do projektuKnižnice pre webové služby (Facebook, Google, ...), reklamné systémy, grafy, ...Knižnica ako projekt *.jar súborvytvorenie:použitie:
  6. 6. Android Query - frameworkOpen-source - Apache 2.0 licencia - 80kB http://code.google.com/p/android-query/Knižnica pre prácu s UI prvkamiAsynchrónne požiadavky pre HTTPSťahovanie obrázkov a súborovAutentifikácia Facebook, Twitter, ...
  7. 7. Android Query - inštalácia- stiahnutie .jar súboru a skopírovanie do /libsprivate AQuery aq;@Overridepublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test); aq = new AQuery(this); .........}
  8. 8. Android Query - práca s UIbez AQueryTextView text = (TextView) view.findViewById(R.id.text);if(text != null){ text.setText(vtip.getText()); text.setVisibility(View.VISIBLE);}s AQueryaq.id(R.id.text).text(vtip.getText()).visible();aq.id(R.id.image1).image("http://www.vtipko.eu/test.jpg");aq.id(R.id.text).hidden().gone().visible();aq.id(R.id.text).background(R.color.red).textColor(R.color.black);
  9. 9. Android Query - udalostiPred AndroidQueryImageView button = (ImageView) view.findViewById(R.id.button);if(button != null){ button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //stlacene tlacidlo } });}S AndroidQueryprotected void onCreate(Bundle savedInstanceState){ //setContentView ... AQuery aq = new AQuery(this); aq.id(R.id.button).clicked(this, "buttonClicked"); aq.id(R.id.list).itemClicked(this, "itemClicked")}public void buttonClicked(View view){ //stlacene tlacidlo}public void itemClicked(AdapterView<?> parent, View v, int pos, long id) { //stlacena polozka v zozname}
  10. 10. Android Query - asyncMetóda:ajax(java.lang.String url, java.lang.Class<K> type, AjaxCallback<K> callback)AndroidManifest.xml<uses-permission android:name="android.permission.INTERNET" />ActivityString url = "http://api.vtipko.eu/vtipy";aq.ajax(url, JSONObject.class, this, "jsonCallback");public void jsonCallback(String url, JSONObject json, AjaxStatus status){ if(json != null){ //uspesny request }else{ //chyba //status.getCode(); //status.getMessage(); }}
  11. 11. Android Query - záverDownload, Wiki, Docs, Sourcecode.google.com/p/android-querygithub.com/androidquery/androidqueryAndroid aplikáciaAndroidQuery demo snippetshttp://bit.ly/aquery
  12. 12. Androrm - ORM vrstva pre databázuOpen-source - MIT licencia - 50kB http://androrm.the-pixelpla.netNa základe definovaných modelov vytvorí priprvom spustení sqlite databázu.Jednoduché čítanie a zapisovanie údajov.
  13. 13. Androrm - inštalácia1. stiahnúť *.jar knižnicu zo stránky http://androrm.the- pixelpla.net/downloads/ a vložiť do libs adresára2. vytvorenie modelov3. registrácia modelov v aplikácii
  14. 14. Androrm príklad - vytvárame modely 1 DB tabuľka = 1 model = 1 súborsrc/sk.matj.vtipy/Vtip.java názov triedy = názov DB tabuľky _id = autoincrement - automatickypublic class Vtip extends com.orm.androrm.Model { // premenná bude stĺpec v databáze protected CharField text; Data fields // konštruktor BooleanField () public Vtip() { super(); CharField (int) // definovanie textovej premennej DateField () text = new CharField(); } DoubleField () // setter IntegerField (int) public void setText(String text) { text.set(text); LocationField () } //getter public String getText() { Relational Fields return text.get(); ForeignKeyField }} ManyToManyField OneToManyField
  15. 15. Androrm - registrujeme modelyKdekoľvek v aplikácii stačí jeden krát zaregistrovať modely (napríklad vspúšťacej aktivite). Pri prvom spustení sa vytvorí databáza.src/sk.matj.vtipy/MainActivity.java//nazov databazyDatabaseAdapter.setDatabaseName("DatabazaVtipov");//registracia modelovList<Class<? extends Model>> models = new ArrayList<Class<? extends Model>>();models.add(Vtip.class);DatabaseAdapter adapter = new DatabaseAdapter(getApplicationContext());adapter.setModels(models);
  16. 16. Androrm - vytvárame záznamsrc/sk.matj.vtipy/PridajvtipActivity.java//po kliknutí na tlačidlo uložiťEditText textInput = (EditText) findViewById(R.id.text);String value = textInput.getText().toString();Vtip vtip = new Vtip();vtip.setText(value);vtip.save(getApplicationContext());
  17. 17. Androrm - čítame záznamyVýber jedného záznamu DetailActivity.java// výber vtipu s id = 1Vtip vtip = Vtip.objects(getApplicationContext()).get(1);//vtip.getText();Výber viacerých záznamov ZoznamActivity.java//filter - iba vtipy so slovom blondFilter filter = new Filter();filter.contains("text", "blond");QuerySet<Vtip> vtipy = Vtip.objects(getApplicationContext()).filter(filter);for(Vtip vtip : vtipy) { //vtip.getText();}http://androrm.the-pixelpla.net/documentation
  18. 18. Google Analytics - meraniewebová aplikácia - počet aktívnych používateľovhttp://www.google.com/analytics - lokalita návštevníkov - používanie jednotlivých funkciíGoogle Analytics SDK for Android v2 (Beta) - počet a typ pádov aplikácie- október / 2012 - realtime počet a pohyb v aplikácii
  19. 19. Google Analytics - inštalácia 1/21. stiahnúť *.jar knižnicu a nahrať do /libshttps://developers.google.com/analytics/2. práva aplikácie v AndroidManifest.xml<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />3. vytvoriť profil v GA a získať IDhttp://www.google.com/analyticsAdmin=>Account list=>New Account => Vyber možnosť "App" a vyplň všetkyúdaje. Nakoniec získaš ID kód v tvare UA-XXXX-YY
  20. 20. Google Analytics - inštalácia 2/24. vytvoriť súbor /res/values/analytics.xml<?xml version="1.0" encoding="utf-8" ?><resources> <string name="ga_trackingId">UA-XXXX-YY</string> <bool name="ga_autoActivityTracking">true</bool> <bool name="ga_reportUncaughtExceptions">true</bool></resources>5. upraviť jednotlivé Activity@Overridepublic void onStart(){ super.onStart(); EasyTracker.getInstance().activityStart(this);}@Overridepublic void onStop() { super.onStop(); EasyTracker.getInstance().activityStop(this); //}
  21. 21. Google Analytics - inštalácia 2/24. vytvoriť súbor /res/values/analytics.xml<?xml version="1.0" encoding="utf-8" ?><resources> <string name="ga_trackingId">UA-XXXX-YY</string> <bool name="ga_autoActivityTracking">true</bool> <bool name="ga_reportUncaughtExceptions">true</bool></resources>5. upraviť jednotlivé Activity@Overridepublic void onStart(){ super.onStart(); EasyTracker.getInstance().activityStart(this);}@Overridepublic void onStop() { super.onStop(); EasyTracker.getInstance().activityStop(this); //}
  22. 22. Google Analytics - štatistiky- ktoré obrazovky sú najviac zobrazované (pohyb po aplikácii)- lokalita a jazyk používateľov- mobilné zariadenia, rozlíšenia, operátori (chýba Android verzia)- verzie aplikácie (v2)- sledovanie cieľov a sledovanie ecommerce (In-App payment)- vlastné udalosti- sledovanie časov (v2)
  23. 23. Google Analytics - realtime- počet aktívnych používateľov, pomer noví / starí- aktuálne zobrazené obrazovky- verzie- lokalita
  24. 24. Google Analytics - sledovanie udalostíPoužitie@Overridepublic void onClick(View v) { Tracker myExistingTracker = EasyTracker.getInstance().getTracker(); myTracker.trackEvent("kategoria", "akcia", "menovka", [hodnota]); ...}Štatistika (Obsah/Udalosti)
  25. 25. Ďakujem za pozornosť Priestor pre otázky www.matj.sk/androidcode Matúš Jančík @matusjancik fb.com/matj.sk

×