• ú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í
    ROTTWEILER
    ROTTWEILER --- ---
    DACAN: No o to ani nejde. Problém je v tom, že to komplikuje celý lifecycle. Já potřebuji sessionId a rvát do onCreate hned AsyncTask a ProgressBar celý kód značně zkomplikuje. Jo, UI může být neresponsní, ale když není nic vidět, na co by ten uživatel klikal? Víceméně jsem našel i rady od Android vývojářů frameworku, že je blbé, když se zavolá získání nastavení při kliknutí na tlačítko, ale při startu/umírání aktivity si myslím, že to není problém, ale klidně mi to vyvraťte?

    Každopádně udělal jsem aspoň nějaké optimalizace a použil .apply místo .commit a zkusím všechno načíst ASAP, aby to nebylo skutečně nikdy na tlačítku, což jsem myslím ani neměl.
    DACAN
    DACAN --- ---
    Samozrejme. A to, ze ti nejakej task bezi async zajistuje, ze ti tvoje aktivita nezamrzne a progress bar zobrazi. Je uplne jedno, jakdlouho si myslis, ze to bude "typicky" bezet. Na vyvojovym telefonu nameris 50 ms nejakou serializaci a ulozeni na SD, ale pak to pustis na nejaky plecce s plnou kartou a uvidis, k cemu si takovej pattern vynucujou :)
    ROTTWEILER
    ROTTWEILER --- ---
    PISKVOR: A jak pak řešit případy, že z těch nastavení načítám něco, co je nezbytné pro chod aktivity? např. data do formuláře apod.? A ta aktivita se nedokáže bez toho zobrazit? Dát tam ProgressBar?
    PISKVOR
    PISKVOR --- ---
    PISKVOR: A to nemluvim o tom, ze "temer instantne" z pohledu uzivatele muze znamenat stovky tisic cyklu z pohledu procesoru. Tak jo, dame si ted sto milisekund pauzu, to nikdo nepozna ;)
    ROTTWEILER
    ROTTWEILER --- ---
    PISKVOR: Všechno skrze SharedPreference by mělo být tedy schováno v AsyncTask?
    PISKVOR
    PISKVOR --- ---
    ROTTWEILER: "ukladani do souboru probehne temer instantne" je predpoklad, ktery ma spoustu moznosti te kousnout do zadku. Write-fail-wait-retry-fail-wait more-retry-success na urovni pod IO cally je typicky priklad flashove pameti, o ruznych abstrakcich maskovanych za filesystem nemluve (a zapis na pomalou SD kartu je taky vsechno, jen ne "instantni").
    ROTTWEILER
    ROTTWEILER --- ---
    Taková otázka do pléna, mělo by být všechno, co se dělá skrze SharedPreference zpracováváno v AsyncTask? Viděl jsem spoustu příkladu, kde kód pro ukládání je právě v AsyncTask, ale nenašel jsem žádný argument proč. Snad jedině, že je to IO operace (ukládání do souboru), ale vždy proběhne téměř instantně, že to uživatel stejně nepozná?

    Díky za jakou informaci.
    MICCY
    MICCY --- ---
    Víte prosím někdo jak z Aktivity skrýt aktivnímu fragmentu ikonu v ActionBaru? Konkrétně jeden fragment má vlastní menu kde má refresh ikonu a tu potřebuju skrýt, když se v hlavní aktivitě vysune Navigation Drawer.

    Dík za radu.
    DACAN
    DACAN --- ---
    H_U_N_T_E_R: ano, bsod zatim ne.
    VIRTUALVOID
    VIRTUALVOID --- ---
    H_U_N_T_E_R: presne z tohoto dovodu som prestal emulatory riesit. a ked uz aj nahodou potrebujem ine rozlisenie/tablet/etc. tak do toho genymotion investujem par minut...
    H_U_N_T_E_R
    H_U_N_T_E_R --- ---
    DACAN: vám to funguje bez problémů? Krom toho, že se to nesnese s hyper-V (což bych asi dočasně přežil), tak po instalaci toho jejich driveru mám co 10min BSOD.
    DACAN
    DACAN --- ---
    LOPIK: [ ANONYM_CZ @ Android development ]

    rychlost dostatecna, deploy rychlejsi nez na mobil. stahnes si v SDK intel image, v zarizeni nastavis x86 architekturu a funguje.

    musis jeste v sdk manageru stahnout nainstalovat
    /extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.exe
    viz:
    Using the Emulator | Android Developers
    http://developer.android.com/tools/devices/emulator.html
    ANONYM_CZ
    ANONYM_CZ --- ---
    LOPIK: genymotion jsem nezkousel, ale v normalnim AVD (Android Virtual Device Manager) muzes zkusit vyrobit device s CPU Intel Atom (x86) .. ta emulace pak byla o dost rychlejsi, co si pamatuju
    CUCHULAIN
    CUCHULAIN --- ---
    NESCIUS: /etc/mtab nemá.
    vold.fstab má jinou strukturu než /etc/fstab na linuxu, takže to moc nepomůže.

    např. ten první /storage/extSdCard připojenej vypadá takhle:
    /dev/block/vold/179:17 /storage/extSdCard vfat rw,dirsync,nosuid,nodev,noexec,noatime,nodiratime,uid=1000,gid=1023,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
    
    PISKVOR
    PISKVOR --- ---
    LOPIK: Genymotion; je výrazně rychlejší, než ten default.
    Genymotion
    http://www.genymotion.com/
    (je potřeba registrace - zdarma)
    LOPIK
    LOPIK --- ---
    Ahoj, rád bych si zkusil nějaký základy, ale trošku mě zlobí emulátor zařízení - prostě mi to moc nestíhá počítač (emulátor je nějakej defaultní co se stáhnul s aktuálním Eclipse - tuším že android 4.2. Nemáte nějakej tip na něco míň náročnýho, jestli to vůbec existuje - jde mi opravdu jen o naučení základů na úrovni "Hello World"..
    NESCIUS
    NESCIUS --- ---
    CUCHULAIN: hele, má android mtab? zkus to prvně normálně mountem a pak si to vopiš z mtabu respektive outputu mount příkazu
    CUCHULAIN
    CUCHULAIN --- ---
    jak mám ve vold.fstab nastavit, aby se mi připojily všechny oddíly na externí sdcard?
    mám tam 4 primární FAT32.

    zkusil jsem google + xda-developers a zatím nic funkčního.

    aktuálně mám ve vold.fstab tohle (kromě hromady dalších pro externí usb):
    {
            supported_exfat = yes
    }
    dev_mount sdcard /storage/extSdCard auto /devices/platform/s3c-sdhci.2/mmc_host/mmc1/
    dev_mount sdcard2 /storage/extSdCard2 2 /devices/platform/s3c-sdhci.2/mmc_host/mmc1/
    dev_mount sdcard3 /storage/extSdCard3 3 /devices/platform/s3c-sdhci.2/mmc_host/mmc1/
    dev_mount sdcard4 /storage/extSdCard4 4 /devices/platform/s3c-sdhci.2/mmc_host/mmc1/
    


    První namontuje v pohodě, další ne.
    Díky za tipy :-)
    REDTIME
    REDTIME --- ---
    MASSERATTI: Ale zajem by i byl. Jen mam zajem se podilet na vecech, ktere maji smysl. U tohoto "projektu" se mi zatim zda, ze je spis nejaky socilogicky experiment nez realna tvorba :)
    MASSERATTI
    MASSERATTI --- ---
    REDTIME: :) Beru to jako ze nemas zajem. Dik. )
    SIRLOON
    SIRLOON --- ---
    hola. resim pentesting nasi appky na androidu a hledam nejakej tool, kterym bych mohl dumpnout pamet appky (appku v debugu si dumpnu z monitoru, ale takovou si lidi z play nestahnou) abych overil zda tam nejsou videt nejake citlive informace. Navody pisou ze mam sestrelit appku pres kill, ale bohuzel crash log to psalo jen do and 2.3. a ja uz jedu na 4+ kde to nefunguje. Zkousel sem programy na cheatovani ve hrach, ale ty hledaji jen cisla, nicmene ja bych spis uvital kompletni dump a v nem se pak uz pohrabu hexa editorem
    diky za pripadne rady a nasmerovani
    Kliknutím sem můžete změnit nastavení reklam