Java 通过finish方法调用onDestroy的活动
读了这篇关于android开发的文章,注意到页面末尾的一个小提示: 注意:系统在调用onDestroy()之后调用onDestroy() onPause()和onStop()在除一种情况外的所有情况下:当您调用 onCreate()方法中的finish()。在某些情况下,例如 当您的活动作为临时决策者启动时 另一个活动,您可以从onCreate()中调用finish(),以 破坏活动。在这种情况下,系统会立即调用 onDestroy()而不调用任何其他生命周期方法Java 通过finish方法调用onDestroy的活动,java,android,Java,Android,读了这篇关于android开发的文章,注意到页面末尾的一个小提示: 注意:系统在调用onDestroy()之后调用onDestroy() onPause()和onStop()在除一种情况外的所有情况下:当您调用 onCreate()方法中的finish()。在某些情况下,例如 当您的活动作为临时决策者启动时 另一个活动,您可以从onCreate()中调用finish(),以 破坏活动。在这种情况下,系统会立即调用 onDestroy()而不调用任何其他生命周期方法 根据本说明,finish()
- 根据本说明,
finish() 即使没有
或onPause()
也会被调用,这是否意味着 建议使用onDestroy()方法调用 明确说明onStop()
和onPause()
方法onStop()
- 还是应该在那里复制代码?(在我看来这是一个糟糕的做法)
- 是否需要知道这些方法是否已被调用, 这意味着这是否是一个“适当的”完成
onPause
和onStop
中输入什么代码?你为什么要在onCreate
中调用finish
?这只是我读这篇文章时想知道的一点,我现在还没有一个特定的场景,但我可以想象一个:假设我初始化了传感器或相机上的手柄,然后连接到外部资源(例如Web服务器),最后根据传感器或摄像头定义确定用户无法使用此活动(出于任何原因),并调用finish()方法,我仍然必须释放摄像头和/或摄像头,对吗?由于onPause()不会被调用,因此应该在onDestroy中执行,不是吗?除非在onCreate
中调用finish
,否则不会调用onPause
。因此,在暂停时松开相机。检查文档。检查主题释放照相机。