當前位置:編程學習大全網 - 源碼下載 - Android開發中的finish()與onDestroy()方法都是用來結束activity的吧?兩個有什麽區別?

Android開發中的finish()與onDestroy()方法都是用來結束activity的吧?兩個有什麽區別?

Android開發中的finish()與onDestroy()方法都是用來結束activity的。

1、不同點區別:

finish()方法用於結束壹個Activity的生命周期。而onDestory()方法則是Activity的壹個生命周期。

其作用是在壹個Activity對象被銷毀之前,Android系統會調用該方法,用於釋放此Activity之前所占用的資源。finish會調用到onDestory方法。在onDestory裏打印壹句話,運行壹下程序,會發現finish方法會把那句話打印出來。

2、方法區別:

Activity.finish()方法:

在妳的activity動作完成的時候,或者Activity需要關閉的時候,調用此方法,當妳調用此方法的時候,系統只是將最上面的Activity移出了棧,並沒有及時的調用onDestory()方法,其占用的資源也沒有被及時釋放。因為移出了棧,所以當妳點擊手機上邊的“back” 按鍵的時候,也不會再找到這個Activity.

Acitvity.onDestory()方法:

系統銷毀了這個Activity的實例在內存中占據的空間。在Activity的生命周期中,onDestory()方法是他聲明的最後壹步,資源控件等就被回收了。當重新進入此Activity的時候,必須重新創建,執行onCrate()方法。

擴展資料

中介軟件

1、操作系統與應用程序的溝通橋梁,應用分為兩層:函數層(Library)和虛擬機(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同時包含了Webkit,所謂的Webkit 就是Apple Safari 瀏覽器背後的引擎。Surface flinger 是就2D或3D的內容顯示到屏幕上。Android使用工具鏈(Toolchain)為Google自制的Bionic Libc。

2、Android采用OpenCORE作為基礎多媒體框架。Open CORE可分7大塊:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。

3、Android 使用skia 為核心圖形引擎,搭配OpenGL/ES。skia與Linux Cairo功能相當,但相較於Linux Cairo, skia 功能還只是雛形的。2005年Skia公司被Google收購,2007年初,Skia GL源碼被公開,Skia 也是Google Chrome 的圖形引擎。

4、Android的多媒體數據庫采用SQLite數據庫系統。數據庫又分為***用數據庫及私用數據庫。用戶可通過ContentResolver類(Column)取得***用數據庫。

5、Android的中間層多以Java 實現,並且采用特殊的Dalvik 虛擬機(Dalvik Virtual Machine)。Dalvik虛擬機是壹種“暫存器型態”(Register Based)的Java虛擬機,變量皆存放於暫存器中,虛擬機的指令相對減少。

6、Dalvik虛擬機可以有多個實例(Instance), 每個Android應用程序都用壹個自屬的Dalvik虛擬機來運行,讓系統在運行程序時可達到優化。Dalvik 虛擬機並非運行Java字節碼(Bytecode),而是運行壹種稱為.dex格式的文件。

百度百科-Android

  • 上一篇:Pi數據庫源代碼
  • 下一篇:app拉新推廣壹手接單平臺上項目有哪些?app拉新推廣壹手接...
  • copyright 2024編程學習大全網