Logo it.androidermagazine.com
Logo it.androidermagazine.com

I produttori di telefoni stanno scherzando con la gestione della memoria di Android e Google non sta facendo nulla al riguardo

Sommario:

Anonim

La società che produce il tuo telefono Android ha sbagliato la gestione della memoria Android. Poiché non vengono rispettate le migliori pratiche e in alcuni casi i requisiti effettivi per l'accesso a Google Play, gli sviluppatori di app stanno riscontrando un nuovo set di mal di testa se le app che creano devono funzionare mentre si sta guardando un altro schermo o si accende lo schermo off. Per fortuna, il team di Urbandroid ha portato le cose alla nostra attenzione con Dontkillmyapp.com. Qui troverai descrizioni dettagliate del problema, nonché una scorecard per i principali venditori Android che valutano il livello di abuso di ognuno con 1-5 pile di schifezze. adattamento

La dichiarazione sulla pagina GitHub del sito web spiega:

Alla fine, ogni sviluppatore Android indipendente è almeno parzialmente interessato da questo problema.

Noi di Urbandroid Team siamo fortemente colpiti dalla nostra app Sleep as Android e abbiamo raccolto così tante informazioni su hack e soluzioni alternative che abbiamo sentito la necessità di condividere le informazioni. Abbiamo iniziato contattando i singoli sviluppatori indipendenti con offerte per lo scambio di informazioni, che hanno portato all'idea di un approccio più efficace sotto forma di un sito Web open source.

Il "problema" è che le aziende che producono telefoni hanno cambiato il modo in cui funzionano i componenti Android fondamentali come Doze; hanno creato app progettate per spazzare e uccidere in modo aggressivo app che utilizzano risorse di sistema; e persino la creazione di whitelist che indicano quali app possono essere eseguite mentre non sono visualizzate sullo schermo. Ciò rende le app che devono funzionare in background, come l'app Sleep di Urbandroid come app Android che non è in grado di fare ciò che era previsto.

Tutto questo è nelle orecchie dello sviluppatore dell'app, poiché i clienti infelici non capiscono come funziona la gestione della memoria in Android (né dovrebbero farlo) e perché non è solo isolato dalla loro app interessata. I clienti infelici rendono gli sviluppatori infelici, il che è un mucchio di cinque cazzate per tutti noi.

Non tutto Android è aperto

Potresti pensare: "Allora? Android è open source e le aziende che lo usano possono fare quello che vogliono con il codice" e in una certa misura avresti ragione. Ma tutto ciò cambia non appena un produttore di telefoni desidera accedere a Google Play.

L'accesso a Google Play Store non è concesso liberamente: esiste un accordo che entrambe le parti devono seguire.

Per accedere a Google Play è necessario seguire alcune regole, molte delle quali a prima vista sembrano arbitrarie. Questa è una discussione più ampia per un altro articolo o due, ma il punto è che Google vuole avere un minimo di cose sul posto su ogni telefono in modo che ogni app nel Play Store funzionerà finché il telefono è su un supporto versione. In altre parole, se l'elenco di un'app dice che richiede Android 4 o versioni successive per funzionare, ogni telefono che esegue Android 4 o versioni successive dovrebbe essere in grado di installare e utilizzare l'app. Nessuna eccezione.

Esistono alcuni modi dettagliati in cui uno sviluppatore che desidera o ha bisogno di un'app per essere viva e in background, ogni volta che non guardi attivamente lo schermo, per farlo in modo coerente su tutti i telefoni. Google può quindi migliorare anche altre parti di Android e sapere con cosa non scherzare se desidera che tutte le app continuino a funzionare in modo da poter provare a rimanere conforme all'indietro.

Non sempre funziona. Ogni persona che ha avuto un telefono Nexus o Pixel ti dirà che le nuove versioni di Android spesso portano ad applicazioni che non funzionano più e alcune non vengono mai aggiornate. A volte è necessario prendere una decisione e tagliare una vecchia funzione per sostituirla con qualcosa di nuovo. E Google ha fatto un salto nel suo stesso casino una o due volte e ha rovinato tutto, come la versione iniziale di Doze in Android 6.0.

È importante essere coerenti se si desidera utilizzare gli altri prodotti di Google. Anche con un software open source.

Come siamo arrivati ​​qui?

I produttori di smartphone non lo fanno solo per divertimento. Ogni azienda che produce telefoni vuole che ti piaccia un prodotto che acquisti da loro abbastanza da guardare il suo marchio la prossima volta che acquisti un telefono. Se le app venissero uccise senza motivo non sarebbe di aiuto.

Quando acquistiamo un telefono di solito c'è una cosa che si avvicina alla cima dell'elenco di cose che vogliamo da esso: una lunga durata della batteria. Un modo per prolungare la durata della batteria è limitare ciò che un telefono può fare; ecco perché devi solo caricare un telefono "stupido" un paio di volte a settimana. Non sta davvero facendo molto, specialmente quando non è nelle tue mani. Gli smartphone, tuttavia, devono fare molte cose.

L'uccisione di attività in background può essere utile per la batteria, ma rende lo smartphone stupido.

Google ha un sistema che mette le app in uno stato di "sospensione" quando non stanno attivamente facendo nulla, ma potrebbe essere necessario in futuro. Ha fatto molto lavoro - alcuni buoni, altri cattivi - per bilanciare le cose in modo da avere un telefono in grado di fare cose come tenere traccia dei tuoi passi, monitorare il sonno o agire come un lettore musicale mentre lo schermo è spento senza scaricare la batteria. Si aspetta che vengano utilizzati questi metodi e che vengano seguite le regole in modo da ottenere tale coerenza da ogni app nel Play Store.

Dall'elenco di Dontkillmyapp, Nokia è l'esempio che userò qui, ma l'elenco dei trasgressori comprende anche OnePlus, Sony e Samsung. Anche Google stesso è chiamato per aver reso difficile esentare un'app dal "Dozed". Nokia include un'app su tutti i telefoni della società che esegue Android Oreo o superiore che uccide ogni processo in background 20 minuti dopo lo spegnimento dello schermo. Ciò significa che le app di fitness non funzioneranno mai, ma significa anche che la sveglia non si spegnerà se si dispone di Android P.

Come siamo arrivati ​​al punto in cui i nostri smartphone non sono autorizzati a essere intelligenti? Perché abbiamo richiesto una maggiore durata della batteria e anche le aziende che producono telefoni prendono decisioni sbagliate per darcelo. Non ci sono molte cose che possono essere fatte su Android da un produttore di telefoni che avranno un grande impatto sulla durata della batteria. Una delle cose che si possono fare è uccidere le app che potrebbero non aver bisogno di essere vive. Quando una delle app uccise doveva rimanere in vita, non funzionava come previsto.

Google deve stringere le fascette

Odio dirlo. Android è un progetto open source che negli anni ha visto uno sviluppo incredibile da parte di aziende che non si chiamano Google. Le aziende che utilizzano Android dovrebbero fare ciò che vogliono e spingere ogni limite per renderlo migliore. Ma torniamo di nuovo a quella coerenza per le app dalla cosa Play Store.

Gli utenti, compresi gli utenti del tipo che conoscono e comprendono un problema come questo, meritano di meglio. Google deve fare in modo che ciò accada quando si tratta di app dal suo negozio e alterare e applicare tutto ciò che serve per renderlo tale. Fallo senza alcun coinvolgimento dell'utente e fallo costantemente, non importa quanto sia grande la società "offensiva" o quanti telefoni vende.

Lo meritiamo.