Sto sviluppando un progetto che utilizza un video Flash all'interno di una visualizzazione Web. Ho risolto tutti i miei problemi relativi al codice, ma ho lavorato solo sotto Honeycomb.Come rendere il mio progetto compatibile con diverse versioni di sdk utilizzando le funzionalità per una versione specifica
Lettura this Ho scoperto come risolvere i problemi per Android 3.0 e versioni successive (incluso ICS), ma ora è la grande domanda ... Se faccio il mio progetto compatibile con ICS devo usare la direttiva, ma poi non vorrei correre su Gingerbread.
Per fornire qualche informazione in più ... il pezzo problematica del codice è questo:
android:hardwareAccelerated="true"
che è una proprietà che è stato incluso in Android 3.0.
Quindi, c'è qualcosa che posso fare per evitare di creare due apk diversi (un po 'come un apk pre-HoneyComb e un apk post-HoneyComb)?
Questo è un pezzo della mia manifesta Android:
<application android:label="@string/app_name"
android:icon="@drawable/elabora"
android:theme="@android:style/Theme.NoTitleBar">
<activity android:name="es.fundacionvodafone.elabora.android.controlador.InicioElaboraTest"
android:label="@string/app_name"
android:noHistory="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="es.fundacionvodafone.elabora.android.controlador.InicioElabora"
android:configChanges="orientation|keyboardHidden"
android:label="@string/app_name"
android:hardwareAccelerated="true">
<!--
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
-->
</activity>
Grazie in anticipo.
Aggiornamento: Stavo già utilizzando ciò che Mike ha spiegato, vale a dire, definendo minSdk e targetSdk correttamente, ma sono stato confuso dal fatto seguente. Con tale configurazione di progetto, quando si esegue il progetto in eclissi, viene visualizzata la seguente finestra: La croce rossa indica che il livello targetSdk del progetto è superiore al livello dell'API del dispositivo. Quindi ho pensato che non funzionasse in questo dispositivo, ma il fatto è che puoi eseguirlo e funziona come previsto.
Perché presumi che "non potresti correre su Gingerbread"? Puoi avere min sdk = 8, target SDK e build build build di progetto SD = 15. Assicurati di abilitare per ogni versione qualsiasi cosa funzioni per esso. Puoi utilizzare le proprietà booleane dipendenti dalla versione per attivare e disattivare le cose a tuo piacimento. – user1076637
@ user1076637, ho appena commesso un errore in modo che ... Come ho aggiornato sulla mia risposta, l'impostazione del corretto minSdk e targetSdk è una soluzione valida. – mdelolmo