介紹
本示例是一個安全類App,使用@ohos.dlpPermission 接口展示了在eTS中普通文件加密受限的過程。
效果預(yù)覽
使用說明:
1.啟動應(yīng)用后點擊“+”按鈕可以添加一個普通文件;
2.長按點擊加密按鈕,出現(xiàn)加密權(quán)限彈窗,選擇需要設(shè)置的權(quán)限并點擊確定;
3.點擊加密文件,跳轉(zhuǎn)到文本編輯應(yīng)用,如果設(shè)置的權(quán)限是只讀權(quán)限,頁面置灰,不可編輯。
4.長按點擊刪除按鈕,刪除文件;
工程目錄
entry/src/main/ets/
|---component
| |---CustomDialog.ets // 權(quán)限彈窗
|---feature
| |---DlpManager.ets // Dlp管理
| |---FileManager.ets // 文件管理
| |---PreferencesManager.ets // 持久化存儲
|---pages
| |---Index.ets // 首頁
|---util
| |---Logger.ts // 日志
| |---ResourceUtils.ets // 資源轉(zhuǎn)換
具體實現(xiàn)
- 文件的添加和文件列表的獲取分別在Index和MediaFileUri中
- 文件的添加:首先通過@ohos.file.picker接口的DocumentSaveOptions()方法自定一個參數(shù),然后通過newpicker.DocumentViewPicker()方法拉起文件管理應(yīng)用去新建一個普通文件。
- 文件列表的獲?。菏紫仁褂聾ohos.file.fileAccess接口的createFileAccessHelper()方法來創(chuàng)建連接指定wants的helper對象,然后通過getRoots()方法來獲取helper對象連接的文件管理服務(wù)類的設(shè)備根節(jié)點信息,并獲取到目錄url,最后通過getFileInfoFromUri()方法得到文件的信息。
- 文件的加密操作在DlpManager中
- 加密操作:使用dlpPermission接口的generateDLPFile方法獲得一個相關(guān)的操作型關(guān)系數(shù)據(jù)庫RdbStore,將明文文件加密生成權(quán)限受控文件。
相關(guān)權(quán)限
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.READ_MEDIA
允許應(yīng)用讀寫用戶外部存儲中的媒體文件信息:ohos.permission.WRITE_MEDIA
允許文件管理類應(yīng)用通過FAF框架訪問公共數(shù)據(jù)文件:ohos.permission.FILE_ACCESS_MANAGER
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.STORAGE_MANAGER
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.ACCESS_DLP_FILE
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.MANAGE_DISTRIBUTED_ACCOUNTS
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.MANAGE_LOCAL_ACCOUNTS
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.GET_LOCAL_ACCOUNTS
允許應(yīng)用讀取用戶外部存儲中的媒體文件信息:ohos.permission.MANAGE_DISTRIBUTED_ACCOUNTS
依賴
需要依賴三方應(yīng)用文本編輯FileEdit的hap。
約束與限制
1.本示例僅支持標(biāo)準(zhǔn)系統(tǒng)上運行;
2.本示例僅支持API10版本SDK,SDK版本號(4.0.10.10), 鏡像版本號(4.0 Release)。
3.本示例需要使用DevEco Studio 4.0 Beta2 (Build Version: 4.0.0.400, built on August 2, 2023)才可編譯運行;
4.本示例需要使用@@ohos.dlpPermission系統(tǒng)權(quán)限的系統(tǒng)接口。使用Full SDK時需要手動從鏡像站點獲取,并在DevEco Studio中替換。
下載
如需單獨下載本工程,執(zhí)行如下命令:
git init
git config core.sparsecheckout true
echo code/ SystemFeature/Security/DLP/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
為了幫助大家更深入有效的學(xué)習(xí)到鴻蒙開發(fā)知識點,小編特意給大家準(zhǔn)備了一份全套最新版的HarmonyOS NEXT學(xué)習(xí)資源,獲取完整版方式請點擊→HarmonyOS教學(xué)視頻:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
HarmonyOS教學(xué)視頻:語法ArkTS、TypeScript、ArkUI等…視頻教程
鴻蒙生態(tài)應(yīng)用開發(fā)白皮書V2.0PDF: 獲取完整版白皮書方式請點擊→https://docs.qq.com/doc/DZVVkRGRUd3pHSnFG?u=a42c4946d1514235863bb82a7b2ac128
鴻蒙 (Harmony OS)開發(fā)學(xué)習(xí)手冊→https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
一、入門必看
1.應(yīng)用開發(fā)導(dǎo)讀(ArkTS)
2………
二、HarmonyOS 概念→https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
1.系統(tǒng)定義
2.技術(shù)架構(gòu)
3.技術(shù)特性
4.系統(tǒng)安全
5…
三、如何快速入門?→https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
1.基本概念
2.構(gòu)建第一個ArkTS應(yīng)用
3…
四、開發(fā)基礎(chǔ)知識→https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
1.應(yīng)用基礎(chǔ)知識
2.配置文件
3.應(yīng)用數(shù)據(jù)管理
4.應(yīng)用安全管理
5.應(yīng)用隱私保護(hù)
6.三方應(yīng)用調(diào)用管控機(jī)制
7.資源分類與訪問
8.學(xué)習(xí)ArkTS語言
五、基于ArkTS 開發(fā)→https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
1.Ability開發(fā)
2.UI開發(fā)
3.公共事件與通知
4.窗口管理
5.媒體
6.安全
7.網(wǎng)絡(luò)與鏈接
8.電話服務(wù)
9.數(shù)據(jù)管理
10.后臺任務(wù)(Background Task)管理
11.設(shè)備管理
12.設(shè)備使用信息統(tǒng)計
13.DFX
14.國際化開發(fā)
15.折疊屏系列文章來源:http://www.zghlxwxcb.cn/news/detail-850473.html
更多了解更多鴻蒙開發(fā)的相關(guān)知識可以參考:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3
文章來源地址http://www.zghlxwxcb.cn/news/detail-850473.html
到了這里,關(guān)于HarmonyOS實戰(zhàn)開發(fā)DLP-如何實現(xiàn)一個安全類App。的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!