0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙開發(fā)Ability Kit程序框架服務:選擇申請權限的方式

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-07-01 09:50 ? 次閱讀

選擇申請權限的方式

應用在訪問數(shù)據或者執(zhí)行操作時,需要評估該行為是否需要應用具備相關的權限。如果確認需要目標權限,則需要在應用安裝包中申請目標權限。

每一個權限的權限等級、授權方式不同,申請權限的方式也不同,開發(fā)者在申請權限前,需要先根據以下流程判斷應用能否申請目標權限。

zh-cn_image_0000001698506718

上圖的數(shù)字標注,請參考以下說明:

  • 標注1:應用APL等級與權限等級的匹配關系請參考[APL等級說明]。
  • 標注2:權限的授權方式分為user_grant(用戶授權)和system_grant(系統(tǒng)授權),具體請參考[授權方式說明]。
  • 開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
    • 如果目標權限是system_grant類型,開發(fā)者在進行權限申請后,系統(tǒng)會在安裝應用時自動為其進行權限預授予,開發(fā)者不需要做其他操作即可使用權限。
    • 在應用需要獲取user_grant權限時,請完成以下步驟:
      1. 在配置文件中,聲明應用需要請求的權限。
      2. 將應用中需要申請權限的目標對象與對應目標權限進行關聯(lián),讓用戶明確地知道,哪些操作需要用戶向應用授予指定的權限。
      3. 運行應用時,在用戶觸發(fā)訪問操作目標對象時應該調用接口,精準觸發(fā)動態(tài)授權彈框。該接口的內部會檢查當前用戶是否已經授權應用所需的權限,如果當前用戶尚未授予應用所需的權限,該接口會拉起動態(tài)授權彈框,向用戶請求授權。
      4. 檢查用戶的授權結果,確認用戶已授權才可以進行下一步操作。
  • 標注3:應用可以通過ACL(訪問控制列表)方式申請高級別的權限。

應用可根據目標權限的開放范圍、授權方式,參考以下操作路徑申請對應權限。

normal等級應用申請權限的方式

權限類型授權方式操作路徑
[所有應用可申請]system_grant[聲明權限] > 訪問接口
[所有應用可申請]user_grant[聲明權限] > [向用戶申請授權] > 訪問接口
[允許normal等級應用通過ACL跨級申請]system_grant[聲明權限] > [聲明ACL權限] > 訪問接口
[允許normal等級應用通過ACL跨級申請]user_grant[聲明權限] > [聲明ACL權限]> [向用戶申請授權] > 訪問接口

說明:

  • 如果system_basic等級的權限,ACL使能為false,則normal等級應用無法申請該權限。
  • 當前可通過DevEco Studio完成[ACL方式跨級別申請權限],但該方法僅用于應用調試階段使用,不可用于發(fā)布上架應用市場。如果需要開發(fā)商用版本的應用,請在對應的應用市場進行發(fā)布證書和Profile文件的申請。

system_basic等級應用申請權限的方式

權限等級授權方式ACL使能操作路徑
normal、system_basicsystem_grant-[聲明權限]> 訪問接口
normal、system_basicuser_grant-[聲明權限] > [向用戶申請授權]> 訪問接口
system_coresystem_granttrue[聲明權限]> [聲明ACL權限]> 訪問接口
system_coreuser_granttrue[聲明權限] > [聲明ACL權限] > [向用戶申請授權] > 訪問接口HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

搜狗高速瀏覽器截圖20240326151547.png

如果應用需要將自身的APL等級聲明為system_basic及以上,在開發(fā)應用安裝包時,需要修改應用的HarmonyAppProvision配置文件即SDK目錄下的“Toolchains / _{Version} _/ lib / UnsgnedReleasedProfileTemplate.json”文件),并重新進行應用簽名。

修改方式:

HarmonyAppProvision配置文件示例如下所示,修改"bundle-info" > "apl" 字段。

"bundle-info" : {
    // ...
    "apl": "system_basic",
    // ...
},

說明: 直接修改HarmonyAppProvision配置文件的方式,僅用于應用調試階段使用,不可用于發(fā)布上架應用市場。如果需要開發(fā)商用版本的應用,請在對應的應用市場進行發(fā)布證書和Profile文件的申請。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 接口
    +關注

    關注

    33

    文章

    8961

    瀏覽量

    153295
  • 框架
    +關注

    關注

    0

    文章

    404

    瀏覽量

    17812
  • 鴻蒙
    +關注

    關注

    59

    文章

    2535

    瀏覽量

    43810
