• ú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í
    DRIZDIK
    DRIZDIK --- ---
    GORG: Na jaký si platformě? Jestli tvůj uživatel ty zařízení vidí. Používá AS stejný SDK z jakého voláš ADB?
    MAKROUSEK
    MAKROUSEK --- ---
    GORG: Zkus Eclipse.
    GORG
    GORG --- ---
    Android studio píše No connected devices navzdory tomu, že "adb devices" telefon normálně vidí? Říká to někomu něco?
    Instaloval jsem tam universal adb driver.. pak zkusil Google USB driver z SDK manageru

    Android Studio doesn't see device - Stack Overflow
    http://stackoverflow.com/questions/16596877/android-studio-doesnt-see-device
    Tady řeší otázku na to samé, ale ty odpovědi myslím úplně míjí samu otázku. Popravdě jediné, co potřebuju je dostat se k logcat, ale nějakým přehledným způsobem.
    ROTTWEILER
    ROTTWEILER --- ---
    REDTIME: Osobně jsem to dělal a není to zas tak náročné.
    REDTIME
    REDTIME --- ---
    FTN: aha... no obecne drzet si vyvoj nativnich aplikaci pro obe platformy jednim clovekem je temer nerealny pozadavak... na to uz je potreba prave firma a celkem vysoky rozpocet.... osobne bych radeji volil neco ve stylu phonegap + cordova, coz je udrzitelne jednim clovekem a navic pomerne snadno realizovatelne pokud jim ta aplikace defakto funguje na webu
    FTN
    FTN --- ---
    REDTIME: Nemusí. "Problém" je v tom, aby uměl/i oba systémy.
    REDTIME
    REDTIME --- ---
    FTN: a ten problem je, ze to musi byt jeden clovek/jedna firma... nebo je to jedno?
    FTN
    FTN --- ---
    Zdravím všechny! Sháním doporučení, nebo někoho, kdo by byl schopný napsat aplikaci pro Android. Je to práce pro malou reklamní agenturu a klientem je realitní společnost. Takže se jedná (tuším) o napojení na vyhledávání realit, které jim teď funguje na webu. Grafiku bude nejspíš řešit ta reklamka. Problém je, že by totéž potřebovali pro iOS. :) Díky za tipy, asi tím zaspamuju ještě vedlejší téma.
    DRIZDIK
    DRIZDIK --- ---
    ISHY: Eclipse ti jednoduše neumožní používat buildTypes a flavors.
    ISHY
    ISHY --- ---
    Ahoj všichni. Chtěl jsem se zeptat zda je nějaký zásadní rozdíl mezi vývojem v Eclipse a Android Studiu?
    LWEEK
    LWEEK --- ---
    Zdravím osazenstvo! Rád bych vás pozval na Zoo Hackaton do Liberce. Mobilní vývojáři jsou víc než vítáni! :) http://gdgscl.github.io/zoohackaton/
    VIRTUALVOID
    VIRTUALVOID --- ---
    MAKROUSEK: custom build CM12 5.0.2 na LG G3 moze byt ?
    MAKROUSEK
    MAKROUSEK --- ---
    KOHN: Nepomuze. Prave.
    KOHN
    KOHN --- ---
    MAKROUSEK: neoficial fusion rom s 5.0.2 na galaxy sII ti nejspíš nepomůže,co?co mam v nexusu teď z hlavy nevim ale myslim že je to 5.0.1 stock...
    MAKROUSEK
    MAKROUSEK --- ---
    Nemate nahodou nekdo pristup k 5.0.2 zarizeni na debug appky? Mam nejake error reporty a nemam kde zreplikovat...
    DRIZDIK
    DRIZDIK --- ---
    Používá někdo Spoon k instrumentačnímu testování? Pořád mi to nějak špatně bere screenshoty, když vynucuju orientace obrazovky.
    2SDPERCY
    2SDPERCY --- ---
    Díky
    FALCO
    FALCO --- ---
    2SDPERCY: Teda kromě toho že jsi ve špatném auditku a s tím jak píšeš se asi hůře googli. Odpověď není jednoduchá. Je to náročná operace kdy musíš lehce hacknou prohlížeč (starou verzi). Nahrát Flash player a modlit se že to na tvém zařízení pojede. A pokud ano tak nejspíše pekelně pomalu. TL;DR Odpověď je ze to nejde.
    2SDPERCY
    2SDPERCY --- ---
    Ano Falco
    FALCO
    FALCO --- ---
    2SDPERCY: flash player?
    2SDPERCY
    2SDPERCY --- ---
    Dobrý den rady bych se zeptal jestli nevíte o nějakém vlas player který funguje na adrojdu pro brozdani na metu?
    KEVIN182
    KEVIN182 --- ---
    PISKVOR: Díky, to je přesně ono :)
    PISKVOR
    PISKVOR --- ---
    KEVIN182: Jo, distribuce klíčů bude problém - mohl bys ho možná nějak automaticky generovat z userid+app version, ale nejsem si jist, zda to pomůže proti tomu typu útoku, kterej řešíš :(
    Nemusíš mít numerický uživatelský ID - třeba HabitRPG používá UUID, to se hádá velmi, velmi blbě ;)
    KEVIN182
    KEVIN182 --- ---
    PISKVOR: Díky, to jsem si myslel...úplně jako nyx to dělat nemůžu (předpokládejme, že není k mob.appce webové rozhraní). Když bych měl app-user-specific token, tak bude problém s distribucí, nebo se mýlím?

    K tomu bych měl ještě jednu otázku, která s tím nepřímo souvisí (sorry za OT) - použití na serveru generovaného tokenu pro requesty je určitě lepší než použití ID uživatele, že? Pokud by se útočník snažil request podvrhnout, tak token cizího uživatele nemá prakticky šanci získat, kdežto u ID by mohl zkoušet zvyšovat/snižovat o 1 - samozřejmě se nabízí varianta Stringových ID v DB, ale to bych teď neuvažoval. Díky moc!
    PISKVOR
    PISKVOR --- ---
    KEVIN182: Physical access = game over, root = taky game over, s tim nic nenadelas. No, a nebo to muzes resit trochu podobne jako nyx (byt ten ma jen token, ne klice), udelat private key app-user-specific, takze pokud si ho uzivatel vytahne, tak ... congratulations, muze sam delat ty samy requesty, ktery za nej dela appka.
    KEVIN182
    KEVIN182 --- ---
    Zdravím, chtěl jsem se zeptat, jak uchováváte Private Key potřebný pro API komunikaci. Vemu-li v potaz následující odkaz, který se návrhem API zabývá:
    Designing a Secure REST (Web) API without OAuth
    http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/

    tak tam zmiňuje:
    What about the scenario where you are writing a public-facing API like Twitter, where you might have a mobile app deployed on thousands of phones and you have your public and private keys embedded in the app?

    On a rooted device, those users could likely decompile your app and pull your private key out, doesn’t that leave the private key open to being compromised?

    Yes, yes it does.

    So what’s the solution?

    Taking a hint from Twitter, it looks like to some degree you cannot avoid this. Your app needs to have its private key (they call it a secret key) and that means you are open to getting your private key compromised.

    What you can do though is to issue private keys on a per-application-basis, instead of on a per-user-account basis. That way if the private key is compromised, that version of the application can be banned from your API until new private keys are generated, put into an updated version of the app and re-released.

    What if the new set of keys get compromised again?

    Well yes, that is very possible. You would have to combat this in some way on your own, like encrypting the keys with another private key… or praying to god people will stop hacking your software.

    Regardless, you would have to come up with some 2nd layer of security to protect that new private key, but at least there is a way to get the apps deployed in the wild working again (new version) instead of the root account being locked and NONE of the apps being able to access the service again.
    PISKVOR
    PISKVOR --- ---
    REDTIME: Teoreticky by mohl byt v telefonu nejaky HW AES-on-chip, ale...
    PISKVOR
    PISKVOR --- ---
    DATEL: Copato je, XOR? No to je bezpecnost jako prase. Jak pisu: "rychleji" znamena nejspis "hloupejsi algo" znamena "nahovno sifrovani" znamena "feel-good ochrana;" pres to vlak nejede, obavam se (Networking Truth #7: It Is Always Something). A mimochodem, jak predtim a potom je ten proces zabezpecenej? Neboli - nejsou to trezorovy dvere na papundeklovou zahradni boudu? (#8:It Is More Complicated Than You Think).

    Vratme se na uplny zacatek: proc? a proc? a proc chce zakos sifrovani, a jaky tim sleduje KONECNY cil? ("Aby mel zabezpeceni" neni konecny cil, za tim je jeste nejaky dalsi "proc"). Cucham XY Problem.
    REDTIME
    REDTIME --- ---
    DATEL: Imho na posunovani bytu neni moc co optimalizovat. A co znamena pomale? Dnesni CPU v telefonech zase nejsou orezavatka a da se pouzit castecne i GPU... i kdyz to je problematicke. Ale obecne, co pomuze, tak je paralelni zpracovani.
    DATEL
    DATEL --- ---
    PISKVOR: no, to jsme se jim taky snažili vysvětlit, že to je prostě náročné na CPU a že nějaké urychlení bude znamenat úplné přepsání systému šifrování a dešifrování těch datových kontejnerů, tak jestli by jim opravdu nestačil zaheslovaný ZIP, ale ne, prostě to je málo bezpečné.

    Existuje nějaká možnost, jak rychleji provádět tu změnu bajtů? V PHP jsem si udělal nástroj pro dešifrování, lze z toho vyčíst použitý algoritmus:

    // $key je pole bytů
    while (!feof($in)) {
        $buffer = fread($in, 8192);
        $len = strlen($buffer);
        $position = ftell($in) - $len;
        for ($i = 0; $i < $len; $i++) {
            $key_idx = ($position + $i) % $key_count;
            $delta = $key[$key_idx];
            $buffer[$i] = chr((ord($buffer[$i]) - $delta));
        }
        fwrite($out, $buffer);
    } 
    
    PISKVOR
    PISKVOR --- ---
    DATEL: Tvůj (zákošův) problém je tradeoff: cokoli silnějšího než ZIP s heslem bude náročný (pomalý), a cokoli rychlejšího bude víc práce než užitku (kid-sister encryption).
    Kliknutím sem můžete změnit nastavení reklam