鸿蒙无权限实现图片选择拍照和录视频
在鸿蒙开发中,系统提供了PhotoViewPicker选择图片,cameraPicker拍照和录视频,此方式能够达到无需向用户申请权限就能选图片、拍照和录视频。除了用户操作的选图、拍照和录视频,其它时间APP无权获取相册图片,无权调用相机,对于用户来说,使用相册和相机都是很明确的时机,安全性非常高。 ...阅读全文
在鸿蒙开发中,系统提供了PhotoViewPicker选择图片,cameraPicker拍照和录视频,此方式能够达到无需向用户申请权限就能选图片、拍照和录视频。除了用户操作的选图、拍照和录视频,其它时间APP无权获取相册图片,无权调用相机,对于用户来说,使用相册和相机都是很明确的时机,安全性非常高。 ...阅读全文
大家好,我是 V 哥,很好奇,在ArkTS中实现异步编程是怎样的,今天的内容来聊聊这个问题,总结了一些学习笔记,分享给大家,在 ArkTS中实现异步编程主要可以通过以下几种方式: 1. 使用async和await关键字 async函数是一种特殊的函数,它能以同步代码的方式编写异步代码。在async函 ...阅读全文
Hvigor允许开发者实现自己的插件,开发者可以定义自己的构建逻辑,并与他人共享。Hvigor主要提供了两种方式来实现插件:基于hvigorfile脚本开发插件、基于typescript项目开发。下面以基于hvigorfile脚本开发插件进行介绍。 基于hvigorfile脚本开发 基于hvigor ...阅读全文
编译构建工具DevEco Hvigor(以下简称Hvigor)是一款基于TS实现的构建任务编排工具,主要提供任务管理机制,包括任务注册编排、工程模型管理、配置管理等关键能力,提供专用于构建和测试应用的流程和可配置设置。 DevEco Studio使用构建工具Hvigor来自动执行和管理构建流程,实现 ...阅读全文
APP、微信小程序 (原生扫码功能) <!-- 在 'manifest.json' 中允许打开摄像头权限 --> <template> <button @click="scanQRcodes">扫码</button> </template> <script setup> // 扫码 const sc ...阅读全文
我们在进行页面跳转时,很多情况下都得考虑登录状态问题,比如进入个人信息页面,下单交易页面等等。在这些场景下,通常在页面跳转前,会先判断下用户是否已经登录,若已登录,则跳转到相应的目标页面,若没有登录,则先跳转到登录页面,然后等着获取登录状态,若登录页面关闭时,能获取到已登录,则继续跳转到目标页,若用 ...阅读全文
Navigation组件适用于模块内和跨模块的路由切换,通过组件级路由能力实现更加自然流畅的转场体验,并提供多种标题栏样式来呈现更好的标题和内容联动效果。一次开发,多端部署场景下,Navigation组件能够自动适配窗口显示大小,在窗口较大的场景下自动切换分栏展示效果。 根页面设置 我们在Entry ...阅读全文
@cross-device-app-dev/font-size 字体大小要求至少为8fp以便于阅读 @cross-device-app-dev/grid-columns-span 不推荐开发者将栅格中所有的GridCol子组件只设置span属性,且值与父组件的columns属性相等 @cross-d ...阅读全文
@performance/hp-arkts-no-use-any-export-current 避免使用export * 导出当前module中定义的类型和数据 @performance/hp-arkts-no-use-any-export-other 避免使用export * 导出其他module ...阅读全文
在使用 UITableView 时,必须实现的协议主要包括以下几个 1. UITableViewDataSource 协议 这是最重要的协议,用于提供数据给 UITableView。没有这个协议,UITableView 是无法显示任何内容的。 必须实现的方法: tableView:numberOfR ...阅读全文
@typescript-eslint/no-unnecessary-type-arguments 当类型参数和默认值相同时,不允许显式使用 @typescript-eslint/no-unnecessary-type-assertion 禁止不必要的类型断言 @typescript-eslint/n ...阅读全文
@typescript-eslint/adjacent-overload-signatures 建议函数重载的签名保持连续 @typescript-eslint/await-thenable 不允许对不是“Thenable”对象的值使用await关键字,相反对“Thenable”对象必须使用awai ...阅读全文
获取应用文件路径 基类Context提供了获取应用文件路径的能力,ApplicationContext、AbilityStageContext、UIAbilityContext和ExtensionContext均继承该能力。应用文件路径属于应用沙箱路径,上述各类Context获取的应用文件路径有所不 ...阅读全文
前言 屏幕超时休眠指的是在设备一段时间没有操作后,自动关闭屏幕显示以节省电量并防止误触。当屏幕进入休眠状态时,通常会关闭屏幕背光,但设备可能仍在运行后台进程。 正文 Settings应用相关 Settings应用的屏幕超时休眠界面相关代码定位到: packages/apps/Settings/res ...阅读全文
深入解析 QMUIKIT:高效的 iOS UI 组件库 QMUIKIT(QMUI)是一个专为 iOS 开发者设计的开源 UI 组件库,旨在提升开发效率与用户体验。本文将从如何简单使用 QMUI、底层原理、核心组件的实现细节,以及一些最佳实践等方面进行深入探讨。 1. 简单使用 QMUI 1.1 安装 ...阅读全文
在使用Navigation时时,你是否遇到了这样一个问题,Navigation加载启动页为入口,在启动页replace到首页,使首页替换换启动页,结果发现不生效,启动页依然存在。 为什么根页面启动页不能直接替换成首页 我们验证后发现当页面是Navigation的子页面时,是可以使用replace替换 ...阅读全文
adb 常用命令 原文地址 安装原始设备制造商 (OEM) USB 驱动程序 设备列表(启动 adb 服务) adb devices 设备列表 -l 显示设备信息 adb devices -l 停止 adb 服务 adb kill-server 无线连接设备 adb connect 192.168. ...阅读全文
深入理解MVP模式 在软件开发中,尤其是在创建复杂用户界面时,如何有效地组织代码是一个重要的课题。MVP(Model-View-Presenter)模式作为MVC模式的演进版本,旨在提高应用程序的响应性和可测试性。本文将详细探讨MVP模式的组成部分、底层原理以及如何在实际项目中应用它。 什么是MVP ...阅读全文
在现代软件开发中,尤其是用户界面(UI)密集的应用程序,如何有效地组织代码是一个至关重要的问题。MVC(Model-View-Controller)模式应运而生,成为许多开发者的首选架构。本文将详细探讨MVC模式的组成部分、底层原理以及如何在实际项目中应用它。 什么是MVC模式? MVC是一种软件设 ...阅读全文
如果给你一张这样的图片,要求你点击到黑色圆圈时改变点击的圆圈颜色(选中状态)设计UI会给一套选中图,尺寸一致,只有选中的圆圈不同直观的实现方案,使用三个透明View,固定在三个圆圈上方位置,点击时设置点击选中的状态弊端就是如果圆圈多了,需要固定多个View,并且如果圆圈位置发生了改变,每个固定在圆圈 ...阅读全文