自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(385)
  • 资源 (6)
  • 问答 (2)
  • 收藏
  • 关注

原创 Android重要知识点学习总结

Java多线程、线程池、异步任务HashMap、HashTable、ConcurrentHashMap四大引用反射接口、抽象类的区别垃圾回收机制JVM内存模型设计模式基本原则单例策略工厂、建造者适配器观察者AndroidActivity启动模式App的启动流程Handler原理事件分发机制Activity、Window、View的关系View的绘制流程断点续传类加载过程(插件化和热修复)kotlin + jetpack + mvvm进程间通信进程

2021-01-31 19:07:40 1159 1

原创 FFmpeg命令实例合集

ffmpeg命令实例

2019-11-15 17:41:55 6750 2

原创 HarmonyOS持久化存储数据Preference

【代码】HarmonyOS持久化存储数据Preference。

2024-07-24 14:18:23 238

原创 HarmonyOS网络请求的简单用法,HttpUtil简单封装

【代码】HarmonyOS网络请求的简单用法,HttpUtil简单封装。

2024-07-23 15:30:03 389

原创 Android TabLayout的简单用法

【代码】Android TabLayout的简单用法。

2024-07-23 11:29:08 340

原创 HarmonyOS几种列表方式,List列表容器、Grid网格容器、Swiper轮播图

【代码】HarmonyOS几种列表方式,List列表容器、Grid网格容器、Swiper轮播图。

2024-07-22 15:46:54 483

原创 HarmonyOS页面跳转和页面间传值

【代码】HarmonyOS页面跳转和页面间传值。

2024-07-19 17:25:55 341

原创 HarmonyOS工程目录结构

混淆开启后,在使用Release模式进行编译时,会对代码进行编译、混淆及压缩处理,保护代码资产。hvigorfile.ts:应用级或Module级的编译构建任务脚本,开发者可以自定义编译构建工具版本、控制构建行为的配置参数。build-profile.json5:工程级或Module级的构建配置文件,包括应用签名、产品配置等。用于编译构建,包括构建配置文件、编译构建任务脚本、混淆规则文件、依赖的共享包信息等。oh-package.json5:用于存放依赖库的信息,包括所依赖的三方库和共享包。

2024-07-19 15:37:19 181

原创 HarmonyOS中一个简单的自定义view

两个可选的传入参数,message、isComplete@Componentbuild() {.margin(4)0.5 : 1)})})

2024-07-19 14:37:39 218

原创 Android Studio Unknown host You may need to adjust the proxy settings in Gradle解决办法

1.设置为No proxy2.删除.gradle下的gradle.properties文件

2024-02-27 16:14:50 1941

原创 vue自定义view,传值和事件回调

【代码】vue自定义view,传值和事件回调。

2024-02-18 09:42:40 428

原创 Cocos creator 动作系统

是用于控制物体运动的一套系统,完全依赖代码进行实现,动态调节节点的移动。

2024-01-30 11:00:57 1147

原创 cocos creator 调用预设体Prefab中的方法(调用另一个节点的方法)

【代码】cocos creator 调用预设体Prefab中的方法(调用另一个节点的方法)

2024-01-29 11:09:37 651

原创 cocos creator 碰撞系统

添加组件中添加碰撞组件。

2024-01-25 10:41:05 709

原创 Cocos creator 的事件处理(鼠标事件、键盘事件、触摸事件、自定义事件、控制精灵移动Demo)

发送通知(2种方式)cc.log("点击按钮,发送事件1")})cc.log("点击按钮,发送事件2")接收方//自定义事件,例如通知cc.log("自定义事件触发")})

2024-01-19 14:10:54 1051

原创 Android studio 历史版本下载

Android studio 历史版本https://developer.android.google.cn/studio/archive页面加载完成后,点击I agree进入历史版本列表

2024-01-12 09:29:05 2630

原创 Android Studio Git Invocation failed Unexpected end of file from server

Invocation failed Unexpected end of file from server解决办法,勾选以下内容

2023-12-12 11:06:48 230

原创 vue开发,axios网络请求框架基本用法和封装

【代码】vue开发,axios网络请求框架基本用法和封装。

2023-12-07 15:31:39 836

原创 后端SSL证书更新流程

申请成功后,点击下载,下载Tomcat版。在服务端代码中配置后,打包发布。阿里云先购买20个免费额度。创建免费证书,提交证书申请。

2023-04-12 10:27:37 297 1

