首页 > 其他分享 >华为HarmonyOS实现跨多个子系统融合的场景化服务 -- 3 打开授权设置页Button

华为HarmonyOS实现跨多个子系统融合的场景化服务 -- 3 打开授权设置页Button

时间:2024-12-16 15:29:03浏览次数:9  
标签:functionalButtonComponentManager err -- Button HarmonyOS SETTING 设置 OpenType

场景介绍

本章节将向您介绍如何使用Button组件打开授权设置页功能,开发者可调用对应Button组件跳转到应用对应的权限设置页面,供用户快速进行应用权限的查看和修改。

效果图展示

单击“打开授权设置页”按钮,跳转至应用对应的设置页界面。

开发步骤

  1. 导入Scenario Fusion Kit模块以及相关公共模块。

    
    
    1. import { FunctionalButton, functionalButtonComponentManager } from '@kit.ScenarioFusionKit';
    2. import { hilog } from '@kit.PerformanceAnalysisKit';

  2. 在容器中声明FunctionalButton,指定Button的openType,并设置对应的回调函数,代码如下:

    
    
    1. @Entry
    2. @Component
    3. struct Index {
    4. build() {
    5. Row() {
    6. Column() {
    7. // 声明FunctionalButton
    8. FunctionalButton({
    9. params: {
    10. // OpenType.OPEN_SETTING表示Button为打开授权设置页类型
    11. openType: functionalButtonComponentManager.OpenType.OPEN_SETTING,
    12. label: '打开授权设置页',
    13. // 调整Button样式
    14. styleOption: {
    15. styleConfig: new functionalButtonComponentManager.ButtonConfig()
    16. .fontSize(20)
    17. .fontColor(Color.Black)
    18. },
    19. },
    20. // OpenType为“OPEN_SETTING”时,回调必须选择“onOpenSetting”
    21. controller: new functionalButtonComponentManager.FunctionalButtonController().onOpenSetting((err, data) => {
    22. if (err) {
    23. // 错误日志处理
    24. hilog.error(0x0000, "testTag", "error: %{public}d %{public}s", err.code, err.message);
    25. return;
    26. }
    27. // 成功日志处理,终止设置应用程序时触发
    28. hilog.info(0x0000, "testTag", "succeeded in opening setting");
    29. data.permissions!.forEach((value, key) => {
    30. hilog.info(0x0000, "testTag", "key: %{public}s value: %{public}s", String(key), value);
    31. })
    32. })
    33. })
    34. }.width('100%')
    35. }.height('100%')
    36. }
    37. }

    说明

    • openType参数填写“functionalButtonComponentManager.OpenType.OPEN_SETTING”指定Button为打开授权设置页类型。
    • controller参数必须对应填写“new functionalButtonComponentManager.FunctionalButtonController().onOpenSetting”。

    其他参数请参考:FunctionalButton(Button组件)

标签:functionalButtonComponentManager,err,--,Button,HarmonyOS,SETTING,设置,OpenType
From: https://blog.csdn.net/pisceshsu/article/details/144500344

相关文章

  • 学习笔记 | OpenCV的安装及其主要模块
    Open Source ComputerVision Library|开源的计算机视觉库官网:https://opencv.org/帮助文档:https://docs.opencv.org/4.x/index.htmlOpenCV是一个完整的计算机视觉处理框架。OpenCV的安装#方式一:cmd命令行安装pip3installopencv-python#方式二:从镜像源下载:pip......
  • 动态规划在斐波那契数列中的应用与优化
    文章目录前言......
  • VS Code 通过SSH远程连接到 Ubuntu 服务器,Ubuntu的远程开发编译调试
    本章内容介绍如何使用Windows下安装的VSCode中远程连接到Ubuntu服务器,并进行远程开发编译调试的过程在Windows上安装VSCode在Windows上安装vscode相对比较简单:1.打开vscode下载页:vscode下载2.将下载好的VSCodeUserSetup-x64-1.96.0.exe双击安装Ubuntu安装ope......
  • 13_C语言 -指针
    预备知识内存地址字节:字节是内存的容量单位,英文名Byte,一个字节有8位,即1Byte=8bits地址:系统为了便于区分每一个字节而对它们逐一进行编号,称为内存地址,简称地址。inta=5;基地址单字节数据:对于单字节数据而言,其地址就是其字节编号。多字节数据:对于多字节数据而言,其地......
  • CTF随题思路—Misc第十八届全国大学生信息安全竞赛(铁人三项)zeroshell_1
    用wireshark打开文件,先过滤HTTP发现该数据流的左下角有base64编码 将其复制解码后得到flag ......
  • 大语言模型
    LLM目录LLM1.人工智能(AI):2.自然语言处理(NLP):3.Transformer:Transformer的核心特点:它们之间的关系:1.AI是NLP的基础:2.Transformer是NLP的核心技术之一:3.Transformer在AI中的影响:总结:直接使用已存在的开源大模型(Ollama、Huggingface开源社区)好处:坏处:总结建议:微调大......
  • 网页直播/点播播放器EasyPlayer.js关于一些特殊分辨率的视频播放不了的情况
    随着市场上流媒体服务的激增,大量开源和商业的流媒体解决方案(如Video.js、EasyPlayer等)为开发者提供了灵活的选择。同时,流媒体技术的不断演进也带动了相关的开发者工具和框架的成熟。流媒体技术的应用场景广泛,包括娱乐、教育、视频监控、企业培训等。遇到一些特殊分辨率的视频播......
  • SPICE协议浅析
    本文分享自天翼云开发者社区《SPICE协议浅析》,作者:王****均云环境中根据使用场景不同,有多种远程控制台传输协议,如SPICE、VNC、RDP等。SPICE是SimpleProtocolforindependentComputingEnvironment的缩写,表示独立计算环境的简单协议。SPICE协议由三个基本部分组成:Spice协议,S......
  • 1101 不定方程的解
    //1101.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。///**不定方程的解http://oj.daimayuan.top/course/22/problem/1179给出不定方程∑ni=1xi=m和n个限制条件xi≤bi,其中m,bi∈N求方程的非负整数解的个数。由于答案很大,输出对109+7取模的结果。输......
  • 微服务架构的优点
    独立开发与部署独立开发:每个微服务都可以由一个小团队甚至是单个开发者负责,团队能够根据自身服务的业务需求,选择最适合的技术栈。例如,对于用户认证微服务,可以使用基于JWT(JSONWebToken)的认证技术,并且使用Java语言和SpringBoot框架进行开发;而对于数据统计微服务,可能更适合使......