在當前這個信息技術時代,Android的開發不斷向新的方向發展。目前,由于Android是建立在Java的基礎之上的,其支持多線程,因此,要加大多線程的開發應用,提高系統的執行效率。本文主要對Android系統進行了分析,提出了多線程技術在Android手機開發中的應用和實現。
Android系統分析
Android系統,簡單來講,其架構自下而上主要分為四層,分別為:Linux內核、Android運行時環境和各種庫、應用程序框架以及應用程序層。
首先,關于系統中的應用程序層。在Android系統中,應用程序是一組核心程序,是隨系統一起發布的,對于程序的應用,其主要是建立在Java語言的基礎之上的,不論是SMS短信應用,還是瀏覽器、或者是通信錄以及地圖服務,其都必須以Java語言作為支撐。
其次,關于系統中的應用程序框架。通常情況下,用來創建Android應用程序的各種API主要是由應用程序框架來提供的。在進行硬件訪問的過程中,應用程序框架會對用戶的界面進行整合,加強對應用程序資源的管理,同時,并且賦于相應的服務,具體主要包括以下方面:(1)活動管理器,提供了用戶常用的回退需要,對生命周期進行管理。(2)視圖和內容提供,便于用戶創建相應的瀏覽器、文本框,實現數的共享。(3)資源管理器,為用戶提供了布局文件、圖片以及圖標等各種用戶所需文件。還有就是通知管理器。
再次,Android運行時環境和各種庫。在內核上運行的就是庫,在Android系統中,其包含了多媒體庫和各種核心庫,其主要功能就是為了管理外觀管理器,不僅可以支持2D圖形,而且可以支持3D圖形的,是一個較好的圖形庫。在Android系統運行時,其中的核心庫和虛擬機,作為應用程序的框架基礎,可以為應用程序提供其所需要的動力。
最后,就是Linux內核層。從整個系統來講, Android系統的核心就是Linux內核層,在這一層中,包含了系統運行的一些核心硬件和服務,比如:電源管理、驅動程序、內存管理等,這些都需要通過Lnux內核來完成和體現。
多線程技術在Android系統中的應用
Android系統,要想正常運行,其必須要具備一個成熟的應用程序,一方面,要保證良好的響應速度和運行速度,另一方面,還要保證各項程序的流暢貫通,而在所有的要素當中,最為重要的就是以響應速度的保證。具體從以下方面說明:
首先,表示層。在系統中,其有一個表示層,其主要是用來表示活動應用程序。具體來講,對相關信息和響應,其通過視圖來完成,并且形成圖形界面,通常情況下,一個活動只包含一個用戶界面。其次,不可見的工作者。在應用程序當中,有一個不可見的服務工作者,其主要通過服務組件,要后臺進行一切活動,保證系統的正常運行,它不僅要吧及時更新數據,而且可以通過相關的程序形成可見的活動,并且通知用戶。第三,意圖接收者。在系統中還有一個廣播接收器,通過接收器,借助于應用程序,就可以進行接收到相應的某個意圖,可以說這是一個非常有效的特點。第四,就是關于內容服務器和意圖。所謂內容服務器,其就是一個數據存儲器,可以實現共享,而且還可對應用數據庫進行共享和管理,加強了多個程序之間的相互連接。而意圖作為一個橋梁,在各個應用程序之間進行消息的傳遞,便于某個動作的執行,同時,還可能在系統范圍內廣播消息。
在所有的這此組件當中,用戶界面就是用戶交互的主要媒介,通常情況下,Android系統中,其應用程序的運行,主要是一個單獨的線程里,因此,如果應用程序在線程中,其所做的事情時間過長的話,就會造成應用程序無法響應,也是我們通常怕說的ANR對話框,而造成這種現象的主要原因就是由于應用程序沒有機會處理輸入事件,進而也就影響了程序響應的速度,
在這里我們通過例子簡單了解一下多線程技術在Android系統中應用。
在軟件架構中,當用戶打開主界面時,會出現一些文本輸入框,這就需要我們輸入文件的地址,然后,輸入了相應的網址之后,點擊確定即可進行相關文件的下載,而在這個過程中,要想完成下載的任務,那么就要運行多個子線程才可完成。與此同時,其會以消息的方式在子線程運行,且將相應的下載進度及時通過主線程,當消息到達主線程后,就會進行主界面的刷新。
多線程技術在Android系統中應用的具體實現
當網絡服務器與手機進行了有效的連接后,將新的子線程進行開啟,然后進行相應的任務下載,然后再通過核心代碼的顯示,確保子線程中整個下載任務的進行,同時,還要通過主線程,創建相應的系統對象,便于消息的接收,進行Android系統中所有線程之間的相互通信和同時執行,刷新、分離界面和任務,避免ANR現象的發生,保證應用程序運行的流暢性。
總結
伴隨我國經濟發展和人們生活水平的提高,Android智能手機在手機市場中所占的份額越來越大。多線程技術在Android系統中的作用通過我們以上分析可以看出。所以對多線程技術在Android手機開發中的應用進行科學的分析是非常有必要的。此外,隨著科學技術的不斷發展,新的技術和新系統也會不斷地涌現出來,因此,要加大研究力度,引入新的技術,促進手機行業的發展。
(作者單位:長江大學計算機科學學院)