milan-xiao-tiejiang
码龄9年
关注
提问 私信
  • 博客:74,440
    74,440
    总访问量
  • 109
    原创
  • 537,364
    排名
  • 395
    粉丝
  • 4
    铁粉

个人简介:2015年开始Android App开发,精通Java、Kotlin、c++等Android开发语言,阅读过系统源码及多方Android主流框架,对 vue、flutter等也有一定的认知。 Java方向技术全面,熟练掌握Spring、MySQL等Java Web相关技术,掌握分布式架构体系。 2020年转向c++工程师,重新系统学习c++语法,目前从事清洁服务机器人相关领域。 tip:北京寻求Android、c++职位

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2015-11-02
博客简介:

milan-xiao-tiejiang的博客

查看详细资料
个人成就
  • 获得21次点赞
  • 内容获得7次评论
  • 获得126次收藏
  • 代码片获得921次分享
创作历程
  • 15篇
    2023年
  • 12篇
    2022年
  • 7篇
    2021年
  • 75篇
    2020年
成就勋章
TA的专栏
  • Android进阶
    20篇
  • Java知识
    17篇
  • c/c++
    10篇
  • opencv
    5篇
  • 随想
    1篇
  • Android框架
    14篇
  • Android基础整理
    7篇
  • Android Fragment
    13篇
  • 数据结构与算法
    5篇
  • Android面试
  • Kotlin
    12篇
  • JavaScript
    1篇
  • flutter知识体系
    6篇
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

学习之路指南:GitHub 教程与指南精选手册一

tutorials
原创
发布博客 2023.11.17 ·
1748 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android Framework 之 ServiceManager

ServiceManager 在 Android 系统中扮演了核心的角色。主要负责跨进程通信(IPC)的管理和服务的注册与查找。
原创
发布博客 2023.08.01 ·
627 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android Framework 之 启动流程

启动流程全解析
原创
发布博客 2023.08.01 ·
692 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

Android Framework 之 SystemServer

SystemServer是Android系统中的一个核心组件,负责启动和管理许多重要的系统服务。
原创
发布博客 2023.08.01 ·
803 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android Framework 之 Zygote

Android Zygote 是 Android 操作系统中一个关键的系统服务,它在系统启动时加载,为应用程序的运行提供了一种快速且资源高效的方式。
原创
发布博客 2023.08.01 ·
504 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

ROS软件包更新的全流程

OTA是一种无线分发和安装软件更新的技术,可以让用户在不连接电脑的情况下直接通过设备的无线网络(如Wi-Fi或蜂窝数据网络)进行系统升级。
原创
发布博客 2023.04.26 ·
1869 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

Linux 端口号占用如何处理

例如,tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1234/sshd 表示SSH服务占用了本机的22端口,当前处于监听状态(LISTEN),对所有IP地址都开放(0.0.0.0),对外的远程地址尚未建立连接(Foreign Address为"*"),该端口号对应的进程PID为1234,进程名为sshd。查看并关闭占用该端口的进程:可以使用 netstat -tlnp 命令查看占用该端口的进程,找到该进程的PID,然后使用 kill 命令关闭该进程。
原创
发布博客 2023.03.17 ·
8628 阅读 ·
2 点赞 ·
0 评论 ·
27 收藏

C++ 捕获异常崩溃全流程

在程序崩溃后,程序的状态是不确定的,可能会存在一些问题,如内存泄漏、资源未释放等。因此,直接在崩溃后的程序中上传服务器可能会存在风险,可能会加重程序的负担,导致程序异常退出。另外,对于一些轻微的错误或者性能要求比较高的代码,使用返回错误码的方式也可以提高程序的执行效率。需要注意的是,exec() 系列函数执行成功后,将不会返回,因此在调用 execl() 之后的代码将不会被执行。同时,在上传过程中要注意数据的传输安全,以及上传数据的完整性和准确性,以确保开发者能够及时准确地获取到程序崩溃的信息。
原创
发布博客 2023.03.17 ·
5237 阅读 ·
4 点赞 ·
0 评论 ·
27 收藏

OpenGL ES 绘制一张图片

注意,上述接口程序中的第一行代码激活的是哪个纹理句柄,在第三行代码中的第二个参数就需要传递对应的 Index,就比如说代码中激活的纹理句柄是 GL_TEXTURE0,对应的第三行代码中的第二个参数 Index 就是 0,如果激活的纹理句柄是 GL_TEXTURE1,那对应的 Index 就是 1,句柄的个数在不同的平台不一样,但是一般都会在 32 个以上。而当缩小的时候,因为没有足够的片段来绘制所有的纹理单元,也会丢失很多细节,是真正的降采样。其中,mColorMatrix 是这个变量在接口程序中的句柄。
原创
发布博客 2023.02.21 ·
1227 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

