- 博客(35)
- 收藏
- 关注
原创 鸿蒙next 多行文字加图片后缀实现方案
实现类似iOS的YYLabel之类的在文字后面加上图片作为后缀的样式,多行时文字使用…省略超出部分,但必须保证图片的展现。
2025-03-14 14:11:21
415
原创 鸿蒙next 点击穿透实现
点击穿透可以参考华为开发的保留文章,该章节只能在developer preview版本下查看。主要的方法是hitTestBehavior。
2025-02-26 15:52:21
329
原创 鸿蒙next persistentV2使用记录
鸿蒙next的persistentV2用来实现数据持久化的操作,比起V1使用AppStorage+PersistStorage结合要简单了许多生成的文件可以通过device file manager查询。
2025-02-24 15:51:06
336
原创 鸿蒙next cashierdesk无法调起支付宝
使用@cashier_alipay/cashiersdk(V15.8.29)无法调起支付宝,参考该库的问题解答。
2025-02-20 14:08:38
159
原创 Mac本地部署deepseek
运行deepseek需要本地运行工具ollama,安装路径如下ollama官方网站 (https://ollama.com/download)下载Mac版ollama,点击移至application下面。
2025-02-17 19:48:12
589
原创 鸿蒙Next 图片高斯模糊处理
这段示例是打开文件图片文件,读取arraybuffer通过imageKit的createImageSource和createPixelMap实现pixelMap的异步生成,然后通过effectkit的createEffect实现效果渲染,达到如下图的高斯模糊背景。鸿蒙next中对图片的高斯模糊处理,主要是使用effectKit实现。针对的pixelMap,代码处理如下所示。
2024-12-26 15:26:58
218
原创 鸿蒙next-微博SDK集成
微博的sdk并非如微信开放平台或者第三方库一样提供一个nhpm -install的直接加载方式,而是提供一个demo,而这个demo下载下来直接报错,让人无从入手。于是进行了一定的修改才搞清楚使用方法。
2024-12-11 11:27:11
676
原创 xcode16 iOS18适配问题
QCloud需要升级到6.4.4,有必要时需要使用pod repo update。原来使用weakself的地方换成QCloudWeakSelf。
2024-09-23 10:48:49
3238
原创 鸿蒙设计分析(一)-AbilityKit
本篇主要是结合官方文档和项目对基础架构进行分析,针对AbilityKit进行实际项目的分析。Api9以后使用stage模型开发。
2024-08-28 17:52:05
1686
原创 苹果新规2024-5-1隐私新规的处理方法
在2023年苹果全球开发者大会(Worldwide Developers Conference,简称“WWDC”)上,苹果又宣布了2024年的春季新政策,同时在官网发布的《关于App Store提交的隐私更新》文档中新增了两类隐私保护要求,第一就是要求SDK开发者要增加SDK隐私清单和签名。第二是要求SDK开发者和App开发者如果使用了5类特殊的API,则需要声明具体的使用原因。
2024-04-25 16:09:56
1074
1
原创 Dio分析-Fetch过程分析
HttpClientAdapter,实现底层socket的建立和数据发送接收流程,主要涉及openurl, close, request stream写入和response stream读取的过程.参考。Interceptors,包括RequestInterceptors, ResponseInterceptor,ErrorInterceptor实现整个逻辑过程的流转和控制。Transformer,实现同步数据转换逻辑,实现请求数据转换和stream处理,响应数据转换和stream处理,参考。
2024-04-16 17:30:45
316
1
原创 Dio分析-Transform
自定义的StreamTransfomer/// 自定义一个 StreamTransformer ,/// 泛型类型 S 为入参类型,T 为出参类型/// 这些类型都是 Stream 中传递的数据类型// 用来生成一个新的 Stream 并且控制符合条件的数据// 转换之前的 Stream},},// 定义一个 StreamController,注意泛型类型为 T,也就是出参类型,因为// 我们是使用该 _controller 生成一个用来返回的新的 Stream
2024-04-12 11:06:39
1043
1
原创 Dio分析-Interceptors
Dio设计的拦截器[Interceptor]用于协助处理[RequestOptions]http请求发送配置, [response]http响应,[DioException]过程异常。这些拦截器在每次请求和响应之间仅被调用一次,意味着重定向不会触发他们的行为。其他设计[InteceptorsWrapper],拦截器封装,帮助创建拦截器。[QueuedInterceptor]队列式拦截器,以task形式在队列中实现拦截器行为。
2024-03-29 11:07:24
2182
1
原创 Dio分析-HttpClientAdapter
用于Dio与底层HttpClient间的桥接。Dio向业务层开发者提供标准和友好的API接口HttpClient, Dart底层真实的网络请求处理对象。通过HttpClientAdapter,开发者可以使用各种自定义HttpClient,而非dart:io:HttpClient,只需要通过HttpClientAdapter实现桥接。
2024-03-28 14:03:02
2328
原创 YYText iOS17兼容问题
使用YYText ,1.0.7在iOS17会遇到如下崩溃主要原因是UIGraphicsBeginImageContext中的asert引发,而改接口早就标记为API_TO_BE_DEPRECATED,建议使用UIGraphicsImageRenderer替换。由于YYText早已没有维护,于是fork了一个自己的git进行修正,主要修正逻辑在textAsynLayer替换为。
2023-09-21 16:05:18
2478
1
原创 RxSwift细节(一)Observable Sink Producer
遵循Dispose,主要目的是封装订阅的Observer,一是可以通过dispose()取消订阅,避免在错误和结束后订阅继续进行,主要实现方法dispose(),二是分派事件,实现前转时的内部逻辑处理,主要方法forwardOn.Producer, 响应业务层的subscribe(Observer),调用子类的run方法,持有sinkDisposer令牌,维持sink的生命周期。subscribe,获得observer订阅的时机,并触发observable.run。回归之前UISwitch+Rx的实例。
2023-09-12 15:37:34
118
1
原创 RxSwift分析
总体来说,DelegateProxyType就是rx内部提供的代理,拦截所有delegate/datasource的回调方法,通过subscribeProxyDataSource实现rx内部的事件观察和处理逻辑,向forwardDelegate/forwardDataSource传递observable事件的数据。作为一个监听用户行为的监听序列,成为一个observable,重要的是对observer(通过subscribe注册的观察者)的事件分派(观察者on方法的调用)
2023-09-11 16:19:55
703
原创 NetworkMoyaBase objective-c和swift通用的网络封装库
通过Moya和Alamofire实现的网络封装库,适配支持objective-c的工程和完全swift工程的业务调用,通过swiftyJSON对网络返回的数据进行JSON化解析,通过HandyJSON和YYModel分别实现对数据的oc数据结构的转换和swift数据结构的转换。
2023-08-25 15:49:59
277
2
原创 Kingfisher图片处理器代码分析
kingfisher类似SDWebImage实现跨平台图片展现功能,包括图片下载管理,缓存和动态图片展现.
2023-08-01 17:39:30
464
1
原创 swift NightNight夜间模式设计分析
与objective-c的DKNightMode相同,对于当前控件实现背景色,字体颜色等在不同模式下的颜色设置和变更,同时提供模式变更的闭包调用。
2023-07-26 15:35:07
153
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人