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

原创 算法入门
写在前面汇总贴,各种算法的Java实现,持续更新~《剑指Offer》数组中重复的数字二维数组中的查找替换空格、重建二叉树斐波那契数列、旋转数组中的最小数字矩阵中的路径、机器人的运动范围剪绳子、二进制中1的个数数值的整数平方、打印从1到最大的n位数、删除链表的节点正则表达式匹配、表示数值的字符串调整数组顺序使奇数位于偶数前面、链表中倒数第k个节点、链表中环的入口节点、反转链表...
2019-06-23 17:43:31
736
3

原创 音视频学习-从入门到精通到放弃
写在前面汇总贴,音视频相关的文章目录,持续更新~《FFmpeg从入门到精通》《FFmpeg从入门到精通》读书笔记(一)《FFmpeg从入门到精通》读书笔记(二)《FFmpeg从入门到精通》读书笔记(三)...
2019-06-23 17:34:15
2147
2
原创 Webview详解(下)
缓存策略可以显著减少网络请求,提升页面加载速度。常用的缓存策略包括 HTTP 缓存和本地资源预加载。HTTP 缓存利用 HTTP 协议中的缓存机制(如 、 等)来缓存网络资源。Android 实现:iOS 实现:2. 本地资源预加载将静态资源(如 HTML、CSS、JS、图片)打包到应用中,直接从本地加载。Android 实现:iOS 实现:懒加载与非关键资源延迟加载懒加载和延迟加载可以减少页面初始加载时间,提升用户体验。图片懒加载是指当图片进入可视区域时才加载。2. 非关
2025-03-26 21:03:58
1022
原创 Webview详解(上)
特性底层引擎ChromiumWebKit性能较好,低端设备可能卡顿更优,特别在 JavaScript 执行进程模型运行在主进程独立进程API 设计灵活但复杂现代且简洁缓存与存储功能较弱功能强大安全性默认较低,需手动配置默认较高兼容性设备碎片化,需适配设备一致,兼容性好开发体验文档详细,学习曲线陡文档清晰,学习曲线平缓。
2025-03-25 19:51:22
1129
原创 什么是CDN、PCDN?
CDN(Content Delivery Network)诞生于20世纪90年代,最初用于解决互联网拥塞问题。现代CDN已发展为包含边缘计算安全防护动态加速的综合性服务网络,全球市场规模超过200亿美元(2023年数据)。CDN(Content Delivery Network)诞生于20世纪90年代,最初用于解决互联网拥塞问题。现代CDN已发展为包含边缘计算安全防护动态加速的综合性服务网络,全球市场规模超过200亿美元(2023年数据)。
2025-03-20 21:20:07
1062
原创 ArkTs-RelativeContainer高度限制方式
层级关系:确保 RelativeContainer 的父容器有明确高度,百分比高度才能生效。性能优化:避免在 RelativeContainer 中嵌套过多复杂子组件,影响渲染效率。单位使用:推荐使用 vp(虚拟像素)保证不同屏幕密度下的适配。
2025-03-05 17:27:08
336
原创 星座-从入门到精通
突然想到写这么一篇文章,是因为周围人时常都会提起星座相关的话题,而我对此了解甚少,又不知从何开始学起。正值大模型兴起之时,最近又学习了很多相关知识和用法,便想到用上一用:用大模型来写出一篇文章。即使我不懂星座,只要通过不断的询问的引导大模型,也可以完成文章的编写。星座在天文学和占星学中有不同的定义和用途。天文学的星座更侧重于科学和天体定位,是一个客观的天球划分。占星学的黄道十二星座则是基于太阳的运动,侧重于个人性格和命运的解读,是一种主观的信仰体系。
2025-02-27 17:41:29
861
原创 ArkTs-打乱array数组
在 ArkTS(基于 TypeScript 的华为 HarmonyOS 开发框架)中,打乱数组顺序可以通过或 sort实现。
2025-02-13 14:23:56
340
原创 ArkTs-borderRadius不生效问题
优先显示内层,内层没设置圆角。如果希望内层随着外层的圆角设置,那需要在外层设置.clip(true)外层控件加了borderRadius,内层控件是默认撑满容器的,实际显示时没有出现圆角。
2025-02-08 14:19:06
203
原创 ArkTs-CustomSpan实现有padding的Span
*** 自定义Span —— 可设置padding和背景*/// 传入的数据// 文字大小// 背景圆角// 绘制中需要的数据// 与前方文字的间距(单位:px)// 文字中线与底部的间距,调整位置(单位:px)super();/*** 设置文字大小、文字、文字颜色、背景色*/try {});/*** 设置padding*//*** 设置背景圆角*/reset() {return {// 画背景});
2025-01-23 14:48:17
413
原创 ArkTs-@Builder引用传递问题
在page页中,定义了@State status;在实现时发现,将status传入builder,并不能触发改变时的更新。参数分为按引用传递参数和按值传递两种,按引用传入需要将变量命名为$$。将page整体作为引用变量传入,通过page去取需要的其他参数。打日志发现,没有发生修改;
2025-01-04 14:19:53
260
原创 ArkTs-自定义弹窗退出动画问题
点击“取消”按钮时,修改flag ->触发visibility变化 ->UI布局做动画,通过这个流程实现了dialog的入场/出场动画;同时,因为退出dialog时需要给退出动画流出时间,必须设置setTimeOut,等待动画时间后再关闭通过dialogController关闭弹窗。3.在@Component下,维护一个DialogStatus变量,作为外层控制dialog显示与否的flag(启动时设置成true,关闭时设置成false)1.在弹窗的布局上,通过.transition(…
2025-01-04 14:16:05
562
原创 ArkTs-Text组件长度计算不对的问题
ellipsisMode属性需要配合overflow设置为TextOverflow.Ellipsis以及maxLines使用,单独设置ellipsisMode属性不生效。EllipsisMode.START和EllipsisMode.CENTER仅在单行超长文本生效。1.当Text组件长度不固定,设置了ellipsisMode;文本长度很长,超出了显示的范围。此时Text组件的长度计算有问题,会直接与父容器的大小一致,将其他组件顶到父容器外去显示。3.父容器长度不固定,通过weight计算得出。
2025-01-03 10:17:22
176
原创 ArkTs-this指向问题
然而,如果函数被作为回调使用(比如作为事件监听器、setTimeout、setInterval的参数、map、filter、reduce等函数的参数等),实现中代码的this,指向的是组件中的变量;而接口实现类收到回调的环境中,this并非指向组件,调试过程中可以看到所有的值都为undefined。可能不会指向你期望的上下文(例如,可能指向全局对象或者在严格模式下是undefined)。指向是动态的,取决于函数的调用方式。通常,如果一个函数被作为对象的方法调用,使用箭头函数:箭头函数没有自己的。
2025-01-02 20:31:44
480
原创 一起看看StatusBarManagerService(三)
本篇主要介绍StatusBarManagerService中与通知栏相关的API和几个通用API。
2023-12-14 21:11:06
406
原创 一起看看StatusBarManagerService(二)
StatusBarManagerService中API涉及systemui的多个模块;本篇主要介绍StatusBarManagerService中与状态栏相关的API。
2023-12-13 10:49:37
559
原创 一起看看StatusBarManagerService(一)
本篇主要介绍StatusBarManagerService与systemui之间的关联。
2023-11-11 10:20:28
880
原创 星球作业(第十期)Android中的ClassLoader
1.Android中有哪几种ClassLoader?它们的作用和区别是什么? 2.简述ClassLoader的双亲委托模型
2023-10-04 17:25:28
302
原创 记一次成功的探索过程:算法题-单词搜索II (暴力+字典树)
题目给定一个 m x n 二维字符网格board和一个单词(字符串)列表 words,找出所有同时在二维网格和字典中出现的单词。单词必须按照字母顺序,通过 相邻的单元格 内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母在一个单词中不允许被重复使用。输入:board = [[“o”,“a”,“a”,“n”],[“e”,“t”,“a”,“e”],[“i”,“h”,“k”,“r”],[“i”,“f”,“l”,“v”]], words = [“oath”,“pea”,
2021-04-26 20:16:08
325
原创 记一次失败的探索过程:算法题-连续的子数组和
题目题目链接:leetcode-连续的子数组和给定一个包含 非负数 的数组和一个目标 整数 k ,编写一个函数来判断该数组是否含有连续的子数组,其大小至少为 2,且总和为 k 的倍数,即总和为 n * k ,其中 n 也是一个整数。示例 1:输入:[23,2,4,6,7], k = 6输出:True解释:[2,4] 是一个大小为 2 的子数组,并且和为 6。示例 2:输入:[23,2,6,4,7], k = 6输出:True解释:[23,2,6,4,7]是大小为 5 的子数组,并且和为
2021-04-21 21:07:34
189
原创 Android日常—圆角ImageView
写在前面新开个topic~日常开发中解决的比较有趣的问题,分享一下~需求ImageView实现圆角,单侧圆角实现分析首先最好能用最小的改动去实现ImageView加圆角,不对bitmap或drawable做处理,而是在绘制时进行修改,于是在onDraw时通过clipPath扣出一个圆角;其次是单侧圆角需要考虑LTR和RTL切换的问题。代码package com.example.myapplication.ui;import android.content.Context;imp
2021-03-20 12:04:30
787
原创 驾考:科一知识点总结
写在前面记录科一知识点,复习用;还在看,随缘更新2021.02.23 第一次整理分数相关扣3分的情况:1.驾驶营运客车(不包括公共汽车)、校车以外的载客汽车载人数超过核定人数未达20%的2.驾驶中型以上载客载货汽车、危险物品运输车辆在高速公路、城市快速路以外的道路上行驶或者驾驶其他机动车行驶超过规定时速未达20%的3.驾驶货车载物超过核定载质量未达30%4.驾驶机动车在高速公路行驶低于规定最低时速的5.驾驶禁止驶入高速公路的机动车驶入高速公路的6.驾驶机动车在高速公路或者城市快速路上不
2021-02-23 21:27:05
1644
原创 LinearLayout onMeasure源码解析
目录写在前面知识储备1. LinearLayout属性baselineAligned的作用及baseline2. LinearLayout之Weight/measureWithLargestChild详解3. LinearLayout分隔符妙用4. TabRowLinearLayout.onMeasure源码分析Vertical变量第一个for循环第二个for循环第三个for循环Last but not the least写在后面写在前面基于android-30源码进行分析知识储备1. Linea
2021-02-09 16:18:16
430
原创 Android性能优化实践——启动优化
写在前面赶着学赶着写,实不实用就完事了!这里的优化我们针对的是冷启动时的优化,有关冷启动等相关概念可以看这篇文章:APP启动方式分析——冷启动、热启动、温启动而冷启动的第二阶段,创建app对象、启动主进程、创建MainActivity、渲染视图、执行onLayout、执行onDraw,这部分是我们能够真正控制的时间,即Application和Activity生命周期中进行的操作。目录启动时间测量traceview开屏白屏——Theme切换异步优化启动时间测量对启动
2020-07-08 12:08:43
606
原创 图片加载—Glide为什么这么强?Glide源码分析(下)
写在前面Github–Glide 镇楼欢迎光临下篇 ~目录(上)1.代码实例2.GlideApp3.with4.监听生命周期5.load6.into(下)1.资源加载和缓存机制2.TargetView3.Transform资源加载和缓存机制书接上文,讲到了into方法最后委托’RequestTracker #track’去获取资源: # RequestManager void track(@NonNull T
2020-05-13 10:09:49
438
1
原创 图片加载—Glide为什么这么强?Glide源码分析(上)
写在前面Github–Glide 镇楼源码越看觉得东西越多,决定分两篇来写:目录(上)1.代码实例2.GlideApp3.with4.监听生命周期5.load6.into(下)1.资源加载和缓存机制2.TargetView3.Transform代码实例// how to use?repositories { mavenCentral() google()}dependencies { implement
2020-05-12 13:05:41
416
1
原创 OKHttp看这一篇就够了!
写在前面本文按照一次网络请求的代码实例的顺序来进行源码分析,如果有错误的地方麻烦各位大佬指正~目录1.代码实例2.OkHttpClient3.Request4.Call & RealCall5.Dispatcher6.Interceptor实例 /** * 同步请求 */ public void synRequest() { ...
2020-05-08 14:05:30
1558
原创 Android Architecture Components(六)Room源码分析
写在前面官方文档镇楼首先先摘选官方文档上的讲解,之后针对Room涉及的注解进行阅读分析。使用 Room 将数据保存到本地数据库Room 在 SQLite 上提供了一个抽象层,以便在充分利用 SQLite 的强大功能的同时,能够流畅地访问数据库。处理大量结构化数据的应用可极大地受益于在本地保留这些数据。最常见的用例是缓存相关数据。这样,当设备无法访问网络时,用户仍可在离线状态下浏览相应...
2020-03-15 18:17:03
1045
原创 Android Architecture Components(五)Paging源码分析
写在前面本文分三部分进行解读:首先是官方文档的摘录,介绍Paging库的作用以及使用方式,第二部分会给出一个实例来介绍Paging库的用法,第三部分结合项目对源码进行阅读分析。官方文档The Paging Library helps you load and display small chunks of data at a time. Loading partial data on de...
2020-03-09 20:20:15
513
原创 Android 倒计时出现误差解决方式
写在前面这几天在实现一共和倒计时有关的功能,使用CountDownTimer实现。然而,在测试的时候发现,倒计时经常发现跳秒、不出现1的情况,因此对这方面进行了一些了解。本文准备介绍一下CountDownTimer倒计时不准确的原因,以及自己实现的一个计时器~CountDownTimer的问题发现跳秒、不出现1的问题之后,首先将每次onTick()的回调时间打印了出来(这里忘记保存log了...
2020-02-28 14:07:09
1801
原创 FFmpeg源码(四)大军未动粮草先行——avformat_open_input
写在前面本节主要分析avformat_open_input:打开输入流的过程中所做的操作。源码解析首先我们先给出avformat_open_input的完整代码及详解注释(代码中标注的两个TODO的解析在后面):avformat_open_input/** * Open an input stream and read the header. The codecs are not o...
2019-11-28 14:09:18
852
Mobile multimedia streaming techniques QoE and energy saving perspective
2017-07-25
win8电脑网关为空,自己添加也保存不上
2015-11-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人