7 涂程

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 2w+

Android 网络框架之OkHttp源码解析

作者:Amter前言:OkHttp框架是Android的网络请求框架,无数的项目都在使用着这个框架,重要性不言而喻;本文会将OKHTTP的源码进行拆解,每个部分来单独学习,由简入深,循序渐进,篇幅较长,建议收藏,慢慢观看,如果觉得内容不错的话,点赞关注来一波,感谢!源码基于okhttp3 java版本:3.14.9OkHttp3的简单使用:public void request() { String url = "http://wwww.baidu.com";.

2020-09-19 21:46:41

渣本安卓客户端Android秋招总结(重排了字号)

作者:吴宇来晚了来晚了,整理一下去年秋招面经,一直想想整理因之前太忙了,所以拖到现在才发,希望对大家有所帮助,能在金九银十的时候连斩Offer。一、学习经历比较菜,辣鸡本科生,2018年十一月份开始全面一些的接触安卓,学了第一行代码,面试后进入某公司某部门,正好比较缺人给我这零基础的人过了,十二月份去实习,断断续续中间回学校考试有请假,大概有效实习时间是6个月吧,边学边做的需求,到7月底学校有事离开的。后来回来又干到9月。对于安卓的学习主要经历就是在公司学的这半年多,感谢能有这样的机会,lead.

2020-09-18 22:37:02

Kotlin 协程和 Android SQLite API 中的线程模型

作者:Android_开发者从 Room 2.1 版本之后,开发者们可以通过定义 suspend DAO 函数来使用 Kotlin 协程了。协程在处理异步操作时表现得异常优秀,它可以让您用顺序自然的代码处理诸如操作数据库一类的耗时操作,而不再需要专门在线程之间来回切换任务、处理结果或错误了。Room 支持协程后,可以在数据库操作中使用由并发作用域、生命周期、嵌套所带来的一些便利。在我们为 Room 添加协程的支持期间,我们遇到并解决了在协程模型和 Android SQL API 中没想到的一些问题。.

2020-09-17 22:29:07

35岁没有晋级的同事都去哪了?

35岁的职场人活该被淘汰吗?相信大家都知道35岁的中年危机这一个问题,那我们该如何去应对和过渡完这一个中年危机呢?前段时间,某公司去大学校园里面校招,HR兴致勃勃地宣传公司年轻化很阳光, 结构有人问“那你们公司大龄的员工都去哪了呢?”去哪了?咱也不敢说,咱也不敢问但是从上方这个问题映射出的社会问题便是**“中年危机”**找工作时,公司单位普遍要求35岁以下,那35岁以上的人都干什么去了?35岁中年危机真的存在吗?事件:小L从事互联网IT行业已经10年了,今年35岁,三月份裸辞后到.

2020-09-17 21:20:41

Jetpack 之 LifeCycle 组件使用详解

一、LifeCycle 简介LifeCycle 是一个可以感知宿主生命周期变化的组件。常见的宿主包括 Activity/Fragment、Service 和 Application。LifeCycle 会持有宿主的生命周期状态的信息,当宿主生命周期发生变化时,会通知监听宿主的观察者。LifeCycle 的出现主要是为了解决: 系统组件的生命周期与普通组件之间的耦合性。系统组件指:Activity/Fragment、Service 和 Application。普通组件指:将代码按照功能或者作用封装成

2020-09-16 17:33:25

你真的理解Binder“一次拷贝“吗?

前言谈到到Binder相对于其他传统进程间通信方式的优点的时候,我们总会说Binder只需要做“一次拷贝”就行了,而其他传统方式需要“两次拷贝”。这确实是Binder的优点,但再进一步思考就会碰到两个问题:这所谓的“一次拷贝”到底是发生在什么地方?拷贝的到底是什么东西?而很多介绍Binder的文章会列出“一次拷贝”是其优点,但对上面的两个问题要么一笔带过,要么就是回答的并不完全正确,造成一些理解上的混乱。本篇文章意在探索这两个问题的正确答案,所以需要读者对Binder驱动的工作过程和Binder驱

2020-09-15 22:16:22

阿里两轮面试都被问了组件化问题,你会嘛?

阿里4轮面试,两轮面试都被问到组件化问题,面试的点各不相同,有组件化架构设计、插件化框架设计、路由架构设计、热修复设计等问题,但是最终都是殊途同归,所有的问题都汇集在这,如何对手机淘宝组架构设计?组件化如何实现,组件化与插件化的差别在 哪里,该怎么选型**面试官:**组件化如何实现,组件化与插件化的差别在哪里,该怎么选型**心理分析:**面试官从架构层次 了解求职者是否用过 模块化 组件 化 和插件化,在过去经验有没有运用过这些技术到项目中,这道 题属于一个连环炮。求职者该格外小心**求职者:

2020-09-15 20:58:31

进阶之路 | 奇妙的四大组件之旅

学习清单:Activity的工作过程Service的工作过程Service的启动过程Service的绑定过程BroadcastReceiver的工作过程BroadcastReceiver的注册过程BroadcastReceiver的发送和接收过程ContentProvider的工作过程一.为什么要学习四大组件?何为“四大”:ActivityServiceBroadcastReceiverContentProvider谈到四大组件,相信在座各位都再

2020-09-14 22:33:56

面试斩获猫眼Android岗Offer,我是怎样准备Android技术面的知否?

作者:哈登前言本篇文章给大家分享一下笔者面试的一些感受和经验。笔者从前期准备到所有面试结束,花费了差不多3个月的时间。真可谓“面试造航母,工作拧螺丝”,面试过程真的很累很辛苦。笔者面了很多公司,最终拿下了猫眼Offer;有面试交流群小伙伴问我是怎么准备面试的,我也想谈谈我最近的一些想法和计划,大家一起讨论。因此写下了这篇文章。整体分为以下两个方面:自我介绍 & 项目经验知识储备自我介绍1、结合招聘岗位,只讲重点。简历内容这么多,实际的你,更有很多很多可以描述的东西。但时.

2020-09-14 21:34:27

进阶之路 | 奇妙的 IPC 之旅

学习清单:IPC的基础概念 多进程和多线程的概念 Android中的序列化机制和Binder Android中的IPC方式 Binder连接池的概念及运用 各种IPC的优缺点一.为什么要学习IPC?IPC是Inter-Process Communication的缩写,含义是进程间通信,是指两个进程之间进行数据交换的过程。有些读者可能疑惑: “那什么是进程呢?什么是线程呢?多进程和多线程有什么区别呢?”进程:是资源分配的最小单位,一般指一个执行单元,在PC和移动设备上指一个程序

2020-09-13 21:38:24

鸿蒙2.0正式开源,华为重磅押注开发者生态

作者:稀土君从第一轮制裁到第二轮制裁,华为的众多产品和业务都被笼罩在美国制裁的阴影之下,难以完成新品的生产和交付。在这种前所未有的外部危机下,华为发布了自研系统鸿蒙系统(HarmonyOS),同时带来基于该系统的华为移动服务HMS。但是仓促之推出的产品,难免存在不少有待完善的地方,鸿蒙系统也被众多网友戏称为“PPT系统”。但是这场特殊背景下的自救之路还远远没结束,怀带众多期盼的新的鸿蒙系统2.0已在松山湖畔悄悄登场。HarmonyOS 2.0问世,开源版本已开放下载2019年,华为创造性地推出了.

2020-09-12 22:02:03

Android Jetpack组件之App Startup

写在前面在看Jetpack的官网时,发现官方在Jetpack中新加了一个App Startup组件,查了一下是前几天和Hilt、Paging3一起更新的,其他的组件还没看。官方网址: https://developer.android.com/topic/libraries/app-startup要选择语言为ENGLISH哦,中文版暂时还没有这个页面。为什么需要App Startup呢?在我们实际的开发工作中,一些第三方库需要在App启动的时候初始化并不少见,比如WorkManager和Life.

2020-09-11 22:30:53

JetPack现在都成了Android开发必备技能嘛?

一、Android JetPack——Google多么痛的领悟最近好几个小伙伴问我什么是Android JetPack,听说这个包好像有点牛,帅哥你会不?我心想什么鬼!Android JetPack这货不是一个库,是一整套的库,是一种信仰一种态度好么。从前,Android开发者基本都是被放养的。生态基本全靠自建,代表有Square全家桶,Glide,Google自己也肯定是出力的,但是并没有明确Android开发的几个大方向,所以安卓的开发生态一直是百花齐放百家争鸣。带来的问题就是经常出现包引用莫名报错

2020-09-11 22:28:53

回想自己从三流小公司到一线大厂的经历,你熬出头了嘛? 淦!!!

我想,没有一个程序员能够一步登天,一下子达到很高的高度,有些路是我们必须要走的,有些阶段是我们必须要经历的。有入门,才有进阶,才有更上一层楼。别看我现在在大厂,但是我也待过小到不能小的小公司,也许你会感兴趣,那么不妨听我说说,我在学习编程路上待过的公司吧。不到20人的小公司我在大学的时候学的不是计算机,上的课程基本上和计算机也没太大关系,但是我从小还是比较喜欢捣鼓电脑的,不瞒你说,以打游戏为主,修电脑为辅。兴趣使然,于是大学期间想要自学编程,但是无从入手,于是让家里人介绍了去了当地一个小公司学习

2020-09-10 21:54:55

Android热修复技术选择和原理分析

背景热修复就是通过下发补丁包,让已安装的客户端动态更新,用户不用重新安装APP,就能够修复软件缺陷。热修复技术对比1.公司角度大致可以分为阿里系和腾讯系和其他,如下:阿里系Dexposed 开源,实时修复AndFix 开源,实时生效HotFix 阿里百川,未开源,免费、实时修复Sophix 未开源,商业收费,实时生效/冷启动修复HotFix是AndFix的优化版本,Sophix是HotFix的优化版本。目前阿里系主推是Sophix。腾讯系Qzone超级补丁 QQ空间,未开源,冷启动

2020-09-10 22:27:58

Android岗BAT、网易、京东大厂试水面经,有幸拿到京东offer

前言本人在渣院二本毕业,毕业了3年,之前在一家小型的创业公司,本来是计划今年的三四月份找一份有挑战性的工作的,结果中间由于某些原因耽误了,在今年8月份的时候,向以下公司投递了简历:百度、腾讯、阿里巴巴、网易、京东,其中腾讯和阿里巴巴把我笔试给挂了,其余公司的笔试过了。阿里巴巴把我笔试挂了我感觉很坦然,因为笔试题做得实在不好,而腾讯把我的笔试挂了我就觉得很奇怪,当时大部分题目都做得还可以,只有一道算法题没做出来,后来就没过。不过都是往事了,有空把笔试经历总结一下,下面开始把面试经历好好回忆一下,因为已经过.

2020-09-09 22:40:34

深入Android系统 Binder-4-驱动

Binder驱动Binder 驱动是整个Binder框架的核心,这部分就会详细介绍消息协议、内存共享机制、对象传递的具体细节了应用层和驱动的消息协议Binder应用层的IPCThreadState和Binder驱动之间通过ioctl来传递数据,因此,定义了一些ioctl命令:命令说明数据格式BIDNER_WRITE_READ向驱动读取和写入数据,既可以单独读写,也可以同时读写。通过传入的数据中有无读写数据来控制struct binder_write_readBIN

2020-09-09 22:38:05

Android声明式UI框架 Litho 初探——基础使用

初衷Litho作为一个高性能的UI引擎,学习曲线还是比较高的,但是在国内能用的资料非常少(大部分都是相互复制的”Hello Word“教程),国外除了Litho自己的文档外,也没有太多教程。这几篇教程也是我边学边写。如果有那里理解不到位的地方,欢迎指正。Litho 是什么Litho是一个用于在Android上构建高效用户界面(UI)的声明性框架。但不同以往的UI框架,它的底层是Yoga,它通过将不需要交互的UI转换为Drawable来渲染视图,通过Yoga来完成组件布局的异步或同步(可根据场景定

2020-09-09 20:43:24

Android性能优化之UI卡顿优化实例分析

网络上有许多关于UI卡顿优化的解析,但大部分都是简单的原理介绍,例子都比较简单,往往是为了验证UI卡顿而硬造的,不能在实际场景中应用。本文结合大图加载,与UI卡顿优化,向大家介绍UI卡顿优化的基本原理。UI卡顿的根本原因是UI线程无法在16ms内完成UI绘制。 下面以android大图加载为例,结合内存分析,systrace,TraceView等分析UI卡顿优化.两种大图加载方式对比方法1Android 高清加载巨图方案 拒绝压缩图片 使用BitmapRegionDecoder分区域加载

2020-09-09 20:37:40

深入Android系统 Binder-3-原理

Binder的实现原理涉及到原理源码肯定是少不了的,9.0 binder 相关的源码分为三部分:Java:frameworks/base/core/java/android/os/Binder.javanative:frameworks/native/libs/binder/driver:common/drivers/android/binder.c还有一点需要明确的是:用户进程:针对内核空间或者binder驱动来说的,这里指的是向binder驱动发送消息的进程客户进程:针对binder

2020-09-08 22:38:12

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享精英
    分享精英
    成功上传11个资源即可获取