freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于android的wifi文件傳輸系統(tǒng)的設計與實現(xiàn)(編輯修改稿)

2024-12-13 22:12 本頁面
 

【文章內(nèi)容簡介】 任務個數(shù)有限制。 系統(tǒng)界面的加載:由于應用中涉及到應用圖標,圖片、電影、音樂等文件的縮略圖的獲取及顯示,為了提升系統(tǒng)的流暢度,系統(tǒng)應采用圖片等耗時資源的異步加載技術(shù)。西南科技大學本科生畢業(yè)論文 7 第 3章 系統(tǒng)概要設計 應用模塊劃分及 模塊功能介紹 根據(jù)需求分析,可以劃分出 5 個模塊: 1) 傳輸記錄管理模塊 2) 數(shù)據(jù)庫操作模塊 3) 設備連接管理模塊 4) 文件 /數(shù)據(jù)傳輸模塊 5) 文件管理模塊。 每個模塊都具有獨立的完整的功能,模塊之間又具有一定的的聯(lián)系,所有的模塊中,文件的傳輸模塊是核心,它與其他的幾個模塊都存在之間或者間接的關(guān)系。模塊之間的關(guān)系如圖 31 所示: 圖 31 系統(tǒng)各模塊關(guān)系圖 各個模塊又包含了許多具體的功能: 1) 傳輸模塊記錄:記錄的管理。 2) 數(shù)據(jù)庫操作模塊:保存記 錄到數(shù)據(jù)庫,讀取數(shù)據(jù)庫中的記錄,更新數(shù)據(jù)庫中的記錄。 西南科技大學本科生畢業(yè)論文 8 3) 設備連接管理模塊:搜索設備,連接設備,斷開設備連接,修改本機名。 4) 文件 /數(shù)據(jù)傳輸模塊:發(fā)送文件 /數(shù)據(jù),接收文件 /數(shù)據(jù),從對方設備下載文件,自定義文件發(fā)送個數(shù)。 5) 文件管理模塊:選擇要發(fā)送的文件,移除要發(fā)送的文件,瀏覽本機文件 ,瀏覽對方設備文件目錄(需先連接設備)打開文件,查看文件屬性。 如果不區(qū)分模塊,而只看功能,系統(tǒng)功能結(jié)構(gòu)圖如圖 32 所示: 圖 32 應用功能結(jié)構(gòu)圖 應用的數(shù)據(jù)存儲 中介軟件是 android 操作系統(tǒng)應用程序的橋梁,主要分為函數(shù)和虛擬機。 函數(shù)就是 AndoridSDK 中的一系列接口,應用開發(fā)會經(jīng)常用到這些接口方法。Android 的數(shù)據(jù)存儲采用 sqlite 數(shù)據(jù)庫系統(tǒng)和 文件存儲 ,用戶可以用ContentProvider 類獲取數(shù)據(jù) [3]。 android 中數(shù)據(jù)存儲技術(shù)主要有:文件存儲、Sharedpreference、 sqlite、 ContentProvider 和網(wǎng)絡存儲,在本軟件中主要使用到了文件存儲和 Sharedpreference 和 sqlite 存儲。文件存儲是以流的形式讀 寫文件,可以以文格的格式,也可以以二進制的形式,在 java 語言中要使用流,則寫入文件的對象必須進行序列化, sqlite 是嵌入式移動設備中常用的輕量級數(shù)據(jù)庫 [4]。 因為程序運行時,保存在內(nèi)存中的數(shù)據(jù)是暫存的,當應用程序退出后,保存這些數(shù)據(jù)的內(nèi)存會被系統(tǒng)回收,清除,所以,需要把一些中要的數(shù)據(jù)輸出到文件,或者保存到數(shù)據(jù)庫,或網(wǎng)絡 [5]。 西南科技大學本科生畢業(yè)論文 9 數(shù)據(jù)庫設計 Android數(shù)據(jù)庫介紹 Android 使用開源的、與操作系統(tǒng)無關(guān)的數(shù)據(jù)庫 — SQLite[6]。其優(yōu)點如下: 輕量級: SQLite 和 C\S 模式的 數(shù)據(jù)庫軟件不同,它是進程內(nèi)的數(shù)據(jù)庫引擎,因此不存在數(shù)據(jù)庫的客戶端和服務器。使用 SQLite 一般只需要帶上它的一個動態(tài)庫,就可以享受它的全部功能。而且那個動態(tài)庫的尺寸也相當小。 獨立性: SQLite 數(shù)據(jù)庫的核心引擎本身不依賴第三方軟件,使用它也不需要“安裝”,所以在使用的時候能夠省去不少麻煩。 隔離性: SQLite 數(shù)據(jù)庫中的所有信息(比如表、視圖、觸發(fā)器)都包含在一個文件內(nèi),方便管理和維護。 跨平臺: SQLite 數(shù)據(jù)庫支持大部分操作系統(tǒng),除了在電腦上使用的操作系統(tǒng)之外,很多手機操作系統(tǒng)同樣可以運行,比如 Android、 Windows Mobile、Symbian、 Palm 等。 多語言接口: SQLite 數(shù)據(jù)庫支持很多語言編程接口,比如 C\C++、 Java、Python、 dotNet、 Ruby、 Perl 等,得到更多開發(fā)者的喜愛。 安全性: SQLite 數(shù)據(jù)庫通過數(shù)據(jù)庫級上的獨占性和共享鎖來實現(xiàn)獨立事務處理。這意味著多個進程可以在同一時間從同一數(shù)據(jù)庫讀取數(shù)據(jù),但只有一個可以寫入數(shù)據(jù)。在某個進程或線程向數(shù)據(jù)庫執(zhí)行寫操作之前,必須獲得獨占鎖定。在發(fā)出獨占鎖定后,其他的讀或?qū)懖僮鲗⒉粫侔l(fā)生。 命 名規(guī)則: 表名:應用名 _表記錄的內(nèi)容名(如傳輸記錄表名: wifi_direct_records) 字段名:字段意義的英文 _(如名字: name_) 本系統(tǒng)只需要建一張表即可,來保存?zhèn)鬏斢涗?,每一行就是一條記錄。Records 記錄表字段結(jié)構(gòu)如圖 33 所示。 圖 33 Records 表結(jié)構(gòu) 西南科技大學本科生畢業(yè)論文 10 各個字段的含義如表 31 所示: 表 31 Records 表字段含義 字段名 id_ name_ path_ length_ state_ transfer_lenght_ transfer_mac_ 字段類型 Int string string string string string string 字段意思 記錄id 文件名 文件路徑 文件長度 傳輸?shù)臓顟B(tài) 已傳長度 對方設備的地址 由于只有一張表,所以數(shù)據(jù)庫的設計比較簡單。 Android 開發(fā)相關(guān)技術(shù)介紹 Android的發(fā)展歷史 Android 系統(tǒng)最開始是由 2020 在美洲加州成立的一家公司所開發(fā), 2020 年,google 發(fā)現(xiàn)了這款操作系統(tǒng)并且預估其前景極好顧收購注資了該公司,并且加速了 Android 系統(tǒng)的研發(fā)。 2020 年 9 月 23 日, google 官方發(fā)布了 。但是 的系統(tǒng)還不支持觸摸操作。 2020 年 4 月 30 日, 發(fā)布,并且創(chuàng)新型的支持了 CDMA 制式的網(wǎng)絡,也就是說可以支持中國電信了。在 版本發(fā)布之后不久, google 發(fā)布了 ,這個版本后來被視為 Android 系統(tǒng)發(fā)展史上的里程碑。 2020 年, 發(fā)布。同年, 發(fā)布,最大的優(yōu)點就是支持 NFC(近場通訊協(xié)議,是發(fā)展快捷支付消費的方向)。 2020 年 發(fā)布,開啟了 系統(tǒng)的神話級的飛躍, Android 系統(tǒng)的使用量急劇增長?,F(xiàn)如今,很多老一點的手機都是基于 的系統(tǒng)。 2020 年, 發(fā)布,代號 L,改變了 Android 系統(tǒng)的 UI 風格,新增了許多炫酷的動畫效果,啟用了老式的 DALVIK 虛擬器而采用 ART 虛擬機,系統(tǒng)流暢度明顯提升。 2020 年, google 繼續(xù)發(fā)力,將 Android 的版本提升到了 ,系統(tǒng)原生支持指紋功能,雖然其他的一些基于 的第三方系統(tǒng)(如小米 MIUI,魅族 FLYME等)也支持指紋識別,但是其接口不統(tǒng)一,第三方 APP 無 法一次開發(fā)而在所以的系統(tǒng)中使用指紋功能,而需要針對不同的系統(tǒng)做適配,很麻煩,而在 系統(tǒng)中同意了 API 接口,第三方應用就可以很好的一次開發(fā)而在不同的定制系統(tǒng)中使用指紋功能,這是個很大的改進。 正式版目前尚未發(fā)布,但是由于 雖然已經(jīng)發(fā)布一年了,但是現(xiàn)在的手機升級到 系統(tǒng)的只有少部分,西南科技大學本科生畢業(yè)論文 11 原因是那些手機的 OEM 廠商沒有做相應的升級適配,鑒于這種情況, google 據(jù)說會從 開始逐漸收回系統(tǒng)的升級權(quán)限,即由 google 官方直接推送升級,而不在由 OEM 廠商來升級 了,這對于廣大的 Android 智能手機用戶來說是個好消息,以后就不用苦苦等手機廠商來升級了 [7]。 Android系統(tǒng)結(jié)構(gòu)介紹 Android 是基于 Linux 操作系統(tǒng)的一款開源的移動操作系統(tǒng),也可以說Andorid 就是 Linux 上的一個較為復雜的應用程序。 Android 主要應用與只能手機與平板行業(yè),市場份額高,是全球最大的手機操作系統(tǒng)。 Android 系統(tǒng)現(xiàn)在發(fā)布的版本穩(wěn)定版本是 ,代號為 M。代號為 N 的 也在開發(fā)中。 原生加入了應用的權(quán)限管理,加入了指紋模塊并提 供給開發(fā)者相應的 api,加入了新的省電模式有效的增加了手機的續(xù)航時間等等,相信 會加入更多令人激動的新功能。 Android 系統(tǒng)可以分為 4 層,如圖 35 所示,由上到下分別是應用層,應用框架層,底層的庫, Linux 內(nèi)核。應用層很簡單,就是所有的 Android 應用。應用框架層主要是給上層的應用封裝一些 API,供其使用。底層的一些庫就是系統(tǒng)的一些必須的庫了,包括動態(tài)連接庫等等。 Linux 內(nèi)核主要是集成了一些算法來管理硬件,包含了很多相關(guān)的算法,如磁盤調(diào)度算法等等 [8]。 圖 35 Android 系統(tǒng)結(jié)構(gòu)分 層圖 西南科技大學本科生畢業(yè)論文 12 Android 系統(tǒng)中由虛擬機來解釋執(zhí)行應用程序,而且每隔應用都由一個單獨的虛擬機來執(zhí)行,且每個應用對應底層 Linux 系統(tǒng)中的一個進程。這是 Android進程間安全的一種機制。 Android 的虛擬機稱為 Dalvik,但從 開始,google 官方推出了新的虛擬機 Art,在 系統(tǒng)上,用戶可以選擇使用哪個虛擬機來執(zhí)行應用程序,但是 系統(tǒng)開始, Android 系統(tǒng)徹底放棄了 Dalvik 虛擬而選擇了 Art 虛擬機 [8]。原因是 Art 具有如下的優(yōu)點: 1) 應用啟動速度變快,體驗更流程,觸 感反饋及時。 2) 更長的電池續(xù)航能力。 3) 支持更低的硬件。 4) 系統(tǒng)性能顯著提升。 盡管 ART 虛擬機有一些有點,但是還是有一些缺點。學過 java 的人知道,java 語言編譯出來的是 .class 類型的中間碼,而 Android 對其優(yōu)化為 .dex 格式的中間碼,這也是為什么 Android 需要虛擬機的原因,因為這些中間碼必須專門的程序來翻譯執(zhí)行。但 ART 虛擬機與 DALVIK 虛擬機不同的是, ART 虛擬機在應用安裝的時候會將應用的那些中間碼翻譯為機器碼并保存,而 DALVIK 則是邊翻譯邊執(zhí)行。所以 ART 相對與 DALVIK 啟動應用程序的速度更快,運行應用程序更加流暢,但是安裝時間也會更長,也更加暫用存貯空間。 Android四大組件 Android 的 四 大 組 建 包 括 : Activity , Service, BraodcastRecevier ,ContentProvider。 Activity:通俗的將就是應用程序的界面,在 Activity 上面可以任意的擺放一些控件來達到想要的 UI 效果。在 MVC 編程思想中充當 VIEW 和 CONTORLER的角色 [9]。 Activity 的生命周期如圖 36 所示 : 在實際應用開發(fā)時,在 Activity 的幾個重要生命周期函數(shù)里面做一 些必要的操作。例如,在 onCreate()方法里面,通常會根據(jù)布局的 xml 文件來生成布局,在 onPause()中,經(jīng)常會做一些暫停工作,如游戲開發(fā)中,會在 onPause()方法中來暫停游戲。又如 onDestory()方法在 Activity 銷毀的時候調(diào)用,可以在這里做一些保存的工作。 Service:即服務,在后臺默默的工作,沒有界面不可見,如后臺音樂播放等一般就是使用的 Service。 Activity 與 Service 可以有不同的關(guān)系,如果 Activity直接啟動的 Servcie,那么當這個 Activity 結(jié)束是,剛才啟動的 Service 也會結(jié)束,西南科技大學本科生畢業(yè)論文 13 但是如果 Activity 以綁定的方式啟動 Service,那么在 Activity 結(jié)束后, Servcie并不會對應結(jié)束 [10]。 圖 36 Activity 生命周期 BraodcastRecevier:廣播接收器,用于接收廣播,這是 Android 系統(tǒng)進程間通信的方法之一。廣播分為系統(tǒng)廣播和自定義廣播,系統(tǒng)廣播是系統(tǒng)發(fā)送的一些重要廣播,如開機完成,電池電量改變等等一些系統(tǒng)活動都會發(fā)送廣播。當然用戶在應用程序也可以自定義發(fā)送一 些 廣 播 , 然 后 在另 外 的 地 方 一 用BraodcastRecevier 來接收。 ContentProvider:這是應用程序間共享數(shù)據(jù)的有效途徑。 Android 系統(tǒng)中的應用程序都運行在單獨的虛擬機中,對應底層 Linux 系統(tǒng)中的一個單獨進程,也西南科技大學本科生畢業(yè)論文 14 就是說應用程序之間的數(shù)據(jù)是相互分開的,這也是 Android 系統(tǒng)中進程間安全的機制。但是,應用程序有時候就是想把數(shù)據(jù)給別的應用看,如系統(tǒng)中的聯(lián)系人,就會把所有的聯(lián)系人信息利用 ContentProvider 提供給其他應用程序,對應的,自己的應用程序也可以利用 ContentProvider 來讀取手機上保存的聯(lián)系人信息。ContentProvider 的使用方法和數(shù)據(jù)庫的讀取方式是類似的。 西南科技大學本科生畢業(yè)論文 15 第 4章 系統(tǒng)詳細設計及實現(xiàn) 開發(fā)工具和軟件平臺 開發(fā)工具: Android Studio, Android 的 SDK 管理器 軟件運行平臺: 及以上 傳輸記錄模塊 這個模塊主要是負責管理文件傳輸?shù)挠涗?,包括新增記錄,修改記錄,保存記錄到?shù)據(jù)庫,從數(shù)據(jù)讀取等一些記錄的基本操作。與數(shù)據(jù)庫模塊聯(lián)系非常緊密。 程序中主要的文件: 1) ../src/provider/ 2) ../sr
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1