OpenGL ES SDL库

SDL 可以给开发者提供面向 libSDL 的 API 编程,它的内部能解决多个平台的 OpenGL 上下文环境和窗口管理的问题。开发者只需要交叉编译这个库到各自的平台上,就可以达到一份代码运行到多个平台的目的了。FFmpeg 中的 ffplay 工具就是基于 libSDL 开发的,SDL 不单单可以渲染视频画面,也可以渲染音频。但是对于移动开发者来讲,它也有一些缺点,比如使用 SDL 会牺牲一些更加灵活的控制,甚至某些场景下的功能实现不了。
原创
发布博客 2023.02.21 ·
359 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

OpenGL ES上下文环境搭建

由于 OpenGL ES 一开始就是为跨平台设计的,所以它本身并不承担窗口管理以及上下文环境构建的职责,这个职责需要由各自的平台来承担。Android 平台使用的是 EGL,EGL 是 Khronos 创建的一个框架,用来给 OpenGL 的输出与设备的屏幕搭建起一个桥梁。
原创
发布博客 2023.02.21 ·
1429 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

OpenGL 渲染管线与显卡可执行程序

其中,第一个参数 GLuint program 就是传入在上面一步返回的程序容器的句柄,第二个参数 GLuint shader 就是编译的 Shader 的句柄,当然要为每一个 shader 都调用一次这个方法才能把两个 Shader 都关联到 Program 中去。绘制方式的可选值有点、线、三角形三种,分别应用于不同的场景中。通过纹理坐标取得纹理中相对应的片元像素值,根据自己的需要改变这个片元,比如调节饱和度、锐化等,最终输出的是一个四维向量 gl_FragColor,我们用它来表示修改之后的片元像素。
原创
发布博客 2023.02.21 ·
585 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

OpenGL ES基础简介

视频的渲染源是 YUV 或者 RGBA 格式的数据,这种数据是描述画面最基础的格式,其中 YUV 常用在视频的原始格式中,RGBA 常用在一些图像的原始格式上。目前各个平台最终渲染到屏幕上的都是 RGBA 格式的,因为硬件对屏幕上的设计就是按照每个像素点分为四个子像素来实现的,所以 YUV 和 RGBA 之间是可以互相转换的。
原创
发布博客 2023.02.21 ·
664 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Netty 学习笔记——请求处理

Netty 批量写数据时,如果想写的都写进去了,接下来的尝试写更多(调整 maxBytesPerGatheringWrite)。Netty 待写数据太多,超过一定的水位线(writeBufferWaterMark.high()),会将可写的标志位改成。Netty 只要有数据要写,且能写的出去,则一直尝试,直到写不出去或者满 16 次(writeSpinCount)。Netty 写数据,写不进去时,会停止写,然后注册一个 OP_WRITE 事件,来通知什么时候可以写进去了再写。
原创
发布博客 2023.02.13 ·
489 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty 学习笔记——概念篇

Netty是由JBOSS提供的一个java开源框架,现为 Github上的独立项目。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。也就是说,Netty 是一个基于NIO的客户、服务器端的编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户、服务端应用。Netty相当于简化和流线化了网络应用的编程开发过程,例如:基于TCP和UDP的socket服务开发。
原创
发布博客 2023.02.13 ·
527 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

UNIX 线程相关知识体系

介绍了现有的创建和销毁线程的方法,还介绍了线程同步问题,讨论了5个基本同步机制(互斥量、读写锁、条件变量、自旋锁、屏障)
原创
发布博客 2022.11.07 ·
368 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

OpenCV 常用函数汇总(bitwise_*、pointPolygonTest、morphologyEx)

OpenCV 常用函数汇总(bitwise_*、pointPolygonTest、morphologyEx)
原创
发布博客 2022.10.14 ·
1111 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

OpenCV 常用函数汇总(normalize、getStructuringElement、erode、dilate)

OpenCV 常用函数汇总(normalize、getStructuringElement、erode、dilate)
原创
发布博客 2022.10.12 ·
1795 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

OpenCV 常用函数汇总(findContours、drawContours、getRotationMatrix2D、warpAffine、invertAffineTransform)

OpenCV 常用函数汇总(findContours、drawContours、getRotationMatrix2D、warpAffine、invertAffineTransform)
原创
发布博客 2022.10.11 ·
1022 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

OpenCV 常用函数汇总(distanceTransform、minMaxLoc、resize、convertTo、threshold)

OpenCV 常用函数汇总(distanceTransform、minMaxLoc、resize、convertTo、threshold)
原创
发布博客 2022.10.11 ·
926 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏
加载更多