- 博客(145)
- 收藏
- 关注
原创 Android开发—浅谈人脸检测的简易实现
如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。最后针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、移动架构师、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》
2024-04-23 10:37:41
1018
原创 Android布局优化:include-、merge、ViewStub的详细总结
这次面试问的还是还是有难度的,要求当场写代码并且运行,也是很考察面试者写代码因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
2024-04-23 01:08:42
370
原创 Android利用Fmod仿QQ变声音效
***/extern “C”//创建对象//初始化//創建一個聲音//播放声音//是否播放//阻塞线程//释放资源到这里我们就可以简单的播放一个声音啦。可以看到我们在播放声音时传了一个Channel这里并没有进行赋值, 在函数里面会给选择一个闲置的Channel用来播放声音。我们保存Channel就是为了后面对声音的操作。怎样利用Fmod进行变声,Fmod提供了很多DSP。
2024-04-22 21:31:08
454
原创 Android主流三方库源码分析(五、深入理解RxJava源码)
找到一套好的视频资料,紧跟大牛梳理好的知识框架进行学习。多练。(视频优势是互动感强,容易集中注意力)你不需要是天才,也不需要具备强悍的天赋,只要做到这两点,短期内成功的概率是非常高的。对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。以上就是总结的关于在面试的一些总结,希望对大家能有些帮助,除了这些面试中需要注意的问题,当然最重要的就是刷题了,这里放上我之前整理的一份超全的面试专题PDF还有。
2024-04-22 20:08:19
268
原创 Android~自定义View和事件分发(2)
float 表示浮点值fraction 表示百分数enum 表示枚举值flag 表示位运算–>注:属性可以有多种类型attrs.xml文件declare-styleable标签定义及相关属性在布局文件中导入自定义的属性集。两种方法方法1 com.example 是应用的清单文件的包名方法2// to use。
2024-04-22 18:42:54
225
原创 Android-View--总结,总有几个你用得到
1.让 view 支持 wrap_content 属性,在onMeasure方法中针对 AT_MOST 模式做专门处理,否则 wrap_content 会和 match_parent 效果一样(继承ViewGroup也同样要在onMeasure中做这个判断处理)情况下要设置一个默认值,200 只是举个例子,最终的值需要计算得到刚好包裹内容的宽高值2.让 view 支持 padding(onDraw。
2024-04-22 17:03:40
281
原创 Android 面试题之ContentProvider使用+实例
1、创建一个类让其继承ContentProvider,并重载6个函数:用于对数据集的增删改查操作。:一般用来初始化底层数据集和建立数据连接等工作:用来返回指定Uri的MIME数据类型,若Uri是单条数据,则返回的MIME数据类型以vnd.Android.cursor.item开头;若Uri是多条数据,则返回的MIME数据类型以vnd.android.cursor.dir/开头。
2024-04-22 15:38:37
314
原创 Android 框架炼成 教你如何写组件间通信框架EventBus(1)
现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!到此,我们的EventBus就写好了,100多行代码,肯定没有EventBus健壮,主要目的还是学习人家的思想,经过自己写了这么个类,我相信对于EventBus的理解就更深刻了。
2024-04-22 12:59:47
879
原创 Android 开发技术——从 LiveData 迁移到 Kotlin 数据流
/ 从挂起函数和可变状态中加载数据init {如果要在 Kotlin 数据流中执行相同的操作,我们需要使用 (可变的) StateFlow (状态容器式可观察数据流):△ 使用可变数据存储器 (StateFlow) 暴露一次性操作的结果// 从挂起函数和可变状态中加载数据init {是的一个比较特殊的变种,而 SharedFlow 又是 Kotlin 数据流当中比较特殊的一种类型。StateFlow 与 LiveData 是最接近的,因为:它始终是有值的。它的值是唯一的。
2024-04-22 11:51:15
1002
原创 Android 安卓ADB命令远程调试 单个或多个设备调试
那我们该怎么做才能做到年薪60万+呢,对于程序员来说,只有不断学习,不断提升自己的实力。我之前有篇文章提到过,感兴趣的可以看看,到底要学习哪些知识才能达到年薪60万+。通过职友集数据可以查看,以北京 Android 相关岗位为例,其中 【20k-30k】 薪酬的 Android 工程师,占到了整体从业者的 30.8%!北京 Android 工程师「工资收入水平 」今天重点内容是怎么去学,怎么提高自己的技术。1.合理安排时间2.找对好的系统的学习资料3.有老师带,可以随时解决问题。
2024-04-22 10:26:46
828
原创 Android 动画:这是一份详细 & 清晰的 动画学习指南
简介类 &类,具体介绍如下Android 属性动画:这是一篇很详细的 属性动画 总结&攻略是否改变动画本身的属性视图动画:无改变动画的属性 因为视图动画在动画过程中仅对图像进行变换,从而达到了动画效果变换操作包括:平移、缩放、旋转和透明属性动画:改变了动画属性 因属性动画在动画过程中对动态改变了对象属性,从而达到了动画效果特别注意 使用视图动画时:无论动画结果在哪,该View的位置不变 & 响应区域都是在原地,不会根据结果而移动;而属性动画 则会通过改变属性 从而使动画移动。
2024-04-22 05:29:30
604
原创 Android View使用、自定义和性能优化
在非必要时,对View进行重绘。绘制一些不被用户所看到的的像素,也就是过度绘制。(被覆盖的地方)在绘制期间做了一些非必要的操作,导致内存资源的消耗。
2024-04-22 04:04:02
817
原创 Android Stido配置MultiDex解决65k问题(1)
当我们出去找工作,或者准备找工作的时候,我们一定要想,我面试的目标是什么,我自己的技术栈有哪些,近期能掌握的有哪些,我的哪些短板 ,列出来,有计划的去完成,别看前两天掘金一些大佬在驳来驳去 ,他们的观点是他们的,不要因为他们的观点,膨胀了自己,影响自己的学习节奏。基础很大程度决定你自己技术层次的厚度,你再熟练框架也好,也会比你便宜的,性价比高的替代,很现实的问题但也要有危机意识,当我们年级大了,有哪些亮点,与比我们经历更旺盛的年轻小工程师,竞争。、源码、笔记、视频。准备想说怎么样写简历,想象算了,我觉得,
2024-04-22 02:39:17
736
原创 Android mk 引用 jar 包、so 库、aar 包,系统签名(1)
希望大家能有一个好心态,想进什么样的公司要想清楚,并不一定是大公司,我选的也不是特大厂。当然如果你不知道选或是没有规划,那就选大公司!希望我们能先选好想去的公司再投或内推,而不是有一个公司要我我就去!还有就是不要害怕,也不要有压力,平常心对待就行,但准备要充足。最后希望大家都能拿到一份满意的 offer!如果目前有一份工作也请好好珍惜好好努力,找工作其实挺累挺辛苦的。这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。
2024-04-22 01:14:00
373
原创 Android Framework学习笔记(七)AMS全家桶
/1//2注释1处调用了SystemServiceManager的startService方法,方法的参数是ActivityManagerService.Lifecycle.class。注释2调用了ActivityManagerService的setSystemProcess方法。try {try {//1//2//3try {//4startService方法传入的参数是Lifecycle.class,Lifecycle继承自SystemService。
2024-04-21 23:49:39
999
原创 Android - 比较版本号大小、安装apk、获取设备唯一标识、获取设备mac地址
针对于上面的问题,我总结出了互联网公司Android程序员面试涉及到的绝大部分面试题及答案,并整理做成了文档,以及系统的进阶学习视频资料。(包括Java在Android开发中应用、APP框架知识体系、高级UI、全方位性能调优,NDK开发,音视频技术,人工智能技术,跨平台技术等技术资料),希望能帮助到你面试前的复习,且找到一个好的工作,也节省大家在网上搜索资料的时间来学习。
2024-04-21 22:24:37
859
原创 40 张图带你搞懂 TCP 和 UDP
我上面只是简单提到了一下 TIME-WAIT 状态和 2MSL 是啥,下面来聊一下这两个概念。MSL是 TCP 报文段可以存活或者驻留在网络中的最长时间。RFC 793 定义了 MSL 的时间是两分钟,但是具体的实现还要根据程序员来指定,一些实现采用了 30 秒的这个最大存活时间。那么为什么要等待2MSL呢?主要是因为两个理由为了保证最后一个响应能够到达服务器,因为在计算机网络中,最后一个 ACK 报文段可能会丢失,从而致使客户端一直处于LAST-ACK状态等待客户端响应。这时候服务器会重传一次。
2024-04-21 20:25:52
1051
原创 知乎万赞,值得反复刷的Android面试题
Looper通过prepare方法进行实例化,先从他的成员变量sThreadLocal中拿取,没有的话就new 一个Looper,然后放到sThreadLocal中缓存。每个线程只能创建一个Looper实例= null) {Looper通过loop方法开启循环队列,里面开启了死循环,没有msg时候会阻塞在ActivityThread的main方法中也就是Activity启动的时候,已经调用了Looper.prepareMainLopper()方法。
2024-04-21 17:06:32
646
原创 点九图学习与制作
简历首选内推方式,速度快,效率高啊!然后可以在拉钩,boss,脉脉,大街上看看。简历上写道熟悉什么技术就一定要去熟悉它,不然被问到不会很尴尬!做过什么项目,即使项目体量不大,但也一定要熟悉实现原理!不是你负责的部分,也可以看看同事是怎么实现的,换你来做你会怎么做?做过什么,会什么是广度问题,取决于项目内容。但做过什么,达到怎样一个境界,这是深度问题,和个人学习能力和解决问题的态度有关了。大公司看深度,小公司看广度。大公司面试你会的,小公司面试他们用到的你会不会,也就是岗位匹配度。面试过程一定要有礼貌!
2024-04-21 15:12:26
1174
原创 浅谈android应用的版本更新
的公司网站上 再放一个二维码就够了。剩下的事情交给推广人员就OK了。好,言归正传。有了上面的应用市场的介绍,所以 在自己的app应用中 添加 版本更新功能是非常必要的 ,这个功能做法很简单。app我们都知道本身是有版本号的 而且我们在程序中也可以获得应用的版本号,然后我们在我们自己后台服务器中添加一个版本号,这个版本号的初始值和app第一次发布时的版本号一致。然后再服务器端写一个接口,
2024-04-21 13:25:08
644
1
原创 最强技能android+flutter开发环境配置,抓耳挠腮不如看看这篇?
但是我这边好像是可以执行的,当然是在gitbash里,切到flutter目录下(cd ./flutter),而且执行flutter doctor会卡着不动;包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。3》、FLUTTER_STORAGE_BASE_URL的环境变量(https://storage.flutter-io.cn)3、flutter doctor (来下载flutter的支持资源,比如dart语言包、android的工具包等等)
2024-04-21 02:53:28
895
原创 把Flutter扩展到微信小程序端的探索
作为一名从事Android的开发者,很多人最近都在和我吐槽Android是不是快要凉了?而在我看来这正是市场成熟的表现,所有的市场都是温水煮青蛙,永远会淘汰掉不愿意学习改变,安于现状的那批人,希望所有的人能在大浪淘沙中留下来,因为对于市场的逐渐成熟,平凡并不是我们唯一的答案!《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
2024-04-20 22:02:25
791
原创 想掌握-Binder-机制?驱动核心源码详解和Binder超系统学习资源,想学不会都难!
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
2024-04-20 20:06:37
685
原创 微信小程序之登录页实例 —— 微信小程序实战系列(5)(1)
图片资源:name.pngkey.png账号密码按钮登录page{padding: 0;登录图片flex: none;表单内容flex: auto;输入框.line {按钮width: 80%;
2024-04-20 18:06:27
410
原创 带你一步步剖析Retrofit-源码解析:一款基于-OkHttp-实现的网络请求框架
null) {// 对每个注解通过 parseParameterAnnotation 进行解析continue;if (result!= null) {// 在协程的情况下对进行特殊处理try {而方法的代码太长了,这里就不再贴了,它对方法的每个注解都进行了独有的处理,并返回了对应的。可以发现,的主要作用就是完成对方法注解信息的解析,从而用于产生对应的Request。
2024-04-20 16:19:46
907
原创 字节跳动最新开源!超实用的UI轮子库,我只是个轮子搬运工
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。腾讯、字节跳动、阿里、百度等BAT大厂 2019-2021面试真题解析资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!大系统源码,还包括各种优秀的开源库。
2024-04-20 11:52:37
1039
原创 如何将Android Studio项目关联SVN并上传服务器(1)
方法/步骤首先,我们需要一台装有Android Studio和SVN的电脑,怎样安装请自行百度很简单哦,接下来我们选择Android Studio菜单栏中的“Preferences”菜单,会弹出设置菜单接下来选择“Version Control”选项,在右边窗口中,将本地项目与SVN关联,具体操作如下图,点击方框区域即可,选择SVN关联后,我们需要设置忽略文件,点击“Version Control”子目录的“Ignored Files”菜单,进行设置忽略文件。
2024-04-20 00:44:48
1012
原创 可能是目前最全的《Android面试题大全》(中高级)
*一个零基础的新人,我认为坚持是最最重要的。**我的很多朋友都找我来学习过,我也很用心的教他们,可是不到一个月就坚持不下来了。我认为他们坚持不下来有两点主要原因:他们打算入行不是因为兴趣,而是因为所谓的IT行业工资高,或者说完全对未来没有任何规划。刚开始学的时候确实很枯燥,这确实对你是个考验,所以说坚持下来也很不容易,但是如果你有兴趣就不会认为这是累,不会认为这很枯燥,总之还是贵在坚持。技术提升遇到瓶颈了?缺高级Android进阶视频学习提升自己吗?还有大量大厂面试题为你面试做准备!
2024-04-19 21:10:58
643
原创 别再说你不懂线程池——做个优雅的攻城狮(2)
在编程中经常会使用线程来异步处理任务,但是每个线程的创建和销毁都需要一定的开销。如果每次执行一个任务都需要开一个新线程去执行,则这些线程的创建和销毁将消耗大量的资源;并且线程都是“各自为政”的,很难对其进行控制,更何况有一堆的线程在执行。线程池为我们做的,就是线程创建之后为我们保留,当我们需要的时候直接拿来用,省去了重复创建销毁的过程。
2024-04-19 19:12:42
734
原创 公司主业务线转移后悔没拿-N+1-走,离职后面试收割小米,字节跳动Android研发岗Offer
1、结合招聘岗位,只讲重点。简历内容这么多,实际的你,更有很多很多可以描述的东西。但时间有限,没有面试官会听你说个没完。根据你求职的岗位,说重点即可。其实简历制作的原则,也是一样。只是自我介绍时间更短,内容更精华。2、有理有据,少说空话。如果你说“自己学习能力强”,这就是一句假大空的话。谁都可以说自己学习能力强。你如果真的在这方面有突出,就要举一个例子,比如是1个月从0到1考了什么证书等。3、有开头有结尾,有逻辑。开头问候,结尾总结。中间1、2、3条理清楚。4、特别提醒。
2024-04-19 17:03:21
953
原创 作为一个Android程序员,精通音视频开发,寒冬再冷也冻不到你(2)
创建一个AudioRecord对象初始化一个buffer开始录音创建一个数据流,一边从AudioRecord中读取声音数据到初始化的buffer,一边将buffer中数据导入数据流。关闭数据流停止录音1.AudioTrack 基本使用MODE_STATIC模式MODE_STREAM模式2.AudioTrack 详解音频流的类型Buffer分配和Frame的概念AudioTrack构造过程3. AudioTrack 与 MediaPlayer 的对比区别联系SoundPool。
2024-04-19 14:53:00
996
原创 互联网BAT大厂(百度、美团等)Android岗必问面试原题+解析(1)
这里我特地整理了一份《Android开发核心知识点笔记》,里面就包含了自定义View相关的内容除了这份笔记,还给大家分享Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。分享上面这些资源,希望可以帮助到大家提升进阶,如果你觉得还算有用的话,不妨把它们推荐给你的朋友~喜欢本文的话,给我点个小赞、评论区留言或者转发支持一下呗~
2024-04-19 12:42:37
566
原创 一些提高Android开发效率的工具&方法
| Ctrl + G | 查询方法被哪些类调用了(这个最快的方式其实是在方法上按住Ctrl然后单击鼠标左键) | Edit-Find-Find Usages || Ctrl + D | 删除光标所在行代码(可选中多行删除) | Editor Actions-Delete Line || Ctrl + X | 剪切光标所在行代码 | Edit-Cut || Alt + Shift + R | 修改变量名、文件名、资源名(需要先选中,引用的地方也会被一同修改掉) | Refactor-Rename || Ctr
2024-04-18 20:34:14
846
原创 【Android高级面试题】电子商务大三学生,怒刷3000道题逆袭拿到腾讯Offer?
二面前天晚上,因为想到二面可能是总监面,所以抓紧时间复习数据结构、算法还有网络方面的知识,因为就差这两块没有复习了,记得那天晚上躺在床上看到了一点多😖 ,第二天早早起床也是提前两个多小时出发,因为适逢上班高峰期,所以过了好多辆公车还是挤不上,好不容易来了一辆,挤上去又被挤下来了😒 ,好在最后终于上了公车。短信通知进入房间面试,二面的面试官有点胖胖,跟一面的瘦瘦面试官一看就不是同种类型的,似乎更难对付,暗自捏了一把汗。更加深厚的底子,同等实力看学校,同等水平看颜值(微笑脸,自己两者都沾不到边)。
2024-04-18 18:17:13
715
原创 [译] Android 的 Java 8 支持(2)
愿你有一天,真爱自己,善待自己。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!**如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)愿你有一天,真爱自己,善待自己。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
2024-04-18 14:07:38
243
原创 tomcat安装启动脚本的制作
有任何问题,欢迎广大网友一起来交流,分享高阶Android学习视频资料和面试资料包~偷偷说一句:群里高手如云,欢迎大家加群和大佬们一起交流讨论啊!《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!讨论啊![外链图片转存中…(img-85yBFqGD-1713412693036)]《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
2024-04-18 11:58:36
280
原创 ReactNative动画效果分析(仅从Android端源代码进行分析)
Animated适用于更细微的变化过程动画,可适配性更高。如下简单使用state = {render() {return (}}/>)// useNativeDriver: true 这里先注释掉,标记为注释@1}).start()通过查看AnimatedImplementation.js文件可以查看到动画源码,篇幅有限仅展示核心代码,本文RN版本为0.57.8.该函数定义在181行,不同RN版本对应的行数不一致,请以自己的版本为准。callback?): void {
2024-04-18 09:44:35
333
原创 NetStatusBus 简化了网络监听的流程,使代码更加简洁高效(1)
/ 尽可能早的进行这一步操作, 建议在 Application 中完成初始化操作@Override@OverridetvTips.setText(“已连接到 wifi”);注意事项订阅方法一个NetType参数,可以通过NetType的值来判断当前网络类型。中可以指定modeMode.AUTO这是默认值,任何网络状态发生变化,该类型订阅者都会被调用。//所有网络变化都会被调用,可以通过 NetType 来判断当前网络具体状态Mode.WIFI。
2024-04-18 07:50:19
594
原创 Kotlin学习(五):kotlin类详解进阶
【Android 详细知识点思维脑图(技能树)】我个人是做Android开发,已经有十来年了,目前在某创业公司任职CTO兼系统架构师。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。
2024-04-18 05:43:29
832
原创 JS中调android的方法(1)
很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从哪里入手去学习,对此我整理了一些资料如果你熟练掌握以下列出的知识点,相信将会大大增加你通过前两轮技术面试的几率!这些内容都供大家参考,互相学习。①「Android面试真题解析大全」PDF完整高清版+②「Android面试知识体系」学习思维导图压缩包《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
2024-04-18 04:13:47
964
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人