簡體   English   中英

Android銷毀后正在使用相同的實例活動

[英]Android is using the same instance activity after destroyed

  • 我正在使用LoginActivity使用Smart Lock登錄。
  • 我以startActivityForResultLoginActivity啟動LoginActivity 我對Smart Lock是否具有憑據感興趣,如果一切正常,則返回RESULT_OK 然后我調用finish()

     loginActivityViewPresenter.setResult(RESULT_OK) loginActivityViewPresenter.finish() 

此后,將調用onDestroy() 假設這是@7161實例。

然后我注銷,然后再次登錄,同一實例位於頂部@7161

諸如isDestroyed()isFinishing()類的函數始終為true。

為什么?

看來您正在使用的AsyncTasks或保留的其他一些對象是對您的活動的引用,並且當您再次啟動它時android框架正在使用該現有活動。

您可以通過在完成活動並查看對該活動的引用之后進行堆轉儲來確定此情況。

您也可以使用一個名為Leak Canary的工具。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM