自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(277)
  • 收藏
  • 关注

原创 全家桶!阿里P8大佬熬夜15天,把所有Android第三方库整理成了PDF,附第三方库全套系列教学视频

视频先行第三方库实战系列视频教程B站学习地址:Android第三方开源库系列—热修复框架使用、原理及项目实战Android第三方开源库系列—插件化框架使用、原理及项目实战Android第三方开源库系列—Android组件化使用、原理及手写组件路由项目实战Android第三方开源库系列—Glide图片加载框架使用、原理及手写实战Android第三方开源库系列—架构师的“Holle World”,手写自己的网络访问框架Android第三方开源库系列—RxJava响应式编程框架设计实战Andro.

2020-12-14 15:20:23 3052 26

原创 Android架构师的开发宝典:深入Android framework

作为一个工作了好几年的Android应用层开发者,准备在工作之余分享一些Android系统知识,为什么决定要做这个呢?

2024-05-24 10:45:46 156

原创 Android图像系统与Choreographer

在doFrame方法中,首先会根据时间戳计算并处理掉帧,然后按照CALLBACK_INPUT、CALLBACK_ANIMATION、CALLBACK_INSETS_ANIMATION、CALLBACK_TRAVERSAL、CALLBACK_COMMIT顺序,调用doCallbacks方法。在CallbackRecord的run方法中,会根据添加任务时传递的token区分任务类型。2)从头遍历任务链表,按照添加任务的时间戳从小到大的顺序,找到当前任务对应的位置。1)根据任务类型,获取任务队列。

2024-05-20 14:57:45 582

原创 Android framework从入门到精通!献给真心想赚钱的Android程序员

如果现在的你想要学习Android framework,但是又没有一个明确的学习方案,不如看看我总结的这份《Android Framework学习路线图》,涵盖了Binder、Handler、WMS等多个方面。从入门到精通一套完整的学习方案,已经整理成PDF版本的资料。文章篇幅有限,有需要的朋友可以扫描下方二维码,免费获取更多相关学习资料。Android Framework学习路线图第一章系统启动流程分析Android启动概括init.rc解析Zygote面试题第二章跨进程通信IPC解析。

2024-05-20 11:20:42 637

原创 Android自定义View之Canvas一文搞定

Canvas我们可以简单理解为画布或是ps里面的图层,是绘制图形的直接对象,控制着图形的形状,比如矩形、圆形等。我们在自定义View时,通过调用Canvas的API来绘制具体的图形。Canvas是绘制图像的直接操作对象,和Paint搭配使用能绘制丰富的图像要掌握Canvas的常用的一些API要掌握Canvas的平移和旋转操作,能帮我们简化很多图像坐标的计算如果你看到了这里,觉得文章写得不错就给个赞呗?更多Android进阶指南 可以扫码 解锁更多Android进阶资料敲代码不易,关注一下吧。

2024-05-18 15:25:04 962

原创 Android 如何实现中文全拼、简拼搜索

支持用户输入拼音搜索、简拼搜索。支持基础的模糊搜索(同音字、中段匹配)。

2024-05-17 15:43:39 716

原创 大厂Android APP性能优化实战全收录(腾讯、百度、美团、爱奇艺等)

性能优化对程序员来说至关重要,它不仅可以提高用户体验和资源效率,还可以提高系统的竞争力和稳定性。同时,性能优化也是一个不断学习和成长的过程,有助于提升程序员的技能水平和自信心。文章篇幅有限,大厂Android APP性能优化实战全收录成PDF版本了,有需要的朋友可以扫描下方二维码,免费获取相关资料。

2024-05-17 14:35:01 665

原创 Android Linux shell

【代码】Android Linux shell。

2024-05-14 17:20:03 110

原创 一文解决Android framework从入门到精通【大龄程序员必看】

学习是一个长期坚持的过程,为大家整理了一份PDF文档,里面涵盖了学习Android framework的方方面面,比如Binder、Handler、系统启动流程、AMS、WMS、PKMS核心源码解析,不仅仅停留在app应用层开发。文章篇幅有限,无法一一展示,有需要的朋友可以扫描下方二维码,免费获取相关资料。

2024-05-14 16:15:14 875

原创 自动化测试 - monkeyrunner

主要通过运行结果截屏与期望结果截屏相比较。MonkeyRunner是Google Android SDK下的一个工具,用于自动化测试Android程序。Monkeyrunner工具提供了一套API,使用这些api写出的Python程序可以在黑盒地控制Android设置和模拟器。有了Monkeyrunner,我们可以通过python语句控制apk包的安装和卸载、启动app、向app发送各种动作指令、截取图片并保存。

2024-05-10 11:14:25 730

原创 2024Android程序员最新性能优化学习指南,轻松拿捏

对于Android程序员来说,掌握性能优化,能够在开发的时候显著提升Android应用的响应时间、加载时间和流畅度,同时也能够减少Android应用对系统资源的占用,比如CPU、内存和电池,Android设备种类繁多,性能各异,且网络环境也各不相同性能优化,可以确保应用在各种设备和网络环境下都能顺畅运行,减少崩溃和错误的可能性,提高应用的兼容性和稳定性。所以,对于程序员来说,掌握性能优化是很有必要的但是对于大多数人都有一个顾虑,?

2024-05-10 10:53:02 609

原创 使用 Kotlin Compose Desktop 开发的图像编辑器

我们都知道Android的系统源码量非常之大,大致有frameworka层源码,硬件层(HAL)源码,内核层(Kernel)源码,之前了解到大佬看源码都是使用Source Insight,所以我也去学着使用Source Insight 看android的源码,但是作为一个六年的android应用开发来说,Android Studio的使用已经深入骨髓,再去联系使用Source Insight非常不适应。那能不能使用Android Studio去看源码呢?

2024-05-07 10:24:32 824

原创 基于RTMP协议流媒体直播的整体解决方案

随着自媒体的短视频和直播带货的流行,再加上这几年疫情的肆虐,直接把实体店给干趴下了。叫苦连天的实体店老板们,原来是不懂这些东西,而被割了韭菜。当然这只是开个玩笑,哈哈。他们没必要懂技术。那么就开始我们今天要讲的内容。一套完整的直播推拉流的解决方案到此就结束了。云里雾里的同学,可以系统学习下Linux操作系统的使用。对于native层代码看得头晕的同学,建议先学习cpp、jni以及音视频编解码的相关内容。如果你看到了这里,觉得文章写得不错就给个赞呗?

2024-05-07 10:14:39 908

原创 2024最新字节、大疆、滴滴Android面试题,告诉你社招如何准备!【附答案】

多家面试总结下来,考察的范围都很广,包括基础知识、项目。基础知识这块,需要花大量时间准备每一个细节,知其所以然,这样才能面试的时候问起来,都能头头是道。项目,大厂都比较注重项目,所以不仅要熟悉项目做了什么事情,而且要提炼出项目中的闪光点或者说不一样的地方,这些在面试之前都要想清楚。然后就是要多刷题。面试了这么多公司,除了阿里,其他公司的每一轮都会要求做题,所以在面试之前要对各种常见面试题了解,有时间的话多去刷刷题找感觉。

2024-05-07 10:08:58 1208

原创 全网最详细Android开发教程:《Kotlin从入门到精通》

自从被谷歌宣布为官方开发语言之一以来,影响力和使用率迅速增长,已成为了现代软件开发中不可或缺的一部分。Kotlin以其现代化的设计、高效性、安全性以及跨平台能力,已经成为提升开发效率、保证代码质量和促进技术创新的重要工具,对于想要保持竞争力的开发者和企业而言,掌握Kotlin变得越来越重要。

2024-05-06 15:26:07 984

原创 鸿蒙应用开发踩坑记录

运行环境是MetaPadPro 2019 鸿蒙4.0.0,使用api9+stage模型开发,运行在模拟器上正常,但是运行在该设备上出现冻屏现象,页面轮播图无法轮播,滑动组件无法发滑动,就像卡在了这一帧上一样。点击输入框键盘能弹出,但页面是黑的。可以通过锁屏、解锁或者音量键刷新页面。感觉上就是屏幕不会主动刷新,需要按物理键让屏幕刷新一次似的。询问过朋友后发现,这个现象只会出现在麒麟系列芯片的手机或平板上,看到论坛也有人咨询相同的问题。

2024-05-06 09:28:12 503

原创 鸿蒙开发之导航栏

鸿蒙开发正当时,现在入手正是好时机。还在犹豫不决的朋友们,小编在这里建议大家早点入手!在这里分享一份鸿蒙学习路线图帮助那些不知道怎么入门的朋友,另外一些鸿蒙开发的资料文档也顺便分享给大家,扫下方二维码就能免费送呢!1、UI开发(ArkTS声明式开发范式)概述2、开发布局3、添加组件4、显示图片5、使用动画6、支持交互事件7、性能提升的推荐方法设置深色模式上传文件在新窗口中打开页面管理位置权限并发概述使用异步并发能力进行开发使用多线程并发能力容器类库。

2024-05-02 11:00:00 19

原创 鸿蒙开发 distributedKVStore 存储数据无效问题

鸿蒙开发正当时,现在入手正是好时机。还在犹豫不决的朋友们,小编在这里建议大家早点入手!在这里分享一份鸿蒙学习路线图帮助那些不知道怎么入门的朋友,另外一些鸿蒙开发的资料文档也顺便分享给大家,扫下方二维码就能免费送呢!1、UI开发(ArkTS声明式开发范式)概述2、开发布局3、添加组件4、显示图片5、使用动画6、支持交互事件7、性能提升的推荐方法设置深色模式上传文件在新窗口中打开页面管理位置权限并发概述使用异步并发能力进行开发使用多线程并发能力容器类库。

2024-04-26 11:42:59 562

原创 2024年最新《Flutter入门与实战 》之只送不卖篇

10.1 自定义组件方法简介10.2 组合现有组件10.3 组合实例:TurnBox10.4 CustomPaint 与 Canvas10.5 自绘实例:圆形背景渐变进度条10.6 自绘组件:CustomCheckbox10.7 自绘组件: DoneWidget10.8 水印实例: 文本绘制与离屏渲染。

2024-04-26 10:27:26 1106

原创 2024最新实战教程:《Kotlin从入门到精通》

Kotlin的优点•: Kotlin 设计时注重代码的可读性和简洁性,通过消除冗余、减少样板代码,使得开发者能够以更少的代码行表达复杂的逻辑。•: 针对 Java 中常见的 NullPointerException,Kotlin 引入了严格的空安全机制,通过类型系统强制区分可空和非空类型,避免运行时空指针异常。•: Kotlin 被设计为与 Java 无缝集成,可以直接调用 Java 类库,同时 Java 代码也能轻松调用 Kotlin 编写的类。这对于已有 Java 项目的迁移和混合开发非常友好。

2024-04-19 19:40:08 904

原创 鸿蒙Next开发之-保存base64图片到本地沙盒

Base64 是一种基于64个 ASCII 字符来表示二进制数据的表示方法大、小写字母(AZaz52个数字。09)10个两个特殊字符。)2个。

2024-04-19 17:21:19 1084

原创 Android 车载应用开发——「Activity、Intent、Context」

Activity代表应用程序的单个屏幕,用户可以使用该屏幕执行单一、集中的任务,Activity 通常以全屏窗口的形式呈现给用户;Activity是一个应用程序组件,单个用户任务的单个屏幕;每个Activity都有自己的布局文件;可以为Activity分配父子关系,以在应用程序中启用向上导航;一个应用程序通常由多个彼此松散的屏幕组成;每个屏幕都是一个 Activity;应用程序中有一个主Activity(MainActivity.java),在应用程序启动时呈现给用户;通过。

2024-04-16 16:33:52 720

原创 所有Android工程师必须背完的Framework开发秘籍!!

是Android操作系统中的应用程序框架层,位于应用程序层和系统运行库层之间,为上层的应用程序提供了统一的接口和运行环境。它构建在Linux内核之上,包含了多个系统服务、管理器和组件,如ViewSystem等,这些都是支撑Android应用程序正常运行的关键部分。它提供了丰富的服务供开发者调用,例如位置服务多媒体服务网络通信服务等,使得开发者无需关注底层实现细节即可完成复杂功能的开发。

2024-04-16 15:28:31 687

原创 Android 车载应用开发——「广播接收器 」

实践是最好的学习方式,技术也如此。是四大组件之一;作用:是用来互相通信(传递信息)的一种机制;传递信息的方式1)通过方法;2)通过接口;3)通过广播广播传送信息的方式,不需要依赖两个类之间的参数传递;场景组件(应用内)通信:一个 app 内部之间可以用广播进行通信;进程间通信(一个 app 就是一个独立的进程):两个独立的 app 之间进行通信 / app 和手机之间进行通信(系统广播);静态广播和动态广播是按广播接收器的注册方式进行划分的;静态广播是在。

2024-04-11 11:37:41 710

原创 经典大厂Android面试题(免费送)

多家面试总结下来,考察的范围都很广,包括基础知识、项目。基础知识这块,需要花大量时间准备每一个细节,知其所以然,这样才能面试的时候问起来,都能头头是道。项目,阿里比较注重项目,所以不仅要熟悉项目做了什么事情,而且要提炼出项目中的闪光点或者说不一样的地方,这些在面试之前都要想清楚。然后就是要多刷题。面试了这么多公司,除了阿里,其他公司的每一轮都会要求做题,所以在面试之前要对各种常见面试题了解,有时间的话多去刷刷题找感觉。为了帮助大家在2024金三银四找到满意的工作,在这里小编分享一份精心整理的《

2024-04-11 10:56:43 1048

原创 鸿蒙开发常见错误总结

配置文件 项目根目录下创建项目根目录下执行命令注意这个是 NPM 的包,直接通过 NPX 执行。

2024-04-08 11:16:51 592

原创 2024年最新Android大厂面经分享(腾讯、字节、阿里)

面试经历就分享到这里了,为了帮助大家在2024金三银四找到满意的工作,在这里小编分享一份精心整理的《Android中高级面试题》~涵盖了许多大厂高频的面试题,只要自己肯下功夫,做到熟稔于心,面试自然胸有成竹。扫描下方二维码即可免费领取!!面试题内容包括:「

2024-04-08 10:46:50 889

原创 Android 音视频分离与合成解析

音视频开发为Android带来了无限可能,从基础的播放功能到复杂的实时通讯,开发者可以利用Android提供的强大API和第三方库,打造出功能丰富、用户体验卓越的多媒体应用。随着技术的不断进步,音视频开发将继续在Android平台上扮演重要角色,为用户带来更加精彩的移动体验。

2024-04-02 11:36:22 585

原创 从入门到精通:Flutter完整开发指南

10.1 自定义组件方法简介10.2 组合现有组件10.3 组合实例:TurnBox10.4 CustomPaint 与 Canvas10.5 自绘实例:圆形背景渐变进度条10.6 自绘组件:CustomCheckbox10.7 自绘组件: DoneWidget10.8 水印实例: 文本绘制与离屏渲染。

2024-04-02 11:04:48 1073

原创 20道Android大厂高频面试题(附答案)

Fragment是Android中的一个UI组件,可以被嵌入到Activity中,用于构建动态和灵活的UI。与Activity不同,Fragment不是单独的入口点,而是Activity的一部分,可以被添加、移除或替换,从而实现多片段的界面。Intent是Android中用于组件间通信的一种机制。它可以用于启动Activity、Service,或者发送广播。Intent可以显式地指定要通信的组件,也可以隐式地通过Intent Action来匹配系统或应用中的相应组件。

2024-03-29 20:41:22 1151

原创 鸿蒙生态与智能家居的碰撞能产生怎样的火花?

1、UI开发(ArkTS声明式开发范式)概述2、开发布局3、添加组件4、显示图片5、使用动画6、支持交互事件7、性能提升的推荐方法设置深色模式上传文件在新窗口中打开页面管理位置权限并发概述使用异步并发能力进行开发使用多线程并发能力容器类库XML生成、解析、与转换通知应用模型的构成要素应用模型解读。

