Pubblicato da Leo Sei, Product Manager di Android
Come probabilmente avrai sentito, in occasione di Android Dev Summit abbiamo annunciato l'espansione del supporto Android in modo che possa includere i Foldable, in attesa dei dispositivi prodotti dai nostri partner hardware, come ad esempio Samsung.
Ecco una serie di consigli e informazioni per garantire che la tua app offra un'esperienza utente eccezionale in relazione a questo nuovo fattore di forma (puoi anche vedere la specifica talk di Android Dev Summit qui).
Con questo nuovo fattore di forma, la tua app può passare automaticamente da uno schermo all'altro (ad esempio, quando pieghi o apri il telefono foldable).
Durante questa transizione, l'app riceverà una modifica della configurazione per il nuovo layout (e probabilmente anche della densità, in alcuni casi).
Per offrire un'esperienza utente ottimale passando da uno schermo all'altro, assicurati che l'app supporti correttamente la modifica della configurazione di runtime.
Come testarla: gli emulatori per i diversi dispositivi saranno disponibili a breve (ad esempio, in Q4 Samsung pubblicherà un APK per emulatori che si piegano/aprono, che dovrebbe funzionare sui tablet Samsung Galaxy S4 e sull'emulatore AOSP di Android Studio).
Attualmente se un'app è in modalità multi-finestra, ma non attivata, si trova nello stato OnPause.
Anche se offriamo indicazioni su come supportare la modalità multi-finestra, abbiamo notato che un notevole numero di app non gestisce lo stato onPause in base a queste indicazioni (video in pausa o interrotto, SMS non visualizzati ecc.).
Per aiutare gli sviluppatori a fornire la migliore esperienza multi-finestra possibile, e con il minimo sforzo, stiamo consentendo ai produttori di dispositivi di mantenere tutte le app in stato "resumed" quando adottano questa modalità in Android P.
Per attivare questo comportamento in Android P, aggiungi i seguenti metadati nel manifest dell'app:
<meta-data android:name="android.allow_multiple_resumed_activities" android:value="true" />
Nota: stiamo cercando di ottimizzare la compatibilità di questo comportamento nella prossima versione di Android.
Come testarlo: al momento non ci sono dispositivi che offrano questo comportamento, ma i produttori si stanno impegnando per aggiornare i dispositivi esistenti in modo che gli sviluppatori possano testarli. Resta sintonizzato per ulteriori novità da parte dei produttori di dispositivi.
A partire da Android 8.0 (API di livello 26), la piattaforma offre il supporto avanzato per display multipli. Se un'attività supporta la modalità multi-finestra ed è in esecuzione su un dispositivo con display multipli, gli utenti possono spostare l'attività da un display all'altro. Quando viene avviata un'attività, l'app può specificare su quale display eseguirla. Consulta qui la documentazione completa.
Come testarlo: puoi provarlo utilizzando l'opzione Developer options > Simulate secondary displays. Tieni presente che i display simulati non elaborano gli input.