In che modo le persone affrontano la frammentazione di Android? [chiuso]

7

Ho passato gli ultimi anni a lavorare su app iOS e ora sto prendendo in seria considerazione la creazione di una porta Android di una delle mie app.

Sono sicuro che le lamentele sulla frammentazione sono un clic frustrante per i programmatori Android con esperienza, ma come programmatore iOS, sono onestamente sopraffatto dal numero di configurazioni e dispositivi su cui la mia app potrebbe finire.

Ci sono letteralmente migliaia di dispositivi Android in natura, ma so che ci sono sviluppatori Android di successo nel mondo e so che non stanno testando o sviluppando per migliaia di dispositivi diversi.

Quindi, come può un'azienda relativamente piccola occuparsi della frammentazione? È possibile scegliere i cinque o sei dispositivi più popolari, concentrarsi su quelli e impedire che l'app venga installata su altri dispositivi? Ci sono altre strategie per affrontare praticamente il numero di diverse configurazioni che un'app affronta?

    
posta Bill 26.11.2012 - 22:42
fonte

3 risposte

10

Android è eccezionale nel gestire progetti flessibili che funzionano su più dispositivi. È un argomento enorme che non può essere approfondito in dettaglio come risposta, ma penso che la frammentazione abbia avuto un brutto colpo. Non è poi così male, e non è così difficile da gestire.

È bello vedere la tua app lanciata da telefoni con schermo piccolo a tablet da 10 "e Android gestisce tutto il layout dei frammenti per te. Penso che lo sviluppo di iOS potrebbe richiedere un paio di cose da Android;) .

Quello che ho trovato è che l'app ha spesso l'obiettivo di ciò che deve raggiungere. Man mano che sviluppi, scopri che i livelli inferiori di API Android non soddisfano tali esigenze. Quindi piuttosto che pensare a quali dispositivi è necessario indirizzare. Decidi prima su quale versione di Android devi utilizzare per creare l'app.

Inoltre, le persone che utilizzano piattaforme Android precedenti potrebbero anche avere un telefono che non è in grado di gestire comunque le esigenze dell'App. Quindi il supporto per le versioni precedenti non è una vera perdita, perché comunque non avrebbe funzionato molto bene per loro (ma dipende più dall'app).

    
risposta data 26.11.2012 - 22:51
fonte
1

Penso che la maggiore difficoltà sia nel supportare varie dimensioni dello schermo, specialmente in interfacce molto grafiche. Le dimensioni dello schermo possono variare parecchio e anche il rapporto h / w e il numero di pixel. In Android puoi specificare diverse risorse per ciascuno di questi casi, e possibilmente per tutte le loro combinazioni (lungo / alta risoluzione / piccolo, quadrato / medio / medio, ...), il che significherebbe una grande quantità di configurazioni - il che significherebbe un bel casino ovviamente.

Quindi potrebbe non essere facile ottenere un layout e un piccolo insieme di risorse in grado di supportare la maggior parte delle configurazioni, ed è importante che i progettisti grafici apprendano gli strumenti e i trucchi che possono sfruttare per ottenere ciò.

Dal punto di vista dell'API, penso che Google compia dei buoni sforzi in termini di compatibilità con le versioni precedenti, mantenendo anche un buon backport delle nuove funzionalità più utili.

    
risposta data 28.11.2012 - 11:39
fonte
1

Una risorsa da considerare è il prestito del venditore o i programmi di noleggio per i partner di sviluppo (programmi per partner di sviluppo). Alcuni forniscono un accesso a breve termine a scopo di test in modo economico, forse anche gratuito.
La maggior parte dei produttori di hardware ha programmi di sviluppo che offrono hardware a costi ridotti o addirittura gratuiti (ad es. Samsung , Motorola, Apple, BlackBerry (per i membri BlackBerry Alliance), LG ). Controllali per i dispositivi che desideri / servono.

Ci sono laboratori di test "fisici" accessibili al pubblico che puoi semplicemente visitare (o riservare il tempo). Solitamente sono chiamati open device lab : punto di partenza , Ricerca Google . Controlla se ce ne sono nel tuo quartiere e quali dispositivi hanno.

Ci sono occasionali community di test "crowdsourcing" come uTest che puoi chiedere in giro.

Notare che ci sono anche molti servizi online per testare le tue app su molti dispositivi come AppThwack , TestFlight , < a href="https://testobject.com/"> TestObject , TestFairy , Keynote aka DeviceAnywhere o cloud di test Xamarin che forse hai il dispositivo su cui vuoi eseguire il test.
Li useresti anche prima di rilasciare la tua app, e anche se queste non sono piattaforme di test 'definitive' (c'è molto da dire per test su dispositivi reali ), qualsiasi test aiuta.

Nota: Panoramica utile articolo

    
risposta data 18.11.2014 - 16:40
fonte

Leggi altre domande sui tag