2024-03-29 15:27:29 601

原创 Android Framework权限篇之RuntimePermission数据结构解析

在上篇文章中提到的权限授权、撤销授权、判断是否授权等都会通过如下数据结构读取写入;这里画了个图帮助大家阅读源码理解,因为嵌套比较深;这里两张图结合起来看下,理解了以上之后,再回过头去看源码里关于类的相关方法去进行授权和判断是否授权等就容易看了运行时权限会持久化存储在 这里表示userid对应是0,如果有多用户则对应在其他users目录下;xml文件存储内容如下,对应上面数据结构的name、granted、flag等属性如果在应用声明了以下权限,安装应用时权限是如何授权的?如下几种权限级别都是上篇文章有提到的

2024-03-26 21:21:05 586

原创 【HarmonyOS】零基础就不行了吗?有了这份秘籍就能成为鸿蒙开发大佬!

1、UI开发(ArkTS声明式开发范式)概述2、开发布局3、添加组件4、显示图片5、使用动画6、支持交互事件7、性能提升的推荐方法设置深色模式上传文件在新窗口中打开页面管理位置权限并发概述使用异步并发能力进行开发使用多线程并发能力容器类库XML生成、解析、与转换通知应用模型的构成要素应用模型解读。

2024-03-26 16:19:11 1053

原创 【Android】全网最全从基础到进阶音视频开发教程,金三银四救命稻草

音视频开发为Android应用带来了无限可能,从基础的播放功能到复杂的实时通讯,开发者可以利用Android提供的强大API和第三方库,打造出功能丰富、用户体验卓越的多媒体应用。随着技术的不断进步,音视频开发将继续在Android平台上扮演重要角色,为用户带来更加精彩的移动体验。

2024-03-22 11:12:31 683

原创 2024最新Android大厂面试题合集(附答案及资料整合包)

答案Android SDK(Software Development Kit)是一套开发工具,用于开发Android应用程序。它包括了库、示例代码、开发工具和模拟器系统,使开发者能够创建、测试和调试Android应用。答案Intent是Android中用于组件间通信的一种消息传递对象。Intent Filter是定义在AndroidManifest.xml中的,用于指定BroadcastReceiver感兴趣的Intent。

2024-03-22 10:28:37 1061

原创 Android findFocusedWindowTargetsLocked源码分析

看完findFocusedWindowTargetsLocked有助于分析dispatchKeyLocked和dispatchMotionLocked,也有助于分析dispatchOnce逻辑等等。

2024-03-19 18:10:26 255

原创 Android大厂面试潜规则?非985、211,专业不对口

现在在找工作特别是想要加入大厂的Android程序员朋友,有没有这样的问题,“我不是985、211学历,专业也不对口,怎么拿到了大厂的offer?”、“Android大厂面试有没有潜规则?”、“怎么顺利通过面试?”…第一、想清楚三个问题第二、拆解清楚面试的过程第三、准备好两个问题。

2024-03-19 18:00:30 987

原创 JAVA 查找并移除字符串中的Emoji

Emoji 实际上是 UTF-8 (Unicode) 字符集上的特殊字符,多数基本 Emoji 都被分配到 Unicode 编码表 1 号平面的 U+1F300–1F6FF 和 U+1F900–1FAFF 两个区域,由2个字符组成。

2024-03-13 22:09:24 683 1

原创 大厂抢人!鸿蒙开发薪资高达4w,大批程序员面临转行抉择

随着大厂纷纷开启“抢人”模式,部分鸿蒙开发工程师岗位薪资高达4万元,这确实为许多程序员提供了一个诱人的职业机会。面对这样的薪资诱惑和行业发展趋势,大批程序员正面临转行抉择。

2024-03-13 21:51:19 607

原创 5分钟彻底理解Android 源集sourceSet

**渠道包由渠道源集加工而来,渠道源集=主源集+附加源集,附加源集中的源码不能有冲突,资源冲突打包时候执行覆盖策略。**

2024-03-08 18:38:32 907

空空如也

空空如也

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

TA关注的人

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