自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android面试必问:Handler、Bitmap、线程,面试官一听回答都懵了

ANR(Application Not Responding,应用无响应):当操作在一段时间内系统无法处理时,会在系统层面会弹出ANR对话框产生ANR可能是因为5s内无响应用户输入事件、10s内未结束BroadcastReceiver、20s内未结束Service想要避免ANR就不要在主线程做耗时操作,而是通过开子线程,方法比如继承Thread或实现Runnable接口、使用AsyncTask、IntentService、HandlerThread等Bitmap。

2024-05-19 01:13:24 274

原创 Android性能优化四:APP启动优化

核心思想:充分利用CPU多核,自动梳理任务顺序启动器流程:代码Task化,启动逻辑抽象为Task根据所有任务依赖关系排序生成一个有向无环图多线程按照排序后的优先级依次执行2、更优秀的延迟初始化方案2.1、常规初始化痛点时机不便控制导致Feed卡顿2.2、更优方案核心思想:对延迟任务进行分批初始化利用IdleHandler特性,空闲执行/**IdleHandler:在系统空闲时执行*/@Overridereturn!/**

2024-05-19 01:07:06 745

原创 Android彻底组件化方案实践方法!通用流行框架大全

Android技术迭代更新很快,各种新出的技术和名词也是层出不穷。不知从什么时候开始,总是会时不时听到AndroidX这个名词,这难道又是什么新出技术吗?相信有很多朋友也会存在这样的疑惑,那么今天我就来写一篇科普文章,向大家介绍AndroidX的前世今生。面试官: 说一下垃圾回收机制吧我: …可以通过强、弱引用计数结合方式解决引用计数的循环引用问题,实际上 Android 的智能指针就是这样实现的…智能指针并不是固定的 “

2024-05-19 01:06:30 288

原创 Android开发者出路在哪?年薪超过80万!_安卓开发的出路

这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

2024-05-19 01:05:54 243

原创 Android应用开发架构之MVI:原理、流程与实战指南_android vmi

MVI架构通过响应式数据流和单向数据流的特性,提供了一种可维护、可测试且具备响应式特性的架构模式。尽管学习曲线较陡,但在大型复杂应用开发中,MVI架构能够更好地管理状态和响应用户操作。通过合理设计状态模型和注意副作用管理,我们可以充分发挥MVI架构的优势,提升应用的可维护性和用户体验。思考问题在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。

2024-05-19 01:05:18 225

原创 Android-架构新组件---让天下没有难做的-App

如果我们的组件需要强绑定声明周期,那么只需要借助 Lifecycle 去监听生命周期的状态和事件即可,再也不用覆写各种回调方法了。下面将要讲到的 LiveData 和 ViewModel 都是 Lifecycle-Aware Components,它们都用到了 Lifecycle。

2024-05-19 00:59:23 906

原创 Android-MVVM-Databinding的原理、用法与封装_android viewbinding 只能看到impl类

比如我定义一个自定义View,在内部使用了自定义的属性,需要在 xml 中赋值,我们再自定义View的类中就可以通过 setXX 拿到这个赋值的属性了。init {//传统的方式添加//设置属性) {bean?//给静态的xml,赋值数据,赋值完成之后 include的布局也可以自动显示//动态的添加自定义View重点就是自定义的属性与事件处理了,一些喜欢在 xml 中写逻辑的都是基于此方式实现的,下面一起看看如何使用自定义属性:.load(url)

2024-05-19 00:58:47 1597

原创 Android---Fragment-的过去、现状与未来

最后这里放上我这段时间复习的资料,这个资料也是偶然一位朋友分享给我的,里面包含了腾讯、字节跳动、阿里、百度2019-2021面试真题解析,并且把每个技术点整理成了视频和PDF(知识脉络 + 诸多细节)。还有高级架构技术进阶脑图、高级进阶架构资料帮助大家学习提升进阶,也可以分享给身边好友一起学习。一起互勉~468502)]术进阶脑图、高级进阶架构资料** 帮助大家学习提升进阶,也可以分享给身边好友一起学习。[外链图片转存中…(img-0SIkcMA4-1716051468503)]

2024-05-19 00:58:10 651

原创 Android---Fragment-的过去、现状与未来(1)

现在随着短视频,抖音,快手的流行NDK模块开发也显得越发重要,需要这块人才的企业也越来越多,随之学习这块的人也变多了,音视频的开发,往往是比较难的,而这个比较难的技术就是NDK里面的技术。音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台,以前是windows系统,而现在则是移动系统了,移动系统中又是以Android占比绝大部分为前提,所以AndroidNDK技术已经是我们必备技能了。

2024-05-19 00:57:33 755

原创 Android NDK 直播推流与引流

音视频数据编码和推流在 Native 层实现,首先添加 faac , x264 , librtmp 第三方库到 AS 工程,然后初始化相关设置,基于生产者与消费者模式,将编码后的音视频数据,在生产者线程中打包 RTMPPacket 放入双向链表,在消费者线程中从链表中取 RTMPPacket ,通过 RTMP\_SendPacket 方法发送给服务器。经验的积累是需要一个时间过程的,这个过程谁也帮不了你,是需要你去经历的。**但是,如果你有意识地去培养,不断吸取前人的经验的话,还是可以缩短这个周期的。

2024-05-19 00:49:43 686

原创 Android IPC 之 AIDL 使用

💥 创建 .aidl 文件AIDL 使用一种简单的语法,你可以使用一个或多个可以接受参数和返回值的方法来声明一个接口。参数和返回值可以是任何类型,甚至是其他 AIDL 生成的接口。。每个 .aidl 文件必须定义一个接口,并且只需要接口声明和方法名。AIDL 支持以下数据类型:Java的所有原始类型(如 int )所有原始数组(如 int[])StringListMap如下:输入名称>finish创建aidl此时 在相同包名下创建.aidl 文件。/***/

2024-05-19 00:49:07 641

原创 Android Developer 入门FLutter 整理

将字体文件放入一个文件夹,并在文件中引用它,就和导入图片一样。开发包和插件。

2024-05-19 00:48:31 656

原创 Android Binder进程间通信机制

今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。最后在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。还有。

2024-05-19 00:47:55 620

原创 面试官:“会不会熟练使用Jetpack”--我:“------

它不仅可以解决 圆角 Drawable 复用的问题(你懂得),还可以实现 imageView 直接绑定 url 等需求,总之,没有它办不到的,只有你想不到的,DataBinding 的好处等着你挖掘。😉关于 DataBinding 的注意事项,以及屡试不爽的排坑技巧,可具体参考。

2024-05-18 23:41:47 756

原创 阿里P7Android高级工程师:全网最全-Flutter-与-React-Native-深入对比分析

而对于。

2024-05-18 23:41:11 820

原创 送给Android程序猿的大厂面试必备超全大纲,高级?No,最低是专家了

App启动流程,从点击桌面开始动态加载类加载器OSGIHttps请求慢的解决办法,DNS,携带数据,直接访问IPGC回收策略画出 Android 的大体架构图描述清点击 Android Studio 的 build 按钮后发生了什么大体说清一个应用程序安装到手机上时发生了什么;对 Dalvik、ART 虚拟机有基本的了解;Android 上的 Inter-Process-Communication 跨进程通信时如何工作的;App 是如何沙箱化,为什么要这么做;

2024-05-18 23:40:35 652

原创 复习2个月拿下美团Android岗offer,还有点不容易啊!!

由于Android程序员习惯了CV代码块,所以与Android中比较相关的稍微比较难的Java基础几乎都是一个门槛,像泛型,多线程,反射,JVM,高效 IO,注解,序列化等,都是被CV的对象,而程序员是不懂原理的,具体内容如图所示。在看完上面的面试题后,已经能应付很多问题了,但是好像还缺了点什么。准备好了之后就是疯狂投递简历了,各种知名的招聘网站都要去投,也没有什么挑选的说法(唯一可能就是尽量选互联网公司,还有就是像阿里腾讯这种大公司,咱是不敢投的),只要是招2年 Android的投就完事了。

2024-05-18 22:44:33 876

原创 十年沉淀,回头发觉我当年面试 “Android” 竟然这么难!

①:它是char *类型,它返回的是第一个参数的值,即一个字符的地址。②:第一个参数不需要指向数组的开始。如果想把一个字符串的一部分复制到另一个字符串的某个位置,该怎么办呢,显然strcpy()函数是满足不了这个功能的,strncpy()函数是为了弥补strcpy()函数不能检查目标字符串是否容纳下源字符串的不足而设定的一个函数。并且完全可以实现这个功能。//新的CRT函数//老的CRT函数上述代码,明显有缓冲区溢出的问题。使用strcpy_s函数则会抛出一个异常。

2024-05-18 22:43:57 692

原创 六年Android从迷茫到大牛的成长之路,不忘初心,方得始终

找到一套好的视频资料,紧跟大牛梳理好的知识框架进行学习。多练。(视频优势是互动感强,容易集中注意力)你不需要是天才,也不需要具备强悍的天赋,只要做到这两点,短期内成功的概率是非常高的。对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。以上就是总结的关于在面试的一些总结,希望对大家能有些帮助,除了这些面试中需要注意的问题,当然最重要的就是刷题了,这里放上我之前整理的一份超全的面试专题PDF还有。

2024-05-18 22:43:21 1436

原创 你想学的都在这里!程序员工作2年月薪12K,写给正在求职的安卓开发_在上海拿12k的程序员需要什么技能

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的14套腾讯、字节跳动、阿里、百度等2020面试真题解析,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。相信大多数从事Android开发的朋友们越来越发现,找工作越来越难了,面试的要求越来越高了除了基础扎实的java知识,数据结构算法,设计模式还要求会底层源码,NDK技术,性能调优,还有会些小程序和跨平台,比如说flutter,以思维脑图的方式展示在下图;

2024-05-18 22:42:44 355

