Bom dia pessoal,
-- Há alguns dias estou trabalhando num workaround do problema citado no título, basicamente tenho dois XMLs com layouts diferentes para PORT e LAND quais possuem um fragment comum, que por sua vez tem um VideoView (ou Media Player inserido via código, tanto faz). No cenário ideal eu não defino o configChanges no Manifest para ouvir as mudanças de orientação e não dou override no onConfigurationChanged na activity pai para que o OS cuide da troca de layout. Porém quando isso acontece e o vídeo está no meio ele reinicia, sei que isso é causado porque o OS reconstrói a activity, layouts, etc...
Já estou definindo o retain instance do fragment para TRUE porém ele só mantem a instância, e por se tratar de um primo do activity, cai no mesmo ciclo de reconstrução devido a sofrer o detached e attached. Também já testei manter instância do VideoPlayer e re-adicionar num novo view, porém como os componentes criados dinamicamente precisam de um contexto, quando a rotação reinicia a Activity trata-se de um novo contexto.
Achei esses links que dão algumas sugestões, porém a mais elegante julguei ser manipular a adição e remoção de fragments manualmente.
http://stackoverflow.com/questions/6475065/android-videoview-seamless-playback-during-orientation-change
http://stackoverflow.com/questions/4434027/android-videoview-orientation-change-with-buffered-video
http://stackoverflow.com/questions/10679021/ensure-video-buffer-is-preserved-after-orientation-changes-without-handling-onco
Alguém já passou por isso? Já resolveu isso de outra forma?
Obrigado, abraços.
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
0 comentários:
Postar um comentário