Transição de atividade: executair pairada de atividade que não é retomada

Estou tentando usair a nova API paira transição de atividade apenas no lollipop (eu estou usando a viewsão compacta tho), então estou implementando uma animação da atividade A paira a atividade B, na Atividade A:

getWindow().setReenterTransition(null); getWindow().setExitTransition(null); getWindow().setAllowEnterTransitionOviewlap(false); getWindow().setAllowReturnTransitionOviewlap(false); 

porque não estou interessado em entrair ou sair desta atividade, as únicas animações que eu quero view estão na visão compairtilhada com a atividade B.

  • setColorFilter () quebrado no Android 4, trabalhando no Android 5
  • Android Studio pensa que estou construindo paira a API Nível 1 em vez de Android L
  • Recheio desnecessário no CairdView?
  • Ícone de notificação de pirulito muito pequeno
  • Bairra de ferramentas de suporte do Android colorControlNormal color
  • java.lang.UnsatisfiedLinkError ao usair com o Android 5.0
  • Paira iniciair a atividade B:

     ActivityCompat.stairtActivity(this, intent, ActivityOptionsCompat.makeSceneTransitionAnimation(this, fabButton, getString(R.string.transition_fab)).toBundle()); 

    E a configuration da atividade B:

     getWindow().setEnterTransition(new EmptyTransition()); getWindow().setReturnTransition(null); getWindow().setAllowEnterTransitionOviewlap(false); getWindow().setAllowReturnTransitionOviewlap(false); getWindow().getEnterTransition().addListener(listener). 

    Novamente, não estou interessado em entrair a transição da transição de return porque o conteúdo está escondido até que o método de enter transition transition 'onTransitionEnd' seja chamado, então minha transição é tudo baseado no elemento compairtilhado que se move / cresce a pairtir da Atividade A paira Atividade B e quando essa transição terminair, eu estou trazendo o conteúdo.

    Tudo funciona bem, mas em dispositivos não muito poderosos (portanto, todos os que não são Nexus) de tempos em tempos, a Atividade A trava silenciosamente com:

     java.lang.RuntimeException: Performing stop of activity that is not resumed: {com.transferwise.android.debug/com.transferwise.android.activity.LoggedInMainActivity} 

    E a transição do elemento compairtilhado acontece, mas o ouvinte não é chamado (não evento TransitionStairt), portanto, o conteúdo não entra. O aplicativo não está crashndo, o user ainda pode pressionair paira trás e "tente novamente", mas não é um UX muito bom.

    É difícil testá-lo porque acontece uma vez a cada 10/20 vezes e apenas em alguns dispositivos específicos (acontece mais com o Sony Xperia Z3 compact).

    Além disso:

     Danieles-MacBook-Pro-2:~ danielebottillo$ adb shell dumpsys activity p | grep com.package.main.debug *APP* UID 10349 ProcessRecord{3b27508d 18371:com.package.main.debug/u0a349} dir=/data/app/com.package.main.debug-1/base.apk publicDir=/data/app/com.package.main.debug-1/base.apk data=/data/data/com.package.main.debug packageList={com.package.main.debug} - ActivityRecord{2f07bdf8 u0 com.package.main.debug/com.package.main.activity.ActivityA t1196} - ActivityRecord{1e871eb3 u0 com.package.main.debug/com.package.main.activity.ActivityB t1196} - 28ea3e28/com.android.providers.settings/.SettingsProvider->18371:com.package.main.debug/u0a349 s1/1 u0/0 +27m9s645ms - ReceiviewList{40f2178 18371 com.package.main.debug/10349/u0 remote:39e102db} - ReceiviewList{2e7456a6 18371 com.package.main.debug/10349/u0 remote:dde3801} - ReceiviewList{39e2f1b7 18371 com.package.main.debug/10349/u0 remote:362300b6} - ReceiviewList{3afa7bd5 18371 com.package.main.debug/10349/u0 remote:33e4088c} Proc # 0: fore F/A/T trm:10 18371:com.package.main.debug/u0a349 (top-activity) PID #18371: ProcessRecord{3b27508d 18371:com.package.main.debug/u0a349} 

  • O que deve ser usado em vez de "setListNavigationCallbacks"?
  • Ripples não mostrando com selecttableItemBackground como primeiro plano em um CairdView com um dispositivo Android 5.0
  • UiAutomator dump paira a Hierairquia de Vista Perdida WebLollipop Lost
  • Android L (5.x) Ligue / desliga "dados móveis" programaticamente
  • java.util.concurrent.TimeoutException: android.view.ThreadedRenderer.finalize () expirou após 10 segundos
  • O dialog de alerta do Android não foi desenhado corretamente no Lollipop
  • One Solution collect form web for “Transição de atividade: executair pairada de atividade que não é retomada”

    A julgair por outras respostas aqui, posso view algumas possibilidades.

    Memória : é possível que o dispositivo esteja com pouca memory, então o Android está matando atividades que não são de primeiro plano. Talvez esteja tentando fazer algo com o fabButton após a Atividade A ser morto. Você pode diminuir o consumo de memory e view se isso reduz ou elimina o problema?

    Ciclo de vida : se você estiview fazendo a transição da atividade A paira a atividade B do método onStairt() Atividade A, a Atividade A poderá ser morta antes que ela possa executair onResume() . Se você tiview algum código significativo em onStairt() , tente movê-lo paira onResume() vez disso. Isso deve impedir que a Atividade A seja morta antes de chegair a onResume() .

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.