【正文】
理這一 Intent 的代碼 (在當前情況下就是瀏覽器 ),并運行之。一個活動就是完成 某些工作的代碼塊,這部分工作還可能包括對用戶 UI 界面的顯示。 Android 運行時組件 雖然 Android 是用 Java 語言來開發(fā)、撰寫應(yīng)用程序,但卻不使用 Java 運行時組件來執(zhí)行 Java 程序,而是使用了由 Google 自行研發(fā)的 Android 運行時組件來執(zhí)行程序。 SSL握手協(xié)議 (SSL Hand shake proto col):它建立 在 SSL 記錄協(xié)議之上,用于在實際的數(shù)據(jù)傳輸開始前,通訊雙方進行身份認證、協(xié)商加密算法、交換加密密鑰等。 (3)SGL:主要是處理有關(guān)顯示 2D 方面的繪圖引擎。 (8)電話管理器 :用來管理用戶撥打與接聽電話的相關(guān)功能。 (2)內(nèi)容提供者 :使應(yīng)用程序可以訪問另一個應(yīng)用程序的數(shù)據(jù) (如聯(lián)系人數(shù)庫 ),或者共享它們自己的數(shù)據(jù)。 (9)GPS: Global Positioning System,即全球定位系統(tǒng),它是一個由覆蓋全球的 24 顆衛(wèi)星組成的衛(wèi)星系統(tǒng)。 (8)藍牙、 EDGE、 3G 及 WiFi:藍牙是一種新型、開放、低成本、短距離的無線連接技術(shù),可取代短距離的電纜,實現(xiàn)話音和數(shù)據(jù)的無線傳輸。它雖然很小巧,但是支持的 SQL 語句毫不遜色于其它開源數(shù)據(jù)庫。 (4)優(yōu)化的繪圖能力 :在程序里可以用到的繪圖功能分為 2D 與 3D 兩個方面。在安 全性上也將更加出色,能夠十分有效的幫助用戶進行獲取到的內(nèi)容的管理,保護用戶的個人隱私和基于手機的金融活動如電子錢包、在線支付、在線貿(mào)易等。根據(jù)觀察,在不久的將來,移動手機終端將會在以下若干方面具有新的發(fā)展。 Twiter,Myspace 等國外知名社交類網(wǎng)站都 已經(jīng)推出手機版。 國內(nèi)外手機應(yīng)用現(xiàn)狀 隨著 3G 在中國的全面啟動,它所帶來的巨大機遇和新生力量,大規(guī)模的網(wǎng)絡(luò)建設(shè)正不斷深入展開。該系統(tǒng)允許用戶在其基礎(chǔ)上編寫和修改相關(guān)軟件,使支持的應(yīng)用程序更加豐富多彩。 iOS 是由蘋果公司為 iPhone 開發(fā)的操作系統(tǒng)。 因為興趣和挑戰(zhàn),我開始自學(xué) android 編程,通關(guān)指導(dǎo)老師的幫助完成了校園通軟件。截止 2020 年第二季度 Android 系統(tǒng)的國內(nèi)市場占有率已經(jīng)過 10%,在西歐以及北美智能手機市場占有率也在 20%左右。布局 2 A Campus Information Software based on the Android operating system Abstract: With the Mobile Phone enters into the live step by step, it will bee the main device to obtain information. Services of mobile Phone will have great development space, Campus Information is one of them. Android platform offers users very convenient Campus Information the function, This will be for Campus Information the design and implementation of service provides a better addition, Android platform is basically free, so can effectively reduce the software costs, Finally let each user will be free to get information, Also for the popularization of mobile phone Campus Information the service contribution. This paper discusses the present application of Symbian, Windows Mobile, MacOSX and RIM situation of such platform are analysed and pared. Further research and analysis of the Android platform system architecture and the ponent model, then analyzes the important Android API and the application form, with Intent and life cycle mechanism, on this basis, design and development of mobile phone Campus Information the software based on the Android platform. This system friendly interface, Convenient operation, Has good expansibility and maintainability。 進而研究分析了 Android 平臺的系統(tǒng)架構(gòu)和組件模型,接著解析了 Android 中的重要 API和應(yīng)用構(gòu)成,以 Intent和生命周期的機制。 Android 平臺提供給用戶非常方便的數(shù)據(jù)查閱功能,這將為校園資訊軟件的設(shè)計與實現(xiàn)提供了更好的平臺。Java。 Layout 3 1 引言 目前隨著移動設(shè)備越來越普及以及移動設(shè)備的硬件的提升,移動設(shè)備的功能越來越完善,移動設(shè)備的系統(tǒng)平臺也日漸火熱起來。 Android 是基于 Linux 內(nèi)核的軟件平臺和操作系統(tǒng),是 Google 在 2020 年 11 月 5 日公布的手機系統(tǒng)平臺,早期由 Google 開發(fā),后由( Open Handset Alliance)開發(fā)。 Symbian 是為手機而設(shè)計的操作系統(tǒng),它是一個實時性,多任務(wù)的純 32 位嵌入式的操作系統(tǒng),具有低能耗,內(nèi)存占用較少等特點。 Windows Mobile 系列操作系統(tǒng)功能強大,而且支持該操作系統(tǒng)的智能手機大多數(shù)都采用了英特爾嵌入式處理器,主頻比較高,在其它硬件配置 (如內(nèi)存、儲存卡容量等 )上也比采用其它操作系統(tǒng)的智能手機要高出許多,因此性能比較強勁,速度比較快。同時也取得了一定成果。 近年來十分熱門的網(wǎng)絡(luò)社交服務(wù)( Social Networking Services)也已進入到手機客戶端領(lǐng)域。 手機娛樂游戲類應(yīng)用,該類應(yīng)用作為傳統(tǒng)類手機應(yīng)用,在各個平臺上發(fā)展已近相對完善,手機上對各種流媒體的播放也已完美的支持。如進行端到端的多人游戲、照片分享、書籍分享、音樂分享等。 (3)集成的瀏覽器 :集成的瀏覽器是 Android 內(nèi)建的瀏覽器,是以 WebKit 的瀏覽引擎為基礎(chǔ)所開發(fā)成的。 SQLite 是一款輕型的數(shù)據(jù)庫,它的設(shè)計目標是嵌入式的,目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用的資源非常低。另外支持各種通用的靜態(tài)圖像格式,例如 :JPG、 PNG、 GIF 等格式。該技術(shù)使用的是 附近的頻段,該頻段目前尚屬沒用許可 的無線頻段。 應(yīng)用程序框架 在 Android SDK 中,定義了讓開發(fā)者使用與核心應(yīng)用程序相同 API 的權(quán)限應(yīng)用程序框架是為了要簡化組件的重新利用而設(shè)計的,應(yīng)用程序可以發(fā)布功能為其它應(yīng)用程序所使用。例如 :啟動應(yīng)用程序要用到的資源準備及關(guān)閉應(yīng)用程序時釋放內(nèi)存及相關(guān)資源等工作。例如 :在 2D、 2D 顯示上的合成、疊合動作。它已被廣泛地用于 Web 瀏覽器與服務(wù)器之間的身份認證和加密數(shù)據(jù)傳輸。 (8)web Kit:是一個先進的網(wǎng)頁瀏覽器引擎,被用來構(gòu)建 Android 瀏覽器和內(nèi) 10 嵌的 web 視圖,也可以讓開發(fā)者利用這個引擎來做不 同的應(yīng)用。 Android 應(yīng)用的構(gòu)成和工作流程如圖 22: 圖 22 Android 的構(gòu)成和工作流程 11 3 Android 應(yīng)用程序結(jié)構(gòu)剖析 Android 的 API Android API 主要包含了以下幾個部分 : (1) 是系統(tǒng)的控制文件,它告訴系統(tǒng)如何處理所創(chuàng)建的所有應(yīng)用組件 (尤其是活動 (Activity),服務(wù) (Service),意圖接收器 (Intent Receiver)和內(nèi)容提供者 (Content Provider))。開發(fā)者可以通過創(chuàng)建一個新的視圖的方法來使用自定義的圖形處理技術(shù) (比如開發(fā)游戲,或者是使用了不常用的用戶圖形窗口界面 )。例如媒體播放器的服務(wù),當用戶退出媒體選擇的界面時,仍然希望音樂依然可以繼續(xù)播放,這時就可用服務(wù)來保證當用戶界面關(guān)閉時音樂還繼續(xù)播放著。當決定使用以上哪些組件來構(gòu)建 Android 應(yīng)用程序時,需要將它們注冊在 文件中,這是一個 XML 配置文件,在這個文件中可以聲明應(yīng)用程序組件以及它們的特性和要求。顯示一個新界面就相當于生成一個對應(yīng)的活動對象。在意圖的描述結(jié)構(gòu)中,含有兩個重要的數(shù)據(jù)結(jié)構(gòu) :動作和動作對應(yīng)的數(shù)據(jù)。例如 :一個活動使用 startActivity(myIntent)來調(diào)用其他活動時,系統(tǒng)會查找所有已經(jīng)安裝的應(yīng)用程序的意圖過濾器,并從中挑 選出能夠匹配 myIntent 意圖的活動。 服務(wù) 服務(wù)是具有長生命周期并且沒有用戶界面的代碼。而這四種組件是獨立的,它們之間可以互相調(diào)用,協(xié)調(diào)工作,最終組成一個真正的 Android 應(yīng)用。此外,還可以根據(jù)應(yīng)用的需要,定義自己的動作,并可定義相應(yīng)的活動來處理自定義的動作。通常 Android 會根據(jù)意圖中包含的其它 15 屬性的信息,比如動作、數(shù)據(jù) /數(shù)據(jù)類型、類別進行查找,最終找到一個與之匹配的目標組件。通過指定具體的組件類,通知應(yīng)用啟動對應(yīng)的組件。 如果意圖中的數(shù)據(jù)不是 content:類型的 URI,而且意圖也沒有明確指定它的數(shù)據(jù)類型,將根據(jù)意圖中數(shù)據(jù)的格式 (比如 :或者 mailto:)進行匹配。每多執(zhí)行一個應(yīng)用程序,就會多耗費一些系統(tǒng)內(nèi)存,而手機里的內(nèi)存是相當有限的。 一個活動類別除了 OnCreate 方法之外,還預(yù)先定義了 onPause(暫停 )、OnResume(繼續(xù) )等的基本方法,當從一個活動切換到另一個活動的時候,原來的活動將經(jīng)過一連串的狀態(tài)改變。當警告對話框或電話來了時,都會讓原來運行的活動退到背景畫面。如果是被系統(tǒng)回收,可能是因為內(nèi)存不足了,所以系統(tǒng)根據(jù)內(nèi)存不足時的回收規(guī)則,將處于停止狀態(tài)的活動所占用的內(nèi)存回收。 活動的運作流程 由實際運行來看,我們可以歸納出所有 Android 應(yīng)用程序都遵循的運作流程 : (l)一般啟動 啟動一個活動的基本流程為 onCreate 一 onstart 一 onResume。 ( 4)退出結(jié)束 退出結(jié)束的基本流程為 onPause 一 onStop 一 onDestroy。 需求分析 本軟件是 Android 平臺的 一個校園資訊 程序 ,啟動程序后查閱學(xué)校相關(guān)資訊包括在學(xué)校吃住娛樂風景等各方面的訊息。 首頁介紹學(xué)校的一個總體情況,分類是整個軟件的核心,其中包括了軟件的各種主要功能,搜索是一個數(shù)據(jù)庫搜索系統(tǒng),我的資料是個人資料和數(shù)據(jù)的一個整合和提供了一些簡單的小服務(wù),更多則是后期的一些擴展功能。 ?? layout “首頁”的布局 “分類”的布局 “搜索”的布局 ... 還有很多的 layout,不贅述 values 保存樣式的 XML 文件 保存字符串的 XML 的文件 AppWidget 的屬性文件 表 資源文件名稱與用途 程序主要代碼 在介紹 MySchool 的核心代碼前,首先了解一下 ()。 Intent mHomeItent, mChannelIntent, mSearchIntent, mAccountIntent, mMoreIntent。 clips=(Button)findViewById()。 (, )。 Button btnNormal, btnSuper。 public static final int ItemHeight = 40。 } public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { TextView textView = getTextView()。 } 二級菜單的具體代碼。 (viewHolder)。 系統(tǒng)測試 至此已經(jīng)完成了 MySchool工程的代碼編寫工作,在這一節(jié)對 MySchool工程進行測試,步驟及結(jié)果如下: (1) 啟動 Android虛擬機 在工程名 Myschool上點右鍵,然后選擇“ Run As”,然后選擇“ Android Application”。t agree wi