- 博客(531)
- 资源 (52)
- 问答 (1)
- 收藏
- 关注

原创 iOS Secure Enclave
Secure Enclave 是一个绝对的安全环境,所以存放的当然也是最高机密的数据。那什么数据属于最高机密的数据呢?一般是用户的生物特征信息,比如指纹信息 TouchID、面部信息 FaceID 等。
2021-12-22 17:19:16
5552

原创 常用的加密算法
一、对称加密算法对称加密算法就是传统的用一个密码进行加密和解密。常用的对称加密算法算法密钥长度工作模式填充模式DES56/64ECB/CBC/PCBC/CTR/…NoPadding/PKCS5Padding/…AES128/192/256ECB/CBC/PCBC/CTR/…NoPadding/PKCS5Padding/PKCS7Padding/…IDEA128ECBPKCS5Padding/PKCS7Padding/…密钥长度直接决定加密强度
2021-12-01 11:02:33
7637

原创 国密算法介绍
一、前言加密是通过“加密算法”将明文加密成密文,可以通过“密钥”和“解密算法”将密文还原成明文。密码学中应用最为广泛的三类算法:对称算法(分组密码算法):AES/DES/SM4非对称算法(公钥密码算法):RSA/SM2摘要算法(杂凑算法):MD5/SHA-I/SM3二、国密算法的意义随着金融安全上升到国家安全高度,近年来国家有关机关和监管机构站在国家安全和长远战略的高度提出了推动国密算法应用实施、加强行业安全可控的要求。摆脱对国外技术和产品的过度依赖,建设行业网络安全环境,增强我国行业信息
2021-12-01 11:01:34
14722

原创 鸿蒙网络请求(下):工具类封装和使用
通过上一篇鸿蒙网络请求的教程,了解了网络请求的基本用法,这一篇文章主要是对上一篇鸿蒙网络请求代码的进一步封装,把网络请求封装成一个工具类。1. 网络请求工具类 RequestUtilpackage com.example.hmrequest.util;import ohos.hiviewdfx.HiLog;import ohos.hiviewdfx.HiLogLabel;import ohos.utils.zson.ZSONObject;import java.io.*;import ja
2021-08-05 15:50:29
2149

原创 鸿蒙网络请求(上):网络请求的使用
最近在学习鸿蒙开发,在鸿蒙网络请求这块遇到了困难。鸿蒙官网虽然提供了网络请求的API和代码事例,但是描述的过于简单,基本上就是贴代码,所以对于一个初学者来说,仍然看的是一头雾水。Github上也有很多第三方封装的鸿蒙网络请求框架,但是既然是学习就要从最基础的开始,而且那些网络请求框架大致看了下,感觉比较复杂,不太好下手。小编也是花了大概一周的时间,自己慢慢摸索,才入门了鸿蒙的网络请求。下面将小编的一些学习成果分享给大家,帮助大家少走弯路。一、需要添加网络请求权限在进行鸿蒙网络请求开发时,先要进行网络请求
2021-08-03 17:37:50
5851
1

原创 视频剪辑 图文教程
一米剪辑图文教程一、提取视频功能说明:提取视频是根据抖音视频链接地址提取无水印视频,能无痕提取抖音视频,并保存到自己的相册。图文教程:1、打开抖音app,找到自己想要下载的视频。点击分享按钮,找到 “复制链接” 按钮,然后点击按钮复制抖音链接。2、 点击 “提取视频” ,然后在文本框中输入刚刚在抖音复制的抖音链接,再点击 “提取视频” 按钮。3、等待视频解析完之后,直接点击 “导出到相册”,无水印视频就下载到相册了。...
2021-07-19 11:29:03
14248

原创 Android JNI开发一: JNI基础知识
JNI基础知识Android系统底层的框架大多采用的是C或者C++语言实现的,但是Android上层的框架是采用Java实现的,所以我们平常进行Android也是采用Java语言开发。虽然Android底层采用C或者C++实现,但是我们在进行Android开发的时候,却不能直接调用C或者C++,而是需要采用JNI来调用C或者C++,下面小编就为大家介绍什么是JNI?以及怎么使用JNI来实现调用C或者C++语言。一、JNI 介绍1.1 简介JNI 即 Java Native Interface,通俗的
2021-07-16 10:32:22
2034

原创 Android JNI开发四: 鸿蒙JNI开发
一、JNI1.1 创建工程用 DevEco Studio 创建一个新的工程,我的 DevEco Studio 版本为2.1。创建工程第一步的时候,需要选择模版,请选择 Native C++ 这个模版。这个模版为我们提供了JNI开发的环境,我们在这个模版里可以更容易的使用JNI 去调用C语言代码。(1) 创建工程第一步:选择 Native C++ 模版,如下图所示:(2) 创建工程第二步:填写项目名称、项目存放目录,如下图所示:建议填写project name和小编的一样,因为后面的一些配置和包
2021-07-14 11:48:22
1959

