[英]Android is using the same instance activity after destroyed
LoginActivity
使用Smart Lock登錄。 我以startActivityForResult
的LoginActivity
啟動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.