• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Android手機(jī)的加密防盜系統(tǒng)的探究與實(shí)現(xiàn)

      2014-10-21 14:56高毅
      科技視界 2014年36期
      關(guān)鍵詞:防盜平臺加密

      高毅

      【摘 要】隨著時(shí)代的發(fā)展,人們對于信息獲取的需求日益增強(qiáng)。相對電視、互聯(lián)網(wǎng)絡(luò)等方式,智能手機(jī)憑借其可以隨時(shí)隨地獲取和處理信息的優(yōu)勢,逐漸成為人們獲取信息的一種重要手段。在Google最開始推出Android的時(shí)候,Android是以移動(dòng)設(shè)備的操作系統(tǒng)的身份存在的,然而隨著這幾年的發(fā)展,Android的定位已經(jīng)悄然起了變化?;贏ndroid上的開發(fā)層出不窮,基于該平臺來開發(fā)手機(jī)應(yīng)用管理軟件具有良好的市場背景,一個(gè)好的應(yīng)用管理工具將使用戶更容易地操作系統(tǒng)。本文主要描述基于Android平臺對手機(jī)的加密和防盜功能進(jìn)行探究與實(shí)現(xiàn)。

      【關(guān)鍵詞】Android;平臺;加密;防盜

      0 引言

      當(dāng)今信息產(chǎn)業(yè)高速發(fā)展,移動(dòng)通信技術(shù)作為信息社會的主要支撐技術(shù)之一也飛速發(fā)展著。手機(jī)也經(jīng)歷了從最初只提供簡單的通訊服務(wù)向更多擴(kuò)展業(yè)務(wù)功能發(fā)展歷程。智能手機(jī)是一種在手機(jī)內(nèi)安裝了相應(yīng)開放式操作系統(tǒng)的手機(jī),至2008年底就約有4.5億部。我們看到智能手機(jī)正朝著兩個(gè)不同的方向發(fā)展:Mac OS側(cè)重于應(yīng)用,而Windows Mobile和Symbian側(cè)重于智能手機(jī)任務(wù)和通訊,Android操作系統(tǒng)則兩者兼顧,魚與熊掌兼得。

      1 系統(tǒng)相關(guān)技術(shù)概述

      1.1 Android平臺的優(yōu)勢

      Android平臺由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,號稱是首個(gè)為移動(dòng)終端打造的真正開放和完整的移動(dòng)平臺。該平臺具有以下優(yōu)勢:

      1.1.1 開放性手機(jī)平臺

      Android是Google開發(fā)的基于Linux平臺的開源手機(jī)操作系統(tǒng)。Google通過與運(yùn)營商、設(shè)備制造商、手機(jī)公司和其他有關(guān)各方結(jié)成深層次的合作伙伴關(guān)系,希望借助建立標(biāo)準(zhǔn)化、開放式的智能手機(jī)操作系統(tǒng),在移動(dòng)產(chǎn)業(yè)內(nèi)形成一個(gè)開放式的生態(tài)系統(tǒng)。

      1.1.2 網(wǎng)絡(luò)集成性很高

      Android內(nèi)部集成了大量的Google應(yīng)用,如Gmail、Reader、Map、Docs、Youtube等等,涵蓋了生活中各個(gè)方面的網(wǎng)絡(luò)應(yīng)用,對于長期使用網(wǎng)絡(luò)、信息依賴度比較高的人群而言很合適。

      1.1.3 Android具備新特性

      自從Google開發(fā)出Android后,許多人認(rèn)為其技術(shù)可信度比其他操作系統(tǒng)略勝一籌,但這并不是用戶購買Android智能手機(jī)的唯一原因。人們認(rèn)為Android是一種相對比較新的、又較為成熟的技術(shù),在達(dá)到巔峰之前還有很大的發(fā)展空間。

      1.1.4 Android平臺在數(shù)量上逐漸主宰市場,該平臺的發(fā)展勢頭正穩(wěn)步增長。

      1.1.5 Android在其他領(lǐng)域的拓展

      Android不僅促進(jìn)了手機(jī)產(chǎn)業(yè)的發(fā)展,它的全面計(jì)算服務(wù)和豐富的功能支持,已將應(yīng)用拓展到手機(jī)以外的其他領(lǐng)域。Android平臺的通用性可以適用于不同的屏幕、有線和無線設(shè)備。Android的系統(tǒng)和應(yīng)用程序開發(fā)人員將更多的涉足多媒體、移動(dòng)互聯(lián)網(wǎng)設(shè)備、數(shù)字視頻和家庭娛樂設(shè)備、汽車、醫(yī)藥、網(wǎng)絡(luò)、監(jiān)測儀器和工業(yè)管理、機(jī)頂盒等新領(lǐng)域。

      圖1 Android應(yīng)用的構(gòu)成和工作流程

      1.2 Android主要組件

      對于一個(gè)Android應(yīng)用程序來說,是由Activity、Intent Receiver、Service、Content Provider四部分組成,但并不是每一個(gè)Android應(yīng)用程序都必須由這四部分組成。在應(yīng)用程序中使用時(shí),需要在配置文件AndroidMainfest.xml中進(jìn)行配置。這個(gè)配置文件是每個(gè)Android應(yīng)用程序所必需的,用于定義應(yīng)用程序的組件、組件的功能以及必要條件等。Android應(yīng)用的構(gòu)成和工作流程如圖1所示:Activity之間通過Intent實(shí)現(xiàn)切換;Activity可以通過Content Provider獲取其他應(yīng)用程序的數(shù)據(jù);Activity通過Intent Receiver監(jiān)聽系統(tǒng)事件;Activity可以用Binder對Service進(jìn)行綁定。

      1.3 主要技術(shù)介紹

      1.3.1 BroadcastReceiver

      BroadcastReceiver用于接收并處理廣播通知。多數(shù)的廣播是系統(tǒng)發(fā)起的,如地域變換、電量不足、來電來信等。程序也可以播放一個(gè)廣播。程序可以有任意數(shù)量的 broadcast receivers來響應(yīng)重要的通知。BroadcastReceiver可以通過多種方式通知用戶:啟動(dòng)activity、使用NotificationManager、開啟背景燈、振動(dòng)設(shè)備、播放聲音等,最典型的是在狀態(tài)欄顯示一個(gè)圖標(biāo),這樣用戶就可以點(diǎn)擊打開通知內(nèi)容。Activity中有注冊一個(gè)廣播監(jiān)聽器的方法registerReceiver,只需要重寫一個(gè)繼承了BroadcastReceiver的類就可以了。

      1.3.2 TelephonyManager

      TelephonyManager用于獲取SIM卡信息。在SIM卡中并沒有保存用戶的手機(jī)號碼,區(qū)分每一張SIM是通過IMSI碼。IMSI碼是國際移動(dòng)用戶識別碼(英文全稱:International Mobile SubscriberIdentification Number)是區(qū)別移動(dòng)用戶的標(biāo)志,儲存在SIM卡中,可用于區(qū)別移動(dòng)用戶的有效信息。其總長度不超過15位,同樣使用0~9的數(shù)字。在運(yùn)營商的數(shù)據(jù)庫中存在手機(jī)號碼和IMSI碼的映射,所以手機(jī)是通過發(fā)送IMSI碼到運(yùn)營商的一端,獲得自己的手機(jī)號碼。

      1.3.3 SharedPreferences

      SharedPreferences是一種輕型的數(shù)據(jù)存儲方式,它的本質(zhì)是基于XML文件存儲key-value鍵值對數(shù)據(jù),通常用來存儲一些簡單的配置信息。其存儲位置在/data/data/<包名>/shared_prefs目錄下。SharedPreferences對象本身只能獲取數(shù)據(jù)而不支持存儲和修改,存儲修改是通過Editor對象實(shí)現(xiàn)。SharedPreferences對象與SQLite數(shù)據(jù)庫相比,免去了創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表、寫SQL語句等諸多操作,相對而言更加方便,簡潔。但是SharedPreferences也有其自身缺陷,比如其只能存儲boolean,int,float,long和String五種簡單的數(shù)據(jù)類型,無法進(jìn)行條件查詢等。

      1.3.4 Service

      Service是Android中的服務(wù),它與Activity不同,它是不能與用戶交互的,不能自己啟動(dòng)的,運(yùn)行在后臺的程序,如果退出應(yīng)用時(shí),Service進(jìn)程并沒有結(jié)束,它仍然在后臺運(yùn)行。比如當(dāng)我們一個(gè)應(yīng)用的數(shù)據(jù)是通過網(wǎng)絡(luò)獲取的,不同時(shí)間(一段時(shí)間)的數(shù)據(jù)是不同的,這時(shí)候我們可以用Service在后臺定時(shí)更新,而不用每次打開應(yīng)用的時(shí)候再去獲取。Service的生命周期并不像Activity那么復(fù)雜,它只繼承了onCreate(),onStart(),onDestroy()三個(gè)方法,當(dāng)我們第一次啟動(dòng)Service時(shí),先后調(diào)用了onCreate(),onStart()這兩個(gè)方法,當(dāng)停止Service時(shí),則執(zhí)行onDestroy()方法。這里需要注意的是,如果Service已經(jīng)啟動(dòng)了,當(dāng)我們再次啟動(dòng)Service時(shí),不會在執(zhí)行onCreate()方法,而是直接執(zhí)行onStart()方法。

      2 系統(tǒng)設(shè)計(jì)

      2.1 加密功能設(shè)計(jì)

      加密功能由10個(gè)部分組成,圖2為該功能模塊的類圖,圖3為該功能模塊的流程圖。各個(gè)類的具體作用如下:

      (1)LocusPassWordView:繼承View類,主要是用來繪制軌跡球界面、存儲用戶輸入的密碼、點(diǎn)擊重置時(shí)清空密碼。

      (2)LoginActivity:繼承Activity類,成員變量為LocusPassWordView類,判斷是否已設(shè)置密碼,如果已經(jīng)設(shè)置密碼,則讓用戶輸入密碼;如果未設(shè)置密碼,則進(jìn)入設(shè)置密碼界面。

      (3)MainActivity:輸入密碼正確后進(jìn)入該界面,提示是否重置密碼。

      (4)Point:定義點(diǎn)的三種狀態(tài)(未選中、選中正確、選中錯(cuò)誤),點(diǎn)的下標(biāo),初始狀態(tài)設(shè)置為0。

      (5)SetPasswordActivity:繼承Activity類,重置密碼。

      (6)BitmapUtil:縮放圖片,圖片圓角處理。

      (7)MathUtil:計(jì)算兩點(diǎn)間的距離,計(jì)算直線的角度。

      (8)RoundUtil:判斷點(diǎn)是否在圓內(nèi)。

      (9)StringUtil:判斷密碼是否為空。

      (10)ListenService:監(jiān)聽服務(wù),把加密的應(yīng)用程序存儲到隊(duì)列中,如果當(dāng)前運(yùn)行的應(yīng)用程序已加密,則彈出解鎖頁面,如果沒有加密,則直接進(jìn)入該程序。

      圖2 加密功能類圖

      圖3 加密功能流程圖

      2.2 防盜功能設(shè)計(jì)

      防盜功能是在手機(jī)丟失時(shí),開啟防盜功能的前提下,程序判斷SIM卡信息,如果檢測到已經(jīng)發(fā)生變化,則給指定安全號碼發(fā)送短信,幫助主人找回手機(jī)。首次進(jìn)入該軟件,要先設(shè)置密碼,防止別人關(guān)閉該軟件。非首次進(jìn)入時(shí)則直接輸入密碼,也可以重置密碼,圖4為該模塊的流程圖。

      圖4 防盜功能流程圖

      防盜功能模塊主要由兩個(gè)類組成:PhoneProtectActivity類和Receiver類,具體功能如下:

      (1)phoneProtectActivity繼承Activity類,主要是實(shí)現(xiàn)界面按鈕的點(diǎn)擊事件及存儲輸入的信息。定義isFirst變量來判斷是否是首次進(jìn)入該軟件,初始化為1,表示是首次進(jìn)入,彈出設(shè)置密碼對話框,將輸入的用戶名和密碼存儲到“data.xml”文件中,isFirst狀態(tài)置為0,表示非首次進(jìn)入。非首次進(jìn)入該軟件時(shí),彈出輸入密碼對話框,輸入用戶名和密碼后,驗(yàn)證是否跟“data.xml”里面存儲的值一致,如果一致可以進(jìn)入該軟件,不一致則提示錯(cuò)誤。用戶也可以選擇重置密碼,如果輸入舊密碼和“data.xml”里面存儲的值一致且兩次輸入新密碼一致,則修改密碼成功,修改“data.xml”里面存儲的值,返回輸入密碼界面,輸入用戶名和新密碼后可以進(jìn)入該軟件。定義isStart變量來判斷是否已開啟防盜功能,初始化為0,表示沒有開啟功能,輸入安全號碼后,點(diǎn)擊開啟防盜按鈕,則安全號碼輸入框不能編輯,開啟防盜按鈕變?yōu)殛P(guān)閉防盜。輸入的安全號碼存儲到“data.xml”文件中,isStart狀態(tài)置為1,表示已啟用,當(dāng)前手機(jī)SIM卡的IMSI號碼存儲到“data.xml”文件中,代碼如下:(下轉(zhuǎn)第50頁)

      (上接第14頁)(2)Receive類是一個(gè)廣播接收器,繼承BroadCastReceive類,獲取“Data.xml”中存儲的值,如果isStart狀態(tài)為已啟用且手機(jī)IMSI碼信息與當(dāng)前不一致,則發(fā)送一條信息給安全號碼。

      3 結(jié)束語

      本文探討了基于Android的手機(jī)的加密防盜系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)過程。首先介紹了當(dāng)前背景、Android平臺的優(yōu)勢以及Android主要組件和系統(tǒng)用到的主要技術(shù),最后從整體上描述加密功能和防盜功能的設(shè)計(jì)。近年來由于Android平臺良好的開放性和便捷性等特點(diǎn),采用Android平臺的智能手機(jī)越來越受到人們的青睞,Android平臺在智能手機(jī)領(lǐng)域中所扮演的角色也越來越重要。

      【參考文獻(xiàn)】

      [1]羅偉.基于Android平臺的即時(shí)通訊系統(tǒng)的研究與實(shí)現(xiàn)[D].湖南師范大學(xué),2009.

      [2]公磊,周聰.基于Android的移動(dòng)終端應(yīng)用程序開發(fā)與研究[J].計(jì)算機(jī)與現(xiàn)代化,2008(8):85.

      [3]W.Frank Ableson, Charlie Collins, Robi Sen. Google Android揭秘[M].張波,高朝勤,楊越等,譯.北京:人民郵電出版社,2010:16.

      [4]趙亮,張維.基于Android技術(shù)的界面設(shè)計(jì)與研究[J].電腦知識與技術(shù),2009,5(29):8183.

      [5]張仕成.基于Google Android平臺的應(yīng)用程序開發(fā)與研究[J].電腦知識與技術(shù),2009,5(29):7959.

      [6]吳宏森,宋順林.MVC架構(gòu)在工程項(xiàng)目管理系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,2006,22(22):256.

      [責(zé)任編輯:湯靜]

      猜你喜歡
      防盜平臺加密
      一種基于熵的混沌加密小波變換水印算法
      古代陵墓中的防盜機(jī)關(guān)
      防火防盜報(bào)警器設(shè)計(jì)
      2017年凱迪拉克XT5電路圖
      以學(xué)霸講堂為依托的學(xué)生黨員學(xué)風(fēng)引領(lǐng)平臺建設(shè)研究
      認(rèn)證加密的研究進(jìn)展
      剩女筆記
      基于ECC加密的電子商務(wù)系統(tǒng)
      基于格的公鑰加密與證書基加密
      新绛县| 盐亭县| 永城市| 庆安县| 思南县| 仁化县| 孟津县| 乌什县| 鄂温| 平安县| 长兴县| 河源市| 顺平县| 凉山| 桃江县| 桐梓县| 松桃| 达州市| 久治县| 哈密市| 安徽省| 应城市| 宣恩县| 新邵县| 玉林市| 宝鸡市| 敦煌市| 澄江县| 南岸区| 浪卡子县| 丁青县| 正阳县| 平阳县| 涡阳县| 博野县| 威海市| 张北县| 都江堰市| 惠安县| 吉木乃县| 隆安县|