原创 Android JNI开发三: SO库的使用
本篇主要介绍如何在普通的安卓工程中使用编译好的SO库文件。首先,新建一个普通的安卓项目工程,我的工程名叫SOTest。项目工程建好后,就将SO库引入到工程中。2.1 将SO库引入工程中在不同的CPU架构下,会被编译成不同的SO库,所以我们需要将整个的lib文件拷贝至我们的项目工程中。SO库需要拷贝到app目录下,路径一定要正确,否则有可能出现因为路径不对而加载不到SO库。2.2 配置SO库的路径在build.gradle文件中添加so库的路径配置和依赖配置,如下图所示:配置代码:
2021-07-09 16:58:24
5610
5

原创 Android JNI开发二: 如何生成SO库
1.tail假定日志文件为catalina.logtail -f catalina.log 该命令用来的查看动态的日志信息tail -fn 200 catalina.log 查看最后200行日志,且动态显示tail -f catalina.log | grep '过滤字符串' 显示存在需要过滤的字符串的行的动态的日志信息2.grepgrep '过滤字符串' catalina.log 从日志文件中过滤出字符串grep -r '过滤字符串' ./...
2021-07-09 16:50:45
3308
2
原创 SwiftUI 12.Stepper介绍和使用
Stepper {HStack {Text("商品数量:\(Stepper {HStack {Image(systemName : "cart.fill") Text("商品数量: \( quantity) ") } } onIncrement : {")通过和Stepper("剩余时间: \( time) 秒") {time + = 10 // 点击加号时增加 10 秒 } onDecrement : {
2025-04-28 11:30:48
270
原创 SwiftUI 11.Slidder介绍和使用
核心功能:通过滑动选择数值,支持连续或离散范围。关键修饰符tint()step()。适用场景:音量控制、亮度调节、参数配置等需要连续输入的交互。通过Slider,你可以快速实现直观的数值选择功能,并灵活定制样式以适应不同平台和设计需求。
2025-04-28 11:30:07
408
原创 SwiftUI 10.Toggle介绍和使用
核心功能:在布尔状态间切换,支持高度自定义样式。关键修饰符tint()onChange()。适用场景:设置选项、功能开关、动态界面控制等。通过Toggle,你可以快速构建交互式开关控件,并根据平台特性灵活调整样式,提升用户体验。
2025-04-28 11:29:23
327
原创 SwiftUI 9.ForEach介绍和使用
核心作用:根据集合数据动态生成视图。唯一标识:必须确保每个元素有唯一的id。灵活组合:可与任何布局容器(如ListHStack)结合使用。性能注意:在超长列表中,优先使用List或LazyVStack优化性能。通过ForEach,你可以高效处理动态数据渲染,结合 SwiftUI 的声明式语法,快速构建复杂的交互界面。
2025-04-28 11:28:13
961
原创 SwiftUI 8.List介绍和使用
SwiftUI 的 组件用于展示可滚动的内容集合,支持静态或动态数据、交互操作(如点击、滑动删除)、分组、自定义样式等。以下是其详细介绍及使用方法:直接声明固定内容:2. 动态列表结合 动态生成列表项:要求数据元素唯一(通过 或遵循 协议)。二、混合内容静态和动态内容组合:三、分组与 Section使用 对列表内容分组:四、交互与样式定制1. 点击事件通过 或结合 :2. 滑动操作(iOS)添加滑动删除或自定义操作:3. 自定义样式隐藏分隔线(iOS 1
2025-04-28 11:27:32
861
原创 SwiftUI 7.Picker介绍和使用
通过ZStack0.85 : 1)// 使用示例PlaceholderTextEditor(text: $noteContent, placeholder: "输入内容...")
2025-04-28 11:26:49
862
原创 SwiftUI 6.TextEditor介绍和使用
通过ZStack0.85 : 1)// 使用示例PlaceholderTextEditor(text: $noteContent, placeholder: "输入内容...")
2025-04-28 11:26:07
422
原创 20.ArkUI Progress的介绍和使用
支持线性进度条和环形进度条两种样式可自定义颜色、宽度、背景等样式属性提供确定进度和不确定进度两种模式支持动态更新进度值.height(10) // 线性进度条高度.color('#FF0000') // 进度条颜色.backgroundColor('#EEEEEE') // 背景色.borderRadius(5) // 圆角。
2025-04-27 11:01:22
382
原创 19.ArkUI AudioPlayer的介绍和使用
AudioPlayer 是 ArkUI 中用于音频播放的核心组件,支持本地和网络音频资源的播放控制。
2025-04-27 10:59:18
598
原创 18.ArkUI Video的介绍和使用
支持本地和网络视频播放提供播放控制、全屏、音量调节等功能支持自定义控制栏可监听播放状态和进度变化支持视频封面和加载状态显示@Entry@Componentbuild() {Column() {Video({}).controls(false) // 禁用默认控制栏})// 自定义控制栏Column() {// 进度条Row() {Slider({min: 0,})})// 控制按钮'暂停' : '播放')})Button('静音')})
2025-04-25 17:20:07
351
原创 17.ArkUI Slider的介绍和使用
Entry@Componentbuild() {Column() {Text('屏幕亮度调节')Row() {.width(30)Slider({min: 0,max: 100,step: 1,})})})}).width(30)Text(`${this@Entry@ComponentColumn() {Text('屏幕亮度调节') . fontSize(20) . fontWeight(FontWeight . Bold) . margin({%`)
2025-04-25 17:19:19
362
原创 16.ArkUI Toggle的介绍和使用
提供开关样式的二元选择支持多种样式(勾选框、开关按钮等)可自定义选中和未选中状态支持状态变化事件监听.selectedColor('#FF0000') // 选中状态颜色.switchPointColor('#FFFFFF') // 开关按钮颜色.width(60)@BuilderText(isOn?build() {
2025-04-25 17:18:24
187
原创 15.ArkUI Checkbox的介绍和使用
Checkbox().size({ width: 30, height: 30 }) // 设置尺寸.shape(CheckBoxShape.Circle) // 圆形样式.selectedIcon($r('app.media.custom_check')) // 自定义选中图标.unselectedIcon($r('app.media.custom_uncheck')) // 自定义未选中图标。
2025-04-25 17:17:36
408
原创 14.ArkUI Radio的介绍和使用
Entry@Component{ value: 'red', label: '红色' },{ value: 'green', label: '绿色' },{ value: 'blue', label: '蓝色' }build() {Column() {Text('选择你喜欢的颜色:')Row() {})size: 20,})})Divider()Text('当前选择: ' + this.selectedColor)
2025-04-25 17:14:18
202
原创 13.ArkUI Navigation的介绍和使用
Entry@Componentbuild() {Column() {Text('页面内容').title('自定义标题').subTitle('副标题').toolBar({items: [// 分享操作},})
2025-04-25 17:13:22
306
原创 12.ArkUI Scroll的介绍和使用
Scroll 是 ArkUI 中的滚动容器组件,当子组件内容超过容器大小时,可以提供滚动查看功能。Scroll 支持垂直和水平滚动,是构建长列表、可滚动内容区域的核心组件。
2025-04-25 17:12:27
394
原创 11.ArkUI Tabs的介绍和使用
支持顶部/底部标签栏布局提供多种标签样式和排列方式支持滑动切换内容页可自定义标签指示器支持嵌套其他组件@Entry@Componentprivate tabs = ['推荐', '热门', '最新']build() {Column() {// 自定义标签栏Row() {Column() {Text(tab)Divider().width(20)})})// 内容区}).barWidth(0) // 隐藏默认标签栏})@Builder。
2025-04-25 17:11:33
315
原创 8.ArkUI Stack的介绍和使用
Stack 是 ArkUI 中的层叠布局容器组件,它允许子组件按照添加顺序在 Z 轴方向(垂直于屏幕方向)上堆叠显示。Stack 类似于其他UI框架中的 FrameLayout 或 RelativeLayout,适用于需要重叠显示的UI场景。
2025-04-25 17:08:18
314
原创 7. ArkUI Flex的介绍和使用
Flex 是 ArkUI 中的弹性布局容器组件,它结合了 Column 和 Row 的特性,可以通过 direction 属性自由切换主轴方向,实现更灵活的布局。Flex 基于 CSS Flexbox 模型,提供了强大的布局能力。
2025-04-25 17:07:25
410
原创 7.ArkUI Flex的介绍和使用
Flex 是 ArkUI 中的弹性布局容器组件,它结合了 Column 和 Row 的特性,可以通过 direction 属性自由切换主轴方向,实现更灵活的布局。Flex 基于 CSS Flexbox 模型,提供了强大的布局能力。
2025-04-25 08:31:19
397
原创 6.ArkUI Row的介绍和使用
Row 是 ArkUI 中的基础布局容器组件,用于水平(横向)排列子组件。它与 Column 组件相对应,是构建用户界面最常用的布局方式之一,类似于其他UI框架中的水平线性布局。
2025-04-25 08:30:19
328
原创 4.ArkUI TextInput的介绍和使用
TextInput 是 ArkUI 中用于文本输入的核心组件,支持单行、多行输入及多种输入格式控制。
2025-04-24 13:18:43
406
原创 2.ArkUI Video的介绍和使用
支持多种按钮样式(胶囊、圆形、文本等)提供丰富的交互状态(按下、禁用、聚焦等)可自定义图标和文本组合支持点击、长按等多种手势事件。
2025-04-24 13:16:43
266
iOS 广告轮播
2015-09-22
自定义DatePicker
2016-01-18
实现上图标下文字,左图标右文字,右文字左图标设置的按钮
2022-11-29
iOS列表自动刷新(结合websocket实现,简单实用)
2022-11-23
MJRefresh无感刷新
2022-07-11
MJRefresh自定义动画
2022-07-11
substrate.h
2017-05-23
iOS OSS如何批量上传多张高质量图片???求大神指导
2017-09-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人