Autore Topic: targetSdkVersion e minSdkVersion  (Letto 743 volte)

Offline emaborsa

  • Utente normale
  • ***
  • Post: 274
  • Java Developer
  • Respect: +33
    • Google+
    • emaborsa
    • Mostra profilo
    • www.emaborsa.com
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Linux 10 - Win8.1 - Android 4.1.2
targetSdkVersion e minSdkVersion
« il: 05 Febbraio 2015, 22:30:18 CET »
0
Ciao,
ormai è da qualche anno che sviluppo per android e so perfettamente (o almeno credo) a cosa servono targetSdkVersion e minSdkVersion. Una delle mie app ha i seguenti parametri nel Manifest:

Codice (XML): [Seleziona]
 <uses-sdk
       android:minSdkVersion="10"
       android:targetSdkVersion="10" />

android:minSdkVersion="10" perchè voglio che la mia applicazione giri anche su dispositivi pre Honeycomb.
android:targetSdkVersion="10" pperchè così vedo che utilizzo metodi che su Honeycomb non ci sono.

La mia domanda: Perchè lo store mi dice "Le versioni Android minima e target devono supportare i tablet (controlla targetSdkVersion e minSdkVersion)."?

Offline Ohmnibus

  • Utente senior
  • ****
  • Post: 717
  • Respect: +151
    • Github
    • Google+
    • @ohmnibus
    • Mostra profilo
    • Lords of Knowledge GdR
  • Dispositivo Android:
    Huawei P9 Lite
  • Play Store ID:
    Ohmnibus
  • Sistema operativo:
    Windows 7 x64
Re:targetSdkVersion e minSdkVersion
« Risposta #1 il: 06 Febbraio 2015, 17:41:14 CET »
+1
Per verificare i metodi che non ci sono nelle API che stai usando basta la android:minSdkVersion.

La targetSdk rappresenta le API per le quali hai effettuato i test, e serve per questioni di compatibilità. In pratica se usi come target le API 16, un dispositivo con android 20 dovrà tenere conto che la tua app è stata testata per una versione meno recente.

Salvo casi speciali il target dovrebbe sempre corrispondere alle ultime API.

Probabilmente il Play Store ti dice così perché i tablet sono supportati dalle API 11, ma visto che tu hai specificato minSdk e targetSdk pari a 10 significa che di fatto non è mai stato testato sulle api superiori.

Soluzione: come detto, specifica un valore più alto per android:targetSdkVersion, senza preoccuparti. La gestione dei metodi non supportati viene fatta basandosi su android:minSdkVersion
Ohmnibus
Le mie app su Play Store

È stata trovata una soluzione al tuo problema? Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato.

Offline emaborsa

  • Utente normale
  • ***
  • Post: 274
  • Java Developer
  • Respect: +33
    • Google+
    • emaborsa
    • Mostra profilo
    • www.emaborsa.com
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Linux 10 - Win8.1 - Android 4.1.2
Re:targetSdkVersion e minSdkVersion
« Risposta #2 il: 08 Febbraio 2015, 12:00:45 CET »
0
OK tutto chiaro. Però ho notato un altra cosa, che non sempre dipende da targetSdkVersion e minSdkVersion. Ho letto che la compatibilità dell'applicazione dipende anche dai permessi impostati nel manifest, se per esempio si imposta il permesso per il vibratore ed il dispositivo non lo ha, l'applicazione risulta non disponibile e a me nella console da comunque quel messaggio di errore.

Offline Ohmnibus

  • Utente senior
  • ****
  • Post: 717
  • Respect: +151
    • Github
    • Google+
    • @ohmnibus
    • Mostra profilo
    • Lords of Knowledge GdR
  • Dispositivo Android:
    Huawei P9 Lite
  • Play Store ID:
    Ohmnibus
  • Sistema operativo:
    Windows 7 x64
Re:targetSdkVersion e minSdkVersion
« Risposta #3 il: 09 Febbraio 2015, 11:57:47 CET »
0
E' vero per i permessi elencati qui:

Permissions that Imply Feature Requirements

Quindi la vibrazione non dovrebbe creare problemi.

In ogni caso puoi dichiarare la caratteristica come opzionale (ad esempio il flash) con:

Codice (XML): [Seleziona]
<uses-feature android:name="android.hardware.camera.flash" android:required="false" />
Ohmnibus
Le mie app su Play Store

È stata trovata una soluzione al tuo problema? Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato.

Offline emaborsa

  • Utente normale
  • ***
  • Post: 274
  • Java Developer
  • Respect: +33
    • Google+
    • emaborsa
    • Mostra profilo
    • www.emaborsa.com
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Linux 10 - Win8.1 - Android 4.1.2
Re:targetSdkVersion e minSdkVersion
« Risposta #4 il: 10 Febbraio 2015, 07:58:48 CET »
0
OK, faró delle prove.
Grazie

Post unito: 10 Febbraio 2015, 23:55:22 CET
Ho trovato questo video sul forum. Ottimo anche se un po datato.
« Ultima modifica: 10 Febbraio 2015, 23:55:22 CET da emaborsa, Reason: Merged DoublePost »