原创 bat+ffmpeg批处理图片,图片批量转码

【代码】bat+ffmpeg批处理图片,图片批量转码。

2023-03-15 15:08:24 956

原创 Android几种数据存储的对比(MMKV、DataStore、SharedPreference)

Jetpack DataStore 是一种改进的新数据存储解决方案,允许使用协议缓冲区存储键值对或类型化对象。DataStore 以异步、一致的事务方式存储数据,克服了 SharedPreferences(以下统称为SP)的一些缺点。DataStore基于Kotlin协程和Flow实现,并且可以对SP数据进行迁移,旨在取代SP。MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。

2022-11-16 11:36:55 2362 1

原创 Android 热修复Tinker框架

首先通过assmeble打包(通过run打包作为bakApk时,差异包可能编译出错)修改代码后,打包补丁包。(注意需要在app.gradle中配置基准包信息)

2022-10-28 16:13:43 504

原创 Android 使用adb修改手机分辨率、dpi

【代码】Android 使用adb修改手机分辨率、dpi。

2022-10-13 09:15:27 17017 2

原创 Java LinkedBlockingQueue阻塞队列

阻塞队列

2022-05-12 16:51:55 887

原创 PyTorch开发环境搭建,Anaconda+PyTorch+PyCharm

Anaconda(用作包管理工具)官网https://www.anaconda.com/历史版本https://repo.anaconda.com/archive/创建一个环境激活环境PyTorchPyTorch是一个开源的Python机器学习库官网https://pytorch.org/测试PyTorch是否安装成功PyCharm(社区版)官网https://www.jetbrains.com/pycharm/...

2022-05-08 19:10:16 551

原创 Can‘t use Subversion command line client: svn Probably the path to Subversion executable is wrong

Android Studio配置svn问题如果安装的TortoiseSVN工具,本身是不带有command-line功能的,必须要安装Apache-Subversion,而且须要单独安装。下载Apache-Subversionhttps://www.visualsvn.com/files/Apache-Subversion-1.9.2.zip下载后可以看到Android Studio中配置该地址即可...

2022-05-05 16:02:43 434

原创 Android Mediacodec解码视频(通过Surface播放、得到Image数据)

MediaCodec解码得到Image对于仅仅需要将视频切分为一帧一帧并保存为图片的用户来说,使用这种方法比bigflake的方法会快10倍左右,因为没有OpenGL渲染,以及转换为Bitmap的开销。而对于需要获得视频帧YUV格式数据的用户来说,这种方法能够直接得到YUV格式数据,中间没有数学运算,不会出现不必要的精度损失,而且,也是效率最高的。package com.vision.opengl.decoder;import android.graphics.Bitmap;import an

2022-04-28 16:44:59 5577

原创 MySQL-8.0.28安装搭建过程

MySQL下载官网官网下载地址下载并解压到C:\Users\1\mysql-8.0.28-winx64添加环境变量我的电脑->属性->高级->环境变量,在path下新建C:\Users\1\mysql-8.0.28-winx64\bin测试是否安装成功

2022-04-02 20:18:18 1277

原创 Android CoordinatorLayout嵌套RecyclerView再嵌套RecyclerView后导致联动失效问题

问题CoordinatorLayout 嵌套 RecyclerView 滑动联动没问题,但是在 RecylerView 中再嵌套一层 RecyclerView 就会出现不联动的问题。解决给最内层的 RecyclerView 设置属性:nestedScrollingEnabled = false,使其不参与联动 <androidx.recyclerview.widget.RecyclerView android:id="@+id/rv_item"

2022-03-06 00:54:34 3167

原创 FFmpeg movie和amovie的使用

moviemovie可以用于加载一个输入源,同-i命令区别movie是一个filter可以写在filter_complex中,这样的好处是可以随时用随时输入,不需要去记输入源的id,缺点在于很多Main options参数用不了,例如itsoffset延时播放-i是Main options,输入和处理分离,通过[id:v]来取输入源,缺点在于当输入源过多时,需要标记每个输入源的id用法moviemovie=in.avi:seek_point=3.2, scale=180:-1, s

2022-02-08 09:44:27 2123

原创 Android内存泄漏检测工具LeakCanary

LeakCanaryhttps://github.com/square/leakcanary引入dependencies { //https://github.com/square/leakcanary debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'}2.0以上的leakcanary自带ContentProvider初始化在ContentProvider中进行初始化interna

2022-01-06 10:00:39 1901

原创 Android 设置drawableTop无效的问题