收藏 0人收藏

    評論

    相關推薦
    熱點推薦

    鴻蒙應用元服務開發(fā)-Account Kit配置scope權限

    注意,scope權限申請當前僅針對企業(yè)開發(fā)者開放。 scope權限具體覆蓋場景參見下表,按需申請。 申請
    發(fā)表于 04-11 15:50

    鴻蒙應用元服務開發(fā)-Account Kit獲取手機號

    、OpenID。 (三)開發(fā)前提 1、在進行代碼開發(fā)前,請先確認您已完成開發(fā)準備工作。 2、元服務獲取手機號之前,需要完成phone(獲取您的手機號)的scope
    發(fā)表于 04-08 16:14

    鴻蒙應用元服務開發(fā)-Account Kit獲取收貨地址

    可將選擇的收貨地址返回給元服務。 四、開發(fā)前提 1、在進行代碼開發(fā)前,請先確認您已完成配置Client ID工作。 2、元服務調用獲取收貨地
    發(fā)表于 04-07 17:15

    鴻蒙應用元服務開發(fā)-Account Kit獲取華為賬號用戶信息概述

    三種獲取頭像的方式:使用華為賬號頭像、從圖庫選擇、拍照,用戶選擇其中一種方式后,Account Kit返回頭像uri給Button,元
    發(fā)表于 04-02 11:10

    鴻蒙應用元服務開發(fā)-Account Kit獲發(fā)票抬頭

    跳轉到發(fā)票抬頭管理頁進行增加,用戶點擊確認后將關閉發(fā)票抬頭選擇頁面,并返回用戶選擇的發(fā)票抬頭。 三、開發(fā)前提 在進行代碼開發(fā)前,請先確認您已完成配置Client ID工作。該場景無需
    發(fā)表于 04-01 15:26

    HarmonyOS NEXT應用元服務開發(fā)Intents Kit(意圖框架服務)綜述

    一、綜述 Intents Kit(意圖框架服務)是HarmonyOS級的意圖標準體系 ,意圖連接了應用/元服務內的業(yè)務功能。 意圖框架能幫
    發(fā)表于 11-28 10:43

    鴻蒙原生開發(fā)手記:01-元服務開發(fā)

    簡介 元服務鴻蒙中的一種輕量應用形態(tài),無需下載,直接運行。類似于微信小程序,但與小程序不同的是,元服務更加輕量。 元
    發(fā)表于 11-14 17:28

    鴻蒙開發(fā)Ability Kit程序訪問控制:向用戶申請單次授權

    受限開放的權限通常是不允許三方應用申請的。當應用在申請權限來訪問必要的資源時,發(fā)現(xiàn)部分權限的等級比應用APL等級高,
    的頭像 發(fā)表于 07-02 17:48 ?792次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b>訪問控制:向用戶<b class='flag-5'>申請</b>單次授權

    鴻蒙開發(fā)Ability Kit程序訪問控制:申請使用受限權限

    受限開放的權限通常是不允許三方應用申請的。當應用在申請權限來訪問必要的資源時,發(fā)現(xiàn)部分權限的等級比應用APL等級高,
    的頭像 發(fā)表于 07-02 17:34 ?762次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b>訪問控制:<b class='flag-5'>申請</b>使用受限<b class='flag-5'>權限</b>

    鴻蒙開發(fā)Ability Kit程序訪問控制:對所有應用開放

    申請目標權限前,建議開發(fā)者先閱讀[申請應用權限],對權限的工作流程有基本了解后,再結合以下
    的頭像 發(fā)表于 07-02 14:32 ?831次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b>訪問控制:對所有應用開放

    鴻蒙開發(fā)Ability Kit程序框架服務:向用戶申請單次授權

    基于授權最小化的原則,防止應用獲取和濫用用戶數(shù)據,針對部分應用敏感權限,在彈窗向用戶申請授權時,新增“允許本次使用”的授權選項。
    的頭像 發(fā)表于 07-01 14:34 ?683次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:向用戶<b class='flag-5'>申請</b>單次授權

    鴻蒙開發(fā)Ability Kit程序框架服務:應用權限管控概述 程序訪問控制

    系統(tǒng)提供了一種允許應用訪問系統(tǒng)資源(如:通訊錄等)和系統(tǒng)能力(如:訪問攝像頭、麥克風等)的通用權限訪問方式,來保護系統(tǒng)數(shù)據(包括用戶個人數(shù)據)或功能,避免它們被不當或惡意使用。
    的頭像 發(fā)表于 07-01 10:21 ?986次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:應用<b class='flag-5'>權限</b>管控概述 <b class='flag-5'>程序</b>訪問控制

    鴻蒙開發(fā)Ability Kit程序框架服務:聲明權限

    應用在申請權限時,需要在項目的配置文件中,逐個聲明需要的權限,否則應用將無法獲取授權。
    的頭像 發(fā)表于 07-01 09:22 ?603次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:聲明<b class='flag-5'>權限</b>

    鴻蒙開發(fā)Ability Kit程序框架服務:向用戶申請授權

    當應用需要訪問用戶的隱私信息或使用系統(tǒng)能力時,例如獲取位置信息、訪問日歷、使用相機拍攝照片或錄制視頻等,應該向用戶請求授權,這部分權限是user_grant權限
    的頭像 發(fā)表于 07-01 09:18 ?865次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:向用戶<b class='flag-5'>申請</b>授權

    鴻蒙原生應用元服務開發(fā)-位置服務申請權限

    申請位置權限開發(fā)指導 場景概述 應用在使用位置服務系統(tǒng)能力前,需要檢查是否已經獲取用戶授權訪問設備位置信息。如未獲得授權,可以向用戶申請需要
    發(fā)表于 06-18 15:27

    電子發(fā)燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品