Aggiunta del supporto multi-finestra Samsung all’applicazione Android

Sono andato e ho cercato di aggiungere il supporto multi-window di Samsung per la mia app seguendo questo link . La mia app appariva nella scheda delle applicazioni multi-finestra di Samsung, e io ero in grado di trascinarla e rilasciarla sullo schermo, tuttavia la mia app non si comportava come dovrebbe funzionare l’app multi-finestra supportata, ma invece si espandeva a schermo intero.

Penso che ci siano alcuni altri cambiamenti che devono essere fatti per farlo funzionare correttamente, ma non ho idea di cosa. Qualcuno ha qualche idea su quale potrebbe essere il problema che causa questo comportamento?

Questo post del forum xda-developers contiene una guida passo-passo, che ho parafrasato qui.

Assicurati che il tuo manifest contenga quanto segue all’interno del tag :

       

Per l’attività desiderata, aggiungi al :

  

Assicurati di definire le dimensioni sopra in un file di risorse.

Nella sezione commenti del post di un blog, un utente menziona che la dimensione minima stava causando un problema per lui e suggeriva di rimuovere com.sec.android.multiwindow.MINIMUM_SIZE_W e com.sec.android.multiwindow.MINIMUM_SIZE_H .

Un utente ha sottolineato che specificare le dimensioni attraverso una risorsa di dimensione non ha funzionato per lui; ha invece hardcoded l’attributo value:

       

Temo di non poter provare me stesso perché non ho un Galaxy Note.

Dopo aver testato la mia applicazione su Galaxy Note 3 ho scoperto altre due cose:

MINIMUM_SIZE e DEFAULT_SIZE funzionano solo su MultiWindow per tablet Samsung, non su smartphone.

Inoltre se vuoi abilitare Multi-Instance nella tua applicazione aggiungi questa linea al tuo AndroidManifest:

  

Degno di nota è anche l’abilitazione di Pen Window (parte del sistema multi-window) per la tua app, insieme a Multi-Window e Multi-Instance come indicato qui ( http://forum.xda-developers.com/showthread.php?t = 2499720 ):

  

e aggiungi il codice Launcher alla tua attività:

  

Come nota per il codice di avvio, il post xda ha elencato con un prefisso com.samsung , ma non ho potuto farlo funzionare sul mio N3 come descritto qui (ho usato il codice modificato sopra). Nella finestra penna, devi premere modifica e trascinare la tua app in basso nella schermata di avvio della finestra penna prima di poterla usare.

Per supportare la multi finestra su Android 7 e versioni successive, imposta questo android: resizeableActivity su true nell’elemento ‘activity’ o ‘application’ del tuo manifest:

 android:resizeableActivity="true" 

https://developer.android.com/guide/topics/ui/multi-window.html