• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    SHINIGAMIAndroid - otevřená mobilní platforma
    SKAUT
    SKAUT --- ---
    Přimlouvam se za níže uvedený Baseus, několikaletý spokojený uživatel
    TOOMIX
    TOOMIX --- ---
    JIMX: mám tuhle a nabije mi i notebook (HP 640G8)

    https://www.aliexpress.com/item/1005004586660767.html
    JIMX
    JIMX --- ---
    Nemáte někdo doporučení na nějakou USB-C nabíječku s rychlým nabíjením do auta ... jestli se nepletu, tak auto zásuvka má 5A pojistku, tak by to mohlo dát nějakých 60W ...
    NECROMAN
    NECROMAN --- ---
    JOHNY_G
    JOHNY_G --- ---
    ADM: Na starých Androidech to uživatel celkem pod kontrolou měl, a dopadlo to jak to dopadlo :-D.
    ADM
    ADM --- ---
    JOHNY_G: njn, me na tyhle filozofii proste triggeruje to, ze jako uzivatel takovou zasadni vec nemam pod kontrolou tak jako na pocitaci
    KULA
    KULA --- ---
    RAINBOF: už je to vymyšlené :) zítra ráno to bude dělat radost někomu dalšímu.
    JOHNY_G
    JOHNY_G --- ---
    PEJR: Nechám stranou, nakolik je vhodné se na podobné věci ptát ChatGPT a nakolik je ta odpověď přesná, a jen upozorním na to, že původní dotaz vedl na Clear all v Recent apps, a můj nejsilnější point byl v tom, že odswipnutí ani clear aplikace neukončuje :-)).
    PEJR
    PEJR --- ---
    btw.. co říká chatgpt:

    proč nevypínat aplikace na androidu
    ChatGPT
    Nevypínání aplikací na Androidu se často doporučuje z několika důvodů:

    Rychlejší spuštění: Android ukládá aplikace do paměti (RAM) i po jejich zavření, což umožňuje rychlejší spuštění při následném použití. Pokud často zavíráte a znovu spouštíte aplikace, může to způsobit zbytečnou zátěž na systém a zpomalit jeho výkon.

    Šetření baterie: Opakované spouštění aplikací může spotřebovávat více energie, než by zůstávaly v paměti. To může vést k vyššímu využití baterie.

    Správa paměti: Android má mechanismus řízení paměti, který automaticky uvolňuje paměť, když je potřeba. Pokud vypínáte aplikace ručně, můžete narušit tento mechanismus a způsobit problémy se správou paměti.

    Aktualizace a upozornění: Některé aplikace mohou potřebovat běžet v pozadí, aby mohly aktualizovat data nebo vám zasílat důležitá upozornění. Pokud je vypnete, můžete ztratit důležitá oznámení.

    Stabilita systému: Android je navržen tak, aby mohl efektivně spravovat běžící aplikace. Vypínání aplikací může způsobit nestabilitu systému nebo problémy s funkcemi, které spoléhají na pozadí běžících procesů.

    Místo toho je lepší nechat Android spravovat běžící aplikace a spoléhat se na jeho schopnost správy paměti a energie. Pokud se setkáte s problémy spojenými s výkonem nebo baterií, je lepší se zaměřit na optimalizaci nastavení a aplikací než na ruční vypínání aplikací.
    DUNICAN
    DUNICAN --- ---
    Mám ještě dotaz ohledně ovládání hlasitosti, který mi na Androidu dlouhodobě přijde velmi špatný. Konkrétně bych chtěl, aby 1) ovládání bylo mnohem jemnější (ta nejnižší nenulová pozice mi přijde šíleně hlasitá), 2) aplikace neměly možnost zablokovat ztlumení (např. během hovoru na Whatsappu nelze telefon ztlumit na nulu, což mi přijde vyloženě skandální).

    Vyzkoušel jsem různé aplikace, které tohle chování mění, ale žádná mi nepřišla dobrá. Máte někdo nějaký tip v tomhle směru?
    JOHNY_G
    JOHNY_G --- ---
    ADM: Jo a úplně jsem zapomněl zareagovat na ten WhatsApp/Viber/Signal. Messengery se v principu po bootu spouštět nepotřebují. Notifikace chodí z Firebase, a teprve po kliknutí potřebuješ otevřít nějaký chat a doptat se serveru, co je nového. V praxi to samozřejmě není pravda a skoro určitě se spouští, protože tyhle konkrétní aplikace si musí naplánovat synchronizace, backupy, aktualizovat šifrovací klíče a bůhví co ještě, ale v principu není chatovací aplikace něco, co by muselo běžet na pozadí, i když tak intuitivně působí.
    JOHNY_G
    JOHNY_G --- ---
    ADM: Zkusím to napsat jednoznačněji. Spustit se po bootu může úplně každá aplikace, a to bez zvláštního oprávnění. Ale dělat nemůže skoro nic, dokud se nedostane do popředí, takže zůstane v suspendovaném stavu, bez nároků na systémové prostředky. Já třeba pro jednoho klienta dělám aplikace, které vyžadují nepřetržitou konektivitu na Bluetooth. Tj. permanentní scan, automatické spojení, nepřerušená komunikace. Abych toho dosáhl, mám v manifestu registrované spuštění po bootu, ale hned poté spouštím službu na popředí, která se ohlásí notifikací ve stavovém řádku, a tam už musí po celou dobu běhu služby zůstat. Aby tam nevisela jen tak naprázdno, využívám ji k informování o aktuálním stavu spojení a základní interakci se zařízením (máme tam tlačítka), ale být tam musí. Pokud ty u dané podezřelé aplikace žádnou nevidíš (a tedy sám sis ji ručně v informacích o aplikaci neskryl, což jako uživatel můžeš), tak ta aplikace nic nedělá. Maximálně tu a tam nějaký malý nárazový task. Jestli doručení pushky umí spustit aplikaci, tak to na celém principu nic nemění a je to stejny příběh jako s tím bootem. Možná se spustí, ale nedělá nic. Dokonce ani neví, že nějakou notifikaci dostala, a už vůbec ne co v ní je :-).
    ADM
    ADM --- ---
    JOHNY_G: jeste jsem si to teda cetl, a mozna je to tak, ze po bootu muze aplikace vyuzit jen omezenych a presne definovanych API androidu, a ne spoustet svuj (cely) vlastni kod
    ADM
    ADM --- ---
    JOHNY_G: jo, dival jsem se a opravdu ten pripad s boltem je push notifikace z firebase cloud messages, to me nenapadlo (bylo mi to divny, kdyz jsem aplikaci nepouzil nejaky ten mesic)

    pouzivam microg, tak jsem se kouknul, a muzu registraci aplikace k FCM vypnout, a mam i volbu vypnout "start app on push message" (coz jsem u par aplikaci ihned udelal), takze tohle muze byt ten mechanismus, jak se aplikace typu whatsapp/viber/signal apod. dostane k lizu a vubec se spusti - porad uvazuji situaci po cistym bootu

    pokud by to bylo pouze takhle, tak je to naprosto v poradku, a je to v souladu s tim, co pises

    stale mam ale pocit, ze minimalne v minulosti v manifestu konkretnich app ta moznost spusteni aplikace po bootu byla, a nebo se toho dalo nejak oklikou dosahnout, a pritom se nejednalo se o user controlled privilege, coz je dle meho zasadni chyba, na mem zarizeni mam mit moznost rozhodovat o tom, jaky aplikacni kod se ma spoustet a kdy ja chci.

    moznost spustit aplikaci az na push FCM message to samozrejme resi a tak je to v poradku a spravne (pokud tedy zavru obe oci nad extremni vendor lock-in zavislosti na googlu), ale protoze sam nevim, jaka je aktualni situace (rekneme v A13) chtel bych potvrdit ci vyvratit, zda vyvojar aplikace dokaze dosahnout situace, ze po bootu bez uzivatelske interakce dosahne spusteni aplikace bez FCM push message

    pises "prakticky nemozne", no ja tomu taky tak rozumim , ale driv to slo a s tim jak se to rychle meni, tak nevim zda je to mozne i ted, a ty jako vyvojar bys to treba mohl vedet
    RAINBOF
    RAINBOF --- ---
    JOHNY_G: to plati v linuxu ale android je svoje kategorie :)
    JOHNY_G
    JOHNY_G --- ---
    RAINBOF: I 99 % je brzo :-). Plná paměť je užitečná paměť. Povinností operačního systému je ji v případě potřeby uvolňovat, ne držet prázdnou.
    JOHNY_G
    JOHNY_G --- ---
    ADM: Po bootu se může spustit libovolná aplikace bez oprávnění, ale jen v mezích, které jsem naznačil. Když má sychronizační službu, může se jednou za čas sychronizovat. Má-li widget, může ho jednou za čas aktualizovat. Pokud chce dělat cokoli vytrvalejšího, musí to být podmíněné zobrazením notifikace o službě na popředí. Pokud tam není, nic velkého neběží. Co se týče notifikací, tak tam jsou dva druhy:

    1) Lokální notifikace - ty můžou být buď vyvolané nějakou aktivitou uživatele, když je aplikace v popředí, nebo naplánovaným úkolem, a jejich spouštění řídí systémový plánovač. Když telefon používáš, tak to vyskočí v nastavený čas, když ne, tak v časovém okně vyhrazeném doze modem.
    2) Push notifikace odesílané serverem - ty chodí prakticky okamžitě bez ohledu na to, jestli je telefon zhasnutý nebo ne, ale už několik let nemají aplikace přístup ke cloud messagingu, pokud zrovna nemají aktivitu v popředí - tj. nekoukáš na jejich obrazovku. V ostatních případech je doručují Služby Google Play, které jsou součástí operačního systému, a aplikace se o její existenci dozví pouze v případě, že na ni klikneš. S extrémní pravděpodobností v ten moment aplikace vůbec neběží, i když z tvého pohledu zobrazila notifikaci. Proč nefungují po vynuceném ukončení aplikace, to je mi momentálně samotnému záhadou. Přísahal bych, že dříve to tak nebylo, ale bude to nějaký implementační detail Googlu, kterému nepotřebuju rozumět, jen o něm musím jako vývojář vědět :-)).

    Většina marketingových upozornění bývá typicky pushka.

    Tedy že by se aplikace "spouštěly a na pozadí něco dělaly" už je v posledních iteracích Androidu prakticky nemožné. Vždycky musíš něco vidět (obrazovku, notifikaci), aby mohla aplikace dělat něco víc, než pár sekund práce jednou za hodinu (ty hodnoty jsem vytáhnul z nosu, neber mě za slovo).
    RAINBOF
    RAINBOF --- ---
    ARIAEL: urco myslis tu osklivost pro exchange ze.


    JOHNY_G: zkusim to popatrat 50% je fakt brzo.
    ADM
    ADM --- ---
    JOHNY_G: skvely vysvetleni a shrnuti, diky za cas

    jak je tomu s opravnenim ... nazev varim z vody - run after boot ? protoze v seznamu managovatelnych opravneni to neni, a mam pocit, ze se na pozadi spousti kdejaka veledulezita appka, aby mi pak napriklad poslala notifikaci, ze jsem dlouho nejel boltem, a ma pro me slevu na pristi jizdu.

    tohleto jsem nikdy nepochopil, proc se spousteji a na pozadi neco delaji aplikace, ktery ja povazuji za ciste interaktivni, nebo minimalne vyzadujici user interakci az po ktere mohou provadet aktivitu na pozadi.
    Kliknutím sem můžete změnit nastavení reklam