原创 Android版本更新、热更新以及权限管理-郭军伟-专题视频课程

首先是感觉自己的基础还是不够吧,大厂好像都喜欢问这些底层原理。之前的准备只涉及了Java、Android、计网、数据结构与算法这些方面,面对面试官对其他基础课程的考察显得捉襟见肘。下一步还是要查漏补缺,进行针对性复习。最后的最后,那套资料这次一定要全部看完,是真的太全面了,各个知识点都涵盖了,几乎我面试遇到的所有问题的知识点这里面都有!希望大家不要犯和我一样的错误呀!!!一定要看完!![外链图片转存中…(img-6C2YbvzA-1716042987964)]

2024-05-18 22:36:50 376

原创 Android开发究竟该如何学习,使用指南_安卓开发文档怎么学习

感觉周围的人都在危机,甚至包括一些财富、地位都已经很高的人,仍然逃不过焦虑。似乎焦虑就是自然而然的,伴随着每个人的成长。焦虑多了,就开始危机了。一些感想:我想在这里写一些感想,可能对各年龄段的朋友都有一些帮助。其实很多人真到这个年龄,见识和能力都已经很厉害了,我帮忙总结一下。前段时间有好朋友和我说,感觉随着年龄增长,会有焦虑。因为年龄越大,会发现技能上面并没有比年轻人高太多,体力和精力可能还要差一些。这样的问题迟早大家都会遇到,无论是在职场中工作了很久,还是刚入职场,有些事实,业务应该早一些了解。

2024-05-18 22:36:14 553

原创 Android实现仿iOS图标下载View动画效果

那我们该怎么做才能做到年薪60万+呢,对于程序员来说,只有不断学习,不断提升自己的实力。我之前有篇文章提到过,感兴趣的可以看看,到底要学习哪些知识才能达到年薪60万+。通过职友集数据可以查看,以北京 Android 相关岗位为例,其中 【20k-30k】 薪酬的 Android 工程师,占到了整体从业者的 30.8%!北京 Android 工程师「工资收入水平 」今天重点内容是怎么去学,怎么提高自己的技术。1.合理安排时间2.找对好的系统的学习资料3.有老师带,可以随时解决问题。

2024-05-18 22:35:38 661

原创 Android实战——简单网络视频播放器

文章会持续更新的。绝对干货!!!Android进阶学习全套手册关于实战,我想每一个做开发的都有话要说,对于小白而言,缺乏实战经验是通病,那么除了在实际工作过程当中,我们如何去更了解实战方面的内容呢?实际上,我们很有必要去看一些实战相关的电子书。

2024-05-18 22:35:01 588

原创 Android Studio 如何关联源码(关联你想要的任何版本的源码)

打开jdk.table.xml文件你会发现有好多个API版本,他都有相关配置,这里只是截取了API 23 和API 24发现23指定了源码路径,而24没有指定源码路径。把23的那部分代码粘贴到24对应位置即可,这样你使用API 24编译时,查看的就是API 23的源码了修改以后的jdk.table.xml文件参考:===

2024-05-18 22:29:10 226

原创 Android socket 通信

/ 填好IPV4的IP地址和端口,服务端会提供,问服务端要// 下面三句照抄就行// 创建一个字节数组用来接收服务端发来的字节流,多大自己说了算// 写一个死循环,不停的接收服务端发来的数据// 将数据读入字节数组,返回长度// 如果服务端没发数据就return不在往下执行,继续读数据// 如果服务端发的数据不为空,则把字节数组转成字符串// 后边就可以调用数据解析的方法。

2024-05-18 22:28:34 783

原创 android include 控件详解

android 根据网络地址获取图片的byte[]类型数据在Android的开发中,我们知道布局文件可以让我们很方便的对各个UI控件进行位置安排跟属性设置,而在程序中可以直接取得控件并赋予对应操作功能。但是,如果是一个复杂的界面设计,我们把所有布局都放在一个文件中来描述,那这个文件会显得比较臃肿而结构则变得无法清晰了。为此,Android为我们提供了一个武功高强的高手,这个高手的特异功能就是能够将几个不同的布局文件整合在一起,它的名字叫include,听名字就知道是包含的意思,当然是包括多个布局。

2024-05-18 22:27:58 1530

原创 Android 12开发者预览版现已发布,包含众多亮点

1.搭建知识框架可不是说你整理好要学习的知识顺序,然后看一遍理解了能复制粘贴就够了,大多都是需要你自己读懂源码和原理,能自己手写出来的。2.学习的时候你一定要多看多练几遍,把知识才吃透,还要记笔记,这些很重要!最后你达到什么水平取决你消化了多少知识3.最终你的知识框架应该是一个完善的,兼顾广度和深度的技术体系。然后经过多次项目实战积累经验,你才能达到高级架构师的层次。你只需要按照在这个大的框架去填充自己,年薪40W一定不是终点,技术无止境应该是一个完善的,兼顾广度和深度的技术体系。

2024-05-18 22:27:21 624

空空如也

空空如也

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

TA关注的人

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