• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    LWEEKAndroid development
    Diskuse o vývoji aplikací pro platformu Android.
    -----------------
    Tipy, Triky, Postřehy, Začátečnický help, Nápady na nové aplikace.

    Oficiální developerská stránka: http://developer.android.com
    Něco málo v češtině na WiKi android fora: http://wiki.androidforum.cz/index.php/Programov%C3%A1n%C3%AD
    Článek na Zrojáku: http://zdrojak.root.cz/clanky/vyvoj-pro-android-ii/

    Docela zajímavé tutoriály přímo od vývojářů ze Sony Ericsson:

    na tvorbu vlastního View adapteru
    http://blogs.sonyericsson.com/developerworld/2010/05/20/android-tutorial-making-your-own-3d-list-part-1/

    zajímavý nápad na zoomování jedním prstem - aneb vytváření gest
    http://blogs.sonyericsson.com/developerworld/2010/05/18/android-one-finger-zoom-tutorial-part-1/
    rozbalit záhlaví
    SUK
    SUK --- ---
    FRENNET: Zeptam se, co je to HTPA? Co jsem nasel na googlu moc na programovani nevypadalo :D
    MAKROUSEK
    MAKROUSEK --- ---
    FRENNET: Android se programuje zhusta tak, ze davas dohromady knihovny. Treba tady mas ruzne kalendare, ktere muzes pouzit: https://github.com/wasabeef/awesome-android-ui/blob/master/pages/Calendar.md
    FRENNET
    FRENNET --- ---
    Zdravim!
    Dostala jsem napad na jednu apku(?)/kalendar s informacemi pro kazdy den. Ona ta apka(?) uz existuje, ale ne v cj a v katastrofickem stavu ( dle recenzi je to nepouzitelny shit). Tak ji chci napsat dle svych predstav. No jsem uplny novacek programovanim nepolibeny. Hledala jsem nejake navody a dopatrala se k moznostem:
    1. Napsat ji v Java (znamena ucit se za pochodu pri psani).
    2. Napsat ji v HTPA(coz mi prijde schudnejsi, trochu to znam).
    Co je lepsi?
    Dale pak: existuji nejake volne dostupne predepsane neco? V tomto pripade kalendar? Ze bych si ho pak upravila a doplnila dle sebe.
    A tohle je hnuso otazka. Da se stahnout uz hotova apka a s ni pracovat-prelozit, doplnit atd.?
    Diky
    RADDINO
    RADDINO --- ---
    REDTIME: Díky. Použil jsem nějaký generátor, tak snad se v tom nikdo nebude hrabat.
    REDTIME
    REDTIME --- ---
    RADDINO: nikdo neříká, že kvůli tomu musíš mít vlastní web, stačí je napsat (můžeš si vygooglovat sample nebo jsou i generátory) a umístit je veřejně do google docs / dropbox / jakýkoliv jiný cloud.
    RADDINO
    RADDINO --- ---
    "Aplikace obsahuje soubor APK s kódem verze 1, který požaduje následující oprávnění: android.permission.CAMERA. Pro aplikace s těmito oprávněními v souboru APK je nutné definovat zásady ochrany soukromí."

    Jak tohle řešit, pokud se jedná o malou appku, která nebude mít web? Řešili jste to někdo?
    H_U_N_T_E_R
    H_U_N_T_E_R --- ---
    RADDINO: konstanta "utf8" -> viz. přetížení o jednom parametru, co jsem poslal zde: [ H_U_N_T_E_R @ Android development ]
    RADDINO
    RADDINO --- ---
    H_U_N_T_E_R: co prosím dělá textEncoding?
    GIOMIKY
    GIOMIKY --- ---
    DRIZDIK: diky moc. Tam hde jeste o to, ze je to webview, kde je stranka, na ktery odchytavam javascriptem touchdown atp. Tudiz bych potreboval jeste nejak odlisit gesto pro stranku a pro aplikaci. S refreshview jsem problem nemel.
    Kdyz pises, ze je to nejhorsi zpusob... jak by to melo byt spravne?
    A kde se takovy veci dozvedet? Zatim googlim a nejcasteji cerpam z android developer stranky. Pak sem nasel nejaky prastary tutorial na rootu, ale ten je asi moc obecny.
    Predem diky za trpelivost.
    DRIZDIK
    DRIZDIK --- ---
    GIOMIKY: Pokud potřebuješ jen to tak ti stačí jakýkoliv view a odchytávat na něm touch eventy a detekovat swipe .. buď si to napsat sám, nebo implementovat nějakej guesture listener. Na tuhle událost potom vyměnit URL v jediném webview .. ale je to asi nejhorší způsob jak udělat appku :-D
    GIOMIKY
    GIOMIKY --- ---
    DRIZDIK: Me by bohate stacilo, abych mohl pri swipe vlevo vpravo vymenit stranku. Neni nutne mit nekolik webview. Na kazdy pad s tim docela bohuju. Zkousim NestedScrollView, ale ani mi to nezachytava eventy. Tak nevim. :-(
    DRIZDIK
    DRIZDIK --- ---
    GIOMIKY: Tady už máš spoustu možností od obsluhování tohodle v javascriptu uvnitř stránky, přes nějaké fragmenty ve viewpageru po implementaci guesture handleru a složitějšího hraní, protože mít několik webview vedle sebe nebude zrovna hezké pro zdroje v telefonu, kor když budeš svipovat a ty webview ti budou umirat a zase se startovat
    GIOMIKY
    GIOMIKY --- ---
    Ahoj, jeste jeden dotaz. Mam jednoduchou apku ze sablony s menu. Tzn. Na strane mi vyskoci menu. Mam tam nadefinivanych asi 5 polozek. Kdyz vyberu polozku, tak se mi v webView nacte jedna stranka. Zvladl jsem jeste naimplementovat refresh. Ale co bych jeste potreboval je scrollovat mezi polozkama menu pomoci swipe doprava doleva. Vsechno to mam v jedne tride, pricemz override na refresh a menu je to, co jsem dopsal. Z googleni tusim, ze bych mel pouzit fragmenty?! Bohate by mi stacilo, abych zachytil swipe do stran, ktery kdyz provedu, tak se okraj jako zschveje. Jenom netusim, co bych mel implementovat a jak. Predem diky za rady.
    RADDINO
    RADDINO --- ---
    H_U_N_T_E_R:
    H_U_N_T_E_R: díky, vyzkouším.
    H_U_N_T_E_R
    H_U_N_T_E_R --- ---
    H_U_N_T_E_R: jo a ještě převod stringu z UTF16 na UTF8
    public static String toEncoding(String str) throws UnsupportedEncodingException {
    return new String(str.getBytes("utf8"), "utf8");
    }
    H_U_N_T_E_R
    H_U_N_T_E_R --- ---
    RADDINO: jo, embeduju si tam ale svoje fonty:
    BaseFont bfAntigo = BaseFont.createFont("assets/fonts/antigonilight.ttf", textEncoding, BaseFont.EMBEDDED);
    Font antigo16 = new Font(bfAntigo, 15);
    ...
    PdfPCell cellCelkemCaption = new PdfPCell(new Paragraph(TextNormalizer.ToEncoding("CELKEM K ÚHRADĚ", textEncoding), antigo16));
    RADDINO
    RADDINO --- ---
    Používáte někdo iText na generování PDF z aplikace? Už jsem to nějak rozchodil, ale nejdou mi české znaky (ř,č,š..). Neřešil to někdo? Z stackoverflow jsem to napochopil. Díky
    GIOMIKY
    GIOMIKY --- ---
    GIOMIKY: aha tak zabralo vypnout a zapnout
    GIOMIKY
    GIOMIKY --- ---
    Ahoj, mel bych takovej lamma dotaz. Mam webView. Mam webStranku. Na webStrance mam javascript. Javascriptem se pokousim zachytit touchdown, touchmove, touchend. Ale bohuzel mi na pristroji nefunguje zachytavani techto eventu javascriptem. Je to HTML5 Canvas nejak takhle:

    canvas.addEventListener('touchend', touchend, false);

    function touchmove(ev){
    ev.preventDefault();
    var gnEndX = ev.changedTouches[0].pageX;
    var gnEndY = ev.changedTouches[0].pageY;
    ...
    }

    A webView je standardni neco na zpusob:

    mWebView = (WebView) findViewById(R.id.webViewPage);
    WebSettings webSettings = mWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    ... loadUrl ... atd.

    Ale jak rikam. Kdyz chci zachytit pohyb prstem po obrazovce na webView, tak se nedeje vubec
    nic. Predpokladam, ze pohyb prsty zachycuje andoroid aplikace a pokousi se je handlovat sama...
    a pritom nema zadny handler. A k tomu javascriptu se to vubec uz nedostane jako touchmove.

    Je to tak? Co s tim, aby mi stranka ve webView zacala zpracovavat touch eventy v Javascriptu?

    Predem diky za jakoukoliv radu (google jsem zkousel... rad spousty, ale asi to bude logicka chyba designu?)
    RADDINO
    RADDINO --- ---
    YAZZMAN:
    DRIZDIK: díky, nastuduji.
    DRIZDIK
    DRIZDIK --- ---
    RADDINO: Určitě bys měl persistovat někam ty data, ať už nějaká struktura v paměti na fragmentu nebo přímo DB, pokud ti appka spadne, tak budeš schopný obnovit ten stav.
    Místo linearu bych určitě použil recyclerView, kde nebudeš strojově vytvářet imageView, ale jen zavoláš datasetChanged nad adapterem a budeš moc jednoduše handlovat itemClick
    YAZZMAN
    YAZZMAN --- ---
    RADDINO: nebude jednodussi misto generovani ImageView pouzit RecyclerView? Jakoze o hodne jednodussi?
    Kliknutím sem můžete změnit nastavení reklam