電話日志011權(quán)限控制_第1頁
電話日志011權(quán)限控制_第2頁
電話日志011權(quán)限控制_第3頁
電話日志011權(quán)限控制_第4頁
電話日志011權(quán)限控制_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

實訓(xùn)Android電話記錄日志項目北京電子科技職業(yè)學(xué)院1項目準(zhǔn)備框架設(shè)計通話記錄列表統(tǒng)計功能餅狀圖統(tǒng)計功能柱狀圖統(tǒng)計功能項目發(fā)布23456項目技能點權(quán)限控制使用外部類的方式實現(xiàn)監(jiān)聽事件餅狀圖Activity失去焦點項目依賴創(chuàng)建Fragment屏幕方向Activity重新獲得焦點ActivityFragment的生命周期AndroidStudio關(guān)閉Activity使用字符串資源Fragment與Activity通信Android虛擬機(jī)(AVD)Activity間信使intent使用顏色資源BottomNavigationView運行Android應(yīng)用程序使用Intent傳遞數(shù)據(jù)使用dimen資源ViewPager導(dǎo)航AndroidMonitor利用Intent對象傳遞簡單數(shù)據(jù)使用drawables(vector)和mipmap資源Bean使用ADB從其他Activity返回數(shù)據(jù)使用代碼創(chuàng)建布局SQLite數(shù)據(jù)庫CURD操作源代碼獲取Activity返回值RelativeLayout相對布局Cursor、Adapter向界面綁定數(shù)據(jù)資源AndroidLogCatLinearLayout線性布局訪問系統(tǒng)ContentProvider項目管理文件AndroidStudio布局編輯器ImageView圖片視圖RecyclerViewActivity的生命周期

ListView列表組件柱狀圖Activity開始

3通話記錄列表統(tǒng)計功能技能點:權(quán)限控制1、功能實現(xiàn)效果實現(xiàn)訪問通話記錄的權(quán)限管理功能。2、實現(xiàn)過程:權(quán)限控制在舊的權(quán)限管理系統(tǒng)中,權(quán)限僅僅在App安裝時詢問用戶一次,用戶同意了這些權(quán)限App才能被安裝(某些深度定制系統(tǒng)另說),這樣,App一旦安裝后就可以做一些不為人知的事情了。從Android6.0開始,App可以直接安裝,App在運行時一個一個詢問用戶授予權(quán)限,系統(tǒng)會彈出一個對話框讓用戶選擇是否授權(quán)某個權(quán)限給App(這個Dialog不能由開發(fā)者定制),當(dāng)App需要用戶授予不恰當(dāng)?shù)臋?quán)限的時候,用戶可以拒絕,用戶也可以在設(shè)置頁面對每個App的權(quán)限進(jìn)行管理。特別注意:這個對話框不是開發(fā)者調(diào)用某個權(quán)限的功能時由系統(tǒng)自動彈出,而是需要開發(fā)者手動調(diào)用,如果你直接調(diào)用而沒有去申請權(quán)限的話,將會導(dǎo)致App崩潰。2、實現(xiàn)過程:權(quán)限控制新的權(quán)限策略講權(quán)限分為兩類,第一類是不涉及用戶隱私的,只需要在Manifest中聲明即可,比如網(wǎng)絡(luò)、藍(lán)牙、NFC等;第二類是涉及到用戶隱私信息的,需要用戶授權(quán)后才可使用,比如SD卡讀寫、聯(lián)系人、短信讀寫等。

本項目中涉及的是READ_CALL_LOG,屬于第二類2、實現(xiàn)過程:權(quán)限控制所有危險的Android系統(tǒng)權(quán)限屬于權(quán)限組,如果APP運行在Android6.0(APIlevel23)或者更高級別的設(shè)備中,而且targetSdkVersion>=23時,系統(tǒng)將會自動采用動態(tài)權(quán)限管理策略,如果你在涉及到特殊權(quán)限操作時沒有申請權(quán)限權(quán)限而直接調(diào)用了相關(guān)代碼,你的App可能就崩潰了,綜上所述你需要注意:此類權(quán)限也必須在Manifest中申明,否則申請時不提示用戶,直接回調(diào)開發(fā)者權(quán)限被拒絕。同一個權(quán)限組的任何一個權(quán)限被授權(quán)了,這個權(quán)限組的其他權(quán)限也自動被授權(quán)。例如一旦WRITE_CONTACTS被授權(quán)了,App也有READ_CONTACTS和GET_ACCOUNTS了。申請某一個權(quán)限的時候系統(tǒng)彈出的Dialog是對整個權(quán)限組的說明,而不是單個權(quán)限。例如我申請READ_EXTERNAL_STORAGE,系統(tǒng)會提示"允許xxx訪問設(shè)備上的照片、媒體內(nèi)容和文件嗎?"。如果App運行在Android5.1(APIlevel22)或者更低級別的設(shè)備中,或者targetSdkVersion<=22時,在所有系統(tǒng)中仍將采用舊的權(quán)限管理策略,系統(tǒng)會要求用戶在安裝的時候授予權(quán)限。2、實現(xiàn)過程:權(quán)限控制AndroidManifest.xml里聲明android.permission.READ_CALL_LOG權(quán)限。<uses-permissionandroid:name="android.permission.READ_CALL_LOG"/>

2、實現(xiàn)過程:權(quán)限控制2.動態(tài)請求授權(quán)if(ActivityCompat.checkSelfPermission(getActivity(),Manifest.permission.READ_CALL_LOG)!=PackageManager.PERMISSION_GRANTED){//沒有權(quán)限。

if(ActivityCompat.shouldShowRequestPermissionRationale(getActivity(),Manifest.permission.READ_CONTACTS)){//用戶拒絕過這個權(quán)限了,應(yīng)該提示用戶,為什么需要這個權(quán)限。

}else{//申請授權(quán)。

ActivityCompat.requestPermissions(getActivity(),newString[]{Manifest.permission.READ_CONTACTS},1);}}

3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論