无效代码 //设置顶部图标 val drawable = resources.getDrawable(align.resId) setCompoundDrawables(null, drawable, null, null)有效代码AppCompatResources.getDrawable获取资源图片需要设置setBounds val drawable = AppCo

2021-11-14 09:10:53 2071

原创 Java合并两个有序数组、合并两个有序链表

合并有序链表牛客网:CC85 合并两个排序的链表 public ListNode mergeList(ListNode list1, ListNode list2) { ListNode newHead = new ListNode(0); ListNode curNode = newHead; while (list1 != null && list2 != null) { if (list1.val &

2021-11-05 09:53:23 185

原创 Java判断链表中是否有环(快慢指针)

LeetCodehttps://www.nowcoder.com/practice/650474f313294468a4ded3ce0f7898b9?tpId=46&&tqId=29039&rp=1&ru=/ta/classic-code&qru=/ta/classic-code/question-ranking算法 public boolean hasCycle(ListNode head) { if (head == null) r

2021-09-28 14:56:34 199

原创 Android MVVM+RecyclerView+SwipeRefreshLayout实现下拉刷新和上滑加载更多

引入 //ViewModel的创建 implementation 'androidx.activity:activity-ktx:1.1.0'//by viewModels implementation 'androidx.fragment:fragment-ktx:1.2.5'//by viewModels // implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"//下拉刷新.

2021-08-31 15:29:56 763 1

原创 Android 监听软键盘SoftKeyboard的高度变化

方案一,使用blankj:utilcodehttps://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README-CN.md KeyboardUtil.observeKeyboard(requireActivity()) { val param = binding.flKeyboard.layoutParams param.height = it .

2021-06-26 17:02:58 670

原创 Android ViewModel和LiveData源码分析

获取动态数据时使用例如:获取首页的列表,首次加载和加载更多时,数据是变化的,此时使用livedata中存储每次请求的结果,在activity中统一进行观测即可。如果是第一页,则setData否则addData。在列表刷新和加载更多时,只需要一行调用ViewModel.refreshData或ViewModel.loadMoreData方法即可,不需做其他逻辑操作,都交给ViewModel处理优势:简洁逻辑清晰。对同一类型的数据集中处理。非动态数据时可以不用livedata例如获取优.

2021-05-26 11:25:08 241 6

原创 【设计模式】观察者模式(Observer)

观察者模式观察者模式的定义:指多个对象间存在一对多的依赖关系,当一个对象发生改变时,所有依赖他的对象都会得到通知并自动更新。这种模式又被称为发布—订阅模式、模型—视图模式,它是对象行为型模式。观察者模式的优点:降低目标与观察者之间的耦合关系,两者是抽象耦合关系。自定义观察者模式Java中自带的Observable和Observer参考资料观察者模式(Observer模式)详解...

2021-05-20 12:46:53 220

原创 Android Gson的使用和源码分析总结

GsonJSON(JavaScript Object Notation)是一种轻量级的数据交换格式Gson是Google推出的用于在Java对象和JSON数据之间进行映射的Java类库,可以将一个JSON字符串转化为Java对象(反序列化),或者将Java对象转换为JSON字符串(序列化)https://github.com/google/gsonGson使用导入//https://github.com/google/gsonimplementation 'com.google.cod

2021-05-19 12:24:07 246

原创 Android 软件盘相关的问题(在BottomSheetDialogFragment中无法隐藏问题、使用AirPanel适配软键盘高度问题)

需求在BottomSheetDialogFragment关闭的时候收起软键盘 override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { setStyle(STYLE_NO_TITLE, R.style.BottomDialogSheet) return object : BottomSheetDialog(requireContext(),theme) { overri

2021-05-14 16:24:06 729 1

jdk-linux-x64.zip

jdk-8u221-linux-x64.tar.gz jdk-8u221-linux-x64.tar.gz

2019-08-18

vm_ubuntu_xshell.rar

VM Ubuntu XShell 安装教程 VM Ubuntu XShell 安装教程

2019-07-14

SimpleCropView-master.zip

SimpleCropView-master.zip

2019-03-23

Matisse-0.5.2-beta3.zip

Matisse-0.5.2-beta3.zip

2019-03-23

FFmpeg最新版20181111安装包

使用说明 https://blog.csdn.net/yu540135101/article/details/83964050

2018-11-18

OpenCVTest

https://blog.csdn.net/yu540135101/article/details/82593860

2018-09-11

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除