2011-11-22 1 views
14

C'è uno strumento là fuori che potrebbe testare il mio manifest Android per vedere quali dispositivi sono supportati dal mercato Android con determinate impostazioni? Spero che ci sia un modo diverso dal caricare ogni test sul mercato Android.Dispositivi manifestati e supportati mostrati nel mercato Android

Ho bisogno di scoprire perché alcuni dispositivi con schermo piccolo non sono supportati, ma non ho ancora trovato il motivo.

Attualmente supporto le seguenti schermate e suppongo che android:smallScreens consenta a Samsung Galaxy Mini con Android 2.3 di installare la mia app, ma non è così.

<supports-screens 
    android:largeScreens="true" 
    android:normalScreens="true" 
    android:smallScreens="true" 
    android:anyDensity="true" /> 

Modifica: autorizzazioni e le caratteristiche attuali:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.INTERNET"></uses-permission> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission> 
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission> 
<uses-permission android:name="android.permission.CAMERA"></uses-permission> 
<uses-permission android:name="android.permission.VIBRATE"></uses-permission> 
<uses-permission android:name="android.permission.FLASHLIGHT"></uses-permission> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> 

<uses-feature android:name="android.hardware.camera" /> 
<uses-feature android:name="android.hardware.camera.autofocus" /> 
<uses-feature name="android.hardware.screen.portrait" required="false" /> 

penso di avere per rimuovere alcuni dei these- Ho spazzatura qui, che non è più necessaria. Scoverò in esso stasera/domani.

+0

Quali valori hai manifest per 'minSdkVersion' e' targetSdkVersion' e quale "obiettivo di generazione del progetto Android" che hai nelle proprietà del progetto? –

+0

android: minSdkVersion = "8" e nessun set di targetSdkVersion (dovrei?). Utilizzata la piattaforma 2.2 dell'API di Google come destinazione di creazione. –

+0

Potrebbero esserci dei privilegi molto specifici che l'app utilizza e quei telefoni no? Come non avere la fotocamera o alcuni sensori? –

risposta

4

C'è uno strumento là fuori che potrebbe testare il mio manifest Android per vedere quali dispositivi sono supportati dal mercato Android con determinate impostazioni?

No, semplicemente perché Google è l'unica azienda con un catalogo (abbastanza) completo di tutti i dispositivi Android e le loro funzionalità.

Se qualcuno ha creato un database indipendente che potrebbe essere crowdsourcing (ad es., Forse qualcosa su Fluidinfo), allora strumenti indipendenti potrebbero usarlo.

Per quanto riguarda il problema specifico, dopo la dimensione dello schermo, il prossimo candidato più probabile sarebbero le autorizzazioni che implicano alcune funzionalità richieste che il dispositivo non dispone.

+0

Qualcosa che ho pensato. Grazie a tutti comunque. –

4

Non è che Galaxy Mini non sia compatibile con il permesso CAMERA. E 'tutta una questione di

<uses-feature android:name="android.hardware.camera.autofocus" /> 

questa funzione viene aggiunto per impostazione predefinita con

<uses-feature android:name="android.hardware.camera" /> 

Qui potete trovare maggiori informazioni a riguardo: http://developer.android.com/guide/practices/compatibility.html sotto "a prova di futuro". Se si aggiunge l'autorizzazione CAMERA con <uses-feature android:name="android.hardware.camera" /> , l'autofocus non verrà aggiunto e dovrebbe essere ora compatibile con la propria app. Spero che aiuti.

3

Alcune autorizzazioni come CAMERA o ACCESS_COARSE_LOCATION implicano altre impostazioni delle funzioni. Ho scoperto che rendere le mie funzionalità implicite aumentava la compatibilità della mia applicazione da 1100 dispositivi a più di 2000.

I punti di particolare interesse per me erano impliciti autofocus della fotocamera e posizione basata sulla rete implicita dalla telecamera e autorizzazioni di posizione grossolana. Per superare questo ho usato:

<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" /> 
    <uses-feature android:name="android.hardware.location.network" android:required="false" /> 
    <uses-feature android:name="android.hardware.wifi" android:required="false" /> 

Queste sono le impostazioni che ho usato nel mio gioco Zombie Splatter (lite) nel Play Store. Mi ci sono voluti 8 tentativi di caricamento e tre giorni per ottenere le autorizzazioni necessarie.Google dovrebbe davvero fare uno strumento di compatibilità per questo.