- 博客(359)
- 资源 (2)
- 收藏
- 关注

原创 SpringBoot:web开发
springboot:web开发,技术摘要1. webjars2. Bootstrap3. 模板引擎thymeleaf4. 嵌入式Servlet容器5. 注册web三大组件
2024-02-06 17:24:16
1294

原创 正则表达式提取短信验证码
从短信中提取短信验证码正则表达式public class TestGetDynamicPwd { public static void main(String[] args) { getDynamicSmsVerifyCode(); getDynamicSmsVerifyCode2(); } /** * 从字符串中截取连续6位数字组合 ([0-9])截取六位数字 进行前后断言不能出现数字 用于从短信中获取动态密码 *
2021-06-04 10:32:47
4607
1
原创 HarmonyOS:获取屏幕顶部状态栏、底部导航栏和导航条的高度
获取屏幕顶部状态栏、底部导航栏和导航条的高度可以使用window的getWindowAvoidArea方法获取
2025-03-28 11:12:06
280
原创 HarmonyOS:UI布局屏幕适配不同机型
vp具体计算公式为:vp= px/(DPI/160)px就是屏幕真实物理像素值,densityPixels是屏幕密度;densityDPI就是我们通常所说的系统屏幕密度,densityPixels就是屏幕密度和标准dpi(160)的比率。
2025-03-28 10:11:46
614
原创 HarmonyOS:解决UIAbility调用terminateSelf()后设置不保留最近任务列表中的快照
在HarmonyOS应用开发中,UIAbilityContext的terminateSelf()方法被用来结束当前的UIAbility实例。如果希望在调用terminateSelf()后,让应用在最近任务列表中不保留快照,可以通过在module.json5配置文件中配置removeMissionAfterTerminate为true来实现。
2025-03-27 15:56:26
270
原创 HarmonyOS:统一拖拽
拖拽流程可以分为三部分:发起拖拽、拖拽中和释放拖拽。其中,拖出方通过 draggable() 和 onDragStart() 等接口处理拖出数据,拖入方通过allowDrop()和onDrop()等接口处理拖入数据,拖拽数据使用UDMF统一数据对象UnifiedData 进行封装。
2025-03-26 16:16:19
1784
1
原创 HarmonyOS:GridObjectSortComponent(两个Grid之间网格元素交换)
网格对象的编辑排序是用于网格对象的编辑、拖动排序、新增和删除。
2025-03-26 09:06:50
852
原创 HarmonyOS:Grid网格元素拖拽交换开发示例
Grid网格元素拖拽交换功能实现是通过Grid容器组件、组合手势、显式动画结合来实现的。Grid组件可以构建网格元素布局。组合手势可以实现元素拖拽交换的效果。显式动画可以给元素拖拽交换的过程中,添加动画效果。
2025-03-25 16:06:07
816
原创 HarmonyOS:通过键值型数据库实现数据持久化
约束限制设备协同数据库,针对每条记录,Key的长度≤896 Byte,Value的长度<4 MB。单版本数据库,针对每条记录,Key的长度≤1 KB,Value的长度<4 MB。每个应用程序最多支持同时打开16个键值型分布式数据库。键值型数据库事件回调方法中不允许进行阻塞操作,例如修改UI组件。
2025-03-22 10:02:51
1038
原创 Android:蓝牙设置配套设备配对
在搭载 Android 8.0(API 级别 26)及更高版本的设备上,配套设备配对会代表您的应用对附近的设备执行蓝牙或 Wi-Fi 扫描,而不需要 ACCESS_FINE_LOCATION 权限。这有助于最大限度地保护用户隐私。使用此方法执行配套设备(如支持 BLE 的智能手表)的初始配置。此外,配套设备配对需要启用位置信息服务。配对配套设备不会自行创建连接,也不会启用连续扫描。应用可以使用蓝牙或 Wi-Fi 连接 API 建立连接。
2025-03-22 10:00:49
765
原创 HarmonyOS: 使用Node-API实现跨语言交互开发流程
使用Node-API实现跨语言交互,首先需要按照Node-API的机制实现模块的注册和加载等相关动作。ArkTS/JS侧:实现C++方法的调用。代码比较简单,import一个对应的so库后,即可调用C++方法。Native侧:.cpp文件,实现模块的注册。需要提供注册lib库的名称,并在注册回调方法中定义接口的映射关系,即Native方法及对应的JS/ArkTS接口名称等。
2025-03-05 23:56:02
1046
原创 uniapp:小程序将base64图片字符串保存到手机相册
用户提供的是Base64格式的图片数据,而小程序保存图片到本地通常需要的是临时文件路径。第一步可能需要将Base64数据转换成临时文件,然后再保存到手机相册。第二步查阅UniApp的文档,关于保存图片到相册的相关API,uni.saveImageToPhotosAlbum。这个API的参数需要一个文件路径,需要先将Base64转换成临时文件路径。另外,Base64数据通常以"data:image/png;base64,"开头,这部分在转换时需要去掉,只保留编码部分。
2025-03-05 11:12:57
883
原创 HarmonyOS: Node-API简介
Native Module:开发者使用Node-API开发的模块,用于在ArkTS侧导入使用。Node-API:实现ArkTS与C/C++交互的逻辑。ModuleManager:Native模块管理,包括加载、查找等。ScopeManager:管理napi_value的生命周期。ReferenceManager:管理napi_ref的生命周期。NativeEngine:ArkTS引擎抽象层,统一ArkTS引擎在Node-API层的接口行为。
2025-02-24 22:49:01
715
原创 HarmonyOS:前端页面调用应用侧函数
开发者使用Web组件将应用侧代码注册到前端页面中,注册完成之后,前端页面中使用注册的对象名称就可以调用应用侧的函数,实现在前端页面中调用应用侧方法。注册应用侧代码有两种方式:方式一:种在Web组件初始化调用,使用javaScriptProxy()接口。方式二:在Web组件初始化完成后调用,使用registerJavaScriptProxy()接口,需要和deleteJavaScriptRegister接口配合使用,防止内存泄漏。
2025-02-24 09:09:35
367
原创 HarmonyOS:Web组件大小自适应页面内容布局
使用Web组件大小自适应页面内容布局模式layoutMode(WebLayoutMode.FIT_CONTENT)时,能使Web组件的大小根据页面内容自适应变化。
2025-02-14 23:40:13
430
原创 HarmonyOS:使用List实现分组列表(包含粘性标题)
在List组件中使用ListItemGroup对项目进行分组,可以构建二维列表。List组件的sticky属性配合ListItemGroup组件使用,用于设置ListItemGroup中的头部组件是否呈现吸顶效果或者尾部组件是否呈现吸底效果。通过给List组件设置sticky属性为StickyStyle.Header,即可实现列表的粘性标题效果。如果需要支持吸底效果,可以通过footer参数初始化ListItemGroup的底部组件,并将sticky属性设置为StickyStyle.Footer。
2025-02-14 14:54:07
712
原创 HarmonyOS:电话号码格式化
电话号码格式化通过PhoneNumberFormat的format接口实现导入模块。import { i18n } from '@kit.LocalizationKit';
2025-02-08 23:31:56
355
原创 HarmonyOS:时间日期国际化
时间日期和相对时间格式化时间日期格式化将表示时间日期的Date对象,通过DateTimeFormat类的format接口实现格式化。相对时间格式化格式化相对时间将表示时间日期的Date对象,通过RelativeTimeFormat类的format接口实现格式化。
2025-02-08 10:50:18
1014
原创 HarmonyOS:获取系统时间及系统时区
本模块主要由系统时间和系统时区功能组成。开发者可以设置、获取系统时间及系统时区。导入模块import { systemDateTime } from '@kit.BasicServicesKit';
2025-02-07 16:21:00
1168
原创 HarmonyOS:查询设备信息
导入模块import { deviceInfo } from '@kit.BasicServicesKit';部分参数返回值为default的,会在正式发布的版本中配置。本模块接口返回设备常量信息,建议应用只调用一次,不需要频繁调用。
2025-02-07 11:02:48
1064
原创 HarmonyOS:ArkWeb进程
可通过setRenderProcessMode设置渲染子进程的模式,从而控制渲染过程的单进程或多进程状态。移动设备默认为单进程渲染,而2in1设备则默认采用多进程渲染。通过调用getRenderProcessMode可查询当前的渲染子进程模式,其中枚举值0表示单进程模式,枚举值1对应多进程模式。若获取的值超出RenderProcessMode枚举范围,系统将自动采用多进程渲染模式作为默认设置。
2025-02-02 19:39:09
1299
原创 HarmonyOS:给您的应用添加通知
发布普通文本类型通知,需要设置ContentType类型为ContentType.NOTIFICATION_CONTENT_BASIC_TEXT。进度条通知也是常见的通知类型构造进度条模板,name字段当前需要固定配置为downloadTempla
2025-02-02 10:45:53
1268
2
原创 HarmonyOS:Web组件的生命周期
Web组件的状态主要包括:Controller绑定到Web组件、网页加载开始、网页加载进度、网页加载结束、页面即将可见等。
2025-02-01 15:30:52
1133
原创 HarmonyOS:合理使用动画
改变图形变换属性图形变换只是对组件的显示效果进行变换,而不会改变其在布局中的位置和大小,因此不会触发重新布局的计算过程。这使得使用图形变换属性来实现动画效果时,能够提升界面的流畅性和性能表现。通过组件的scale、translate属性来改变组件大小和位置
2025-02-01 08:36:26
1170
原创 HarmonyOS:状态管理最佳实践
在选择装饰器时,应理解各个装饰器的特性和共享范围,结合实际开发场景的优先级,合理选择装饰器,以确保状态和视图的一致性。在使用装饰器时,对装饰器修饰的复杂变量应进行合理拆分设计,以此减少非必要的组件渲染次数,获得更好的性能体验。在代码开发过程中,对相似的逻辑处理,应考虑其复用性合理集中处理,以此有效提升代码的可维护性和可复用性。
2025-01-27 11:55:08
1642
原创 HarmonyOS:ForEach:循环渲染
数据源数组项子属性变化当数据源的数组项为对象数据类型,并且只修改某个数组项的属性值时,由于数据源为复杂数据类型,ArkUI框架无法监听到@State装饰器修饰的数据源数组项的属性变化,从而无法触发ForEach的重新渲染。为实现ForEach重新渲染,需要结合@Observed和@ObjectLink装饰器使用。例如,在文章列表卡片上点击“点赞”按钮,从而修改文章的点赞数量。
2025-01-27 09:50:20
1617
原创 HarmonyOS:创建应用静态快捷方式
shortcuts标识应用的快捷方式信息。标签值为数组,包含四个子标签shortcutId、label、icon、wants。metadata中指定shortcut信息,其中:name:指定shortcuts的名称,使用ohos.ability.shortcuts作为shortcuts信息的标识。resource:指定shortcuts信息的资源位置。
2025-01-26 15:55:55
1214
2
原创 HarmonyOS:MVVM模式
ArkUI采用了 Model-View-ViewModel(MVVM)架构模式。MVVM 将应用分为Model、View和ViewModel三个核心部分,实现数据、视图与逻辑的分离。通过这种模式,UI可以随着状态的变化自动更新,无需手动处理,从而更加高效地管理数据和视图的绑定与更新。Model:负责存储和管理应用的数据以及业务逻辑,不直接与用户界面交互。通常从后端接口获取数据,是应用程序的数据基础,确保数据的一致性和完整性。View:负责用户界面展示数据并与用户交互,不包含任何业务逻辑。
2025-01-26 11:42:03
1196
原创 HarmonyOS:状态管理优秀实践
使用@ObjectLink代替@Prop减少不必要的深拷贝在应用开发中,开发者经常会进行父子组件的数值传递,而在不会改变子组件内状态变量值的情况下,使用@Prop装饰状态变量会导致组件创建的耗时增加,从而影响一部分性能。
2025-01-24 22:01:32
863
原创 Vite:功能
Vite 提供了一套原生 ESM 的 HMR API。 具有 HMR 功能的框架可以利用该 API 提供即时、准确的更新,而无需重新加载页面或清除应用程序状态。Vite 内置了 HMR 到 Vue 单文件组件(SFC) 和 React Fast Refresh 中。
2025-01-24 10:10:20
588
原创 HarmonyOS:通过(SQLite)关系型数据库实现数据持久化
关系型数据库对应用提供通用的操作接口,底层使用SQLite作为持久化存储引擎,支持SQLite具有的数据库特性,包括但不限于事务、索引、视图、触发器、外键、参数化查询和预编译SQL语句。
2025-01-23 22:06:44
979
原创 HarmonyOS:AbilityStage组件容器介绍
AbilityStage是一个Module级别的组件容器,应用的HAP在首次加载时会创建一个AbilityStage实例,可以对该Module进行初始化等操作。AbilityStage与Module一一对应,即一个Module拥有一个AbilityStage。
2025-01-23 21:42:36
319
原创 HarmonyOS:通过preferences (用户首选项)实现数据持久化
首选项无法保证进程并发安全,会有文件损坏和数据丢失的风险,不支持在多进程场景下使用。Key键为string类型,要求非空且长度不超过1024个字节。如果Value值为string类型,请使用UTF-8编码格式,可以为空,不为空时长度不超过16MB。当存储的数据中包含非UTF-8格式的字符串时,请使用Uint8Array类型存储,否则会造成持久化文件出现格式错误造成文件损坏。
2025-01-18 21:20:03
910
原创 HarmonyOS:基于RCP的网络请求开发实践
RemoteCommunicationKit中的@hms.collaboration.rcp(后续简称RCP)指的是远程通信平台(remotecommunicationplatform),RCP提供了网络数据请求功能,相较于NetworkKit中HTTP请求能力,RCP更具易用性,且拥有更多的功能。在开发过程中,如果有些场景使用NetworkKit中HTTP请求能力达不到预期或无法实现,那么就可以尝试使用RCP中的数据请求功能来实现。
2025-01-12 23:15:12
789
viewtobitmap.rar
2019-12-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人