7 涂程

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 2w+

Android 性能优化五大误区和两大疑点!

近年来,社区充斥着关于 Android 性能优化的各种误区,本文本着误区终结者的精神,使用具体的性能检测工具,结合真实案例仔细分析这些情况,并对比它们的测试结果,也会聚焦 Android 开发者平时在编码过程的实际场景,用实际数据告诉你在实际编码之前请,一定要进行必要的性能检测。误区 1:Kotlin 比 Java 更消耗性能Google 云端硬盘团队目前已将其应用程序从 Java 全面替换为 Kotlin,重构范围涉及 170 多个文件,超过 16,000 行代码,包含 40 多个编译产物,在团队监控

2020-10-19 22:47:19

Android开发者需要掌握哪些技能?

想必许多人对资深工程师的作业和理解,太狭隘了。但以下也只是个人观点, 如果你有兴趣就继续看吧。首先下一个定义,什么样的人可以算是资深工程师?如果拿国内互联网行业相对为通用的标准,我认为至少应该是百度T7,阿里P8这样的职级,可能是技术Leader,也可能是团队中最核心的技术骨干。团队对这样一位工程师的要求,肯定不只是精通技术和经验丰富这么简单。编码和解BUG当然是其中非常重要的部分,但除此之外我认为,其具备的技能至少应该要包括以下几点:**关于团队:**对内建设研发梯队,提升团队内聚力和执行力,注重

2020-10-19 22:44:45

初级过剩,高级紧缺?面对这个局,程序员应该怎么破!

互联网竞争愈加激烈,尤其是对技术人员,最近我在知乎上刷到一个热度很高的话题:中国的程序员的数量是否已经饱和或者过剩?对此,有一个高赞回答:初级过剩,高级紧缺。这句话从一定程度上反映了开发行业的现状。有人说程序员是目前所有行业中门槛较低,但前期薪酬涨幅快,后期需要看个人造化的一个行业。因此在这个瞬息万变的时代,时刻保持对新技术的敏感性,不断储备新的知识库和技术栈,是每个技术人所需要重视的。今天我们就来聊聊Android开发岗位。你们觉得Android凉了吗?其实不管在任何行业,任何岗位,初级技术人才总

2020-10-15 22:30:55

5G时代音视频开发前景怎么样?音视频开发需要掌握哪些技术?

前言从历史来看,2G打开了了移动互联网天下,3G带来了即时通信,诞生了QQ 微信等巨头,4G 带来了短视频兴起。字节跳动等公司崛起。2 3 4G的出现促成了移动互联网10年繁荣。而5G的出现,也会促成至少10年音视频行业的繁荣。所以,做音视频研发的前景是广阔的,对于很早看出音视频前景的同学来说,已经开始通过各种渠道搜集相关的学习资料,及早的投入音视频研发的队伍。作为Android开发者的我们到底应不应该上音视频这条船?接下来一起分析下。行业现状核心竞争力:定义音视频是程序届的皇冠,掌握

2020-10-14 22:30:48

国产鸿蒙2.0预览分析

鸿蒙开发者官网:developer.harmonyos.com/cn/home鸿蒙应用开发文档:developer.harmonyos.com/cn/docs/doc…鸿蒙API文档:developer.harmonyos.com/cn/docs/doc…真正的鸿蒙SDK API在 ohos.jar ,可以结合 鸿蒙API文档 查看。开发语言有 Java,C/C++ ,JS 分别面向不同的开发场景,Java的开发体验跟Android基本一致,Android开发者可以无缝切入。Hap是鸿蒙的执

2020-10-13 22:35:01

Android深色模式适配原理分析

作者: Bug总柴背景从Android10(API 29)开始,在原有的主题适配的基础上,Google开始提供了Force Dark机制,在系统底层直接对颜色和图片进行转换处理,原生支持深色模式。深色模式可以节省电量、改善弱势及强光敏感用户的可视性,并能在环境亮度较暗的时候保护视力,更是夜间活跃用户的强烈需求。对深色模式的适配有利于提升用户口碑。深色模式在安卓上可以分为以下四种场景:强制深色模式强制浅色模式跟随系统低电量自动切换深色以下将介绍如何设置深色模式以及如何对深色模式进行适.

2020-10-13 22:20:11

作为字节跳动Android面试官,有些话我不得不说!

作者:浩二由于今年疫情的影响,有不少小伙伴年初跳槽的计划被搁置。虽然计划被打乱,但是这也给我们留出时间更好的准备面试。金九银十的秋招季到来,你准备好了嘛?在此之前我看了不少「面试官说」系列的文章,都是由点及面的技术性文章,但真正的面试并不至于此,长时间的准备也容易对目标产生偏移,今天推荐给大家一篇某大厂面试官的文章,看看大厂的面试官是怎么想的。头条面试官:“我也知道尽管很多人都讨厌” 面试造航母,工作螺丝钉 “的局面,但又不得不做准备,毕竟从大海筛选一个合适的人太难了” 确实大环境如此!正文开.

2020-10-12 22:43:53

渣院二本Android开发,面试差点被这些基础题绊了跟头

作者:面瘫少女小方引言本人渣院二本毕业,从事Android开发3年,因上家公司业绩下滑影响,许多同事开始纷纷离职,我也是其中之一。我离职还有一个原因就是想尝试挑战不同的Android岗位,于是就开始我的面试之旅,前前后后面试了十几家。本从前期准备到所有面试结束,花费了差不多3个月的时间。真可谓“面试造航母,工作拧螺丝”,面试过程真的很累很辛苦。下面是我的其中一家的面经:一面1、手写算法题。猫扑素数;1到n,求1的个数;单词反转;2、Activity的加载模式。standard,sing.

2020-10-12 22:42:07

Android低版本上APP首次启动时间减少80%(二)

作者:字节跳动技术团队抖音自研的 BoostMultiDex 方案,可以大幅改善 Android 低版本(4.4 及其以下)手机更新或安装后首次冷启动时间。并且,不同于目前业界所有优化方案,我们是从 Android Dalvik 虚拟机底层机制入手,从根本上解决了安装后首次执行 MultiDex 耗时过长问题。我们上一篇文章中已经介绍了 BoostMultiDex 的核心优化思路,即如何避免 ODEX,直接加载原始 DEX 完成启动。然而用这个方法加载 DEX 文件,相比于 ODEX 优化后的方式.

2020-10-10 22:23:26

Android低版本上APP首次启动时间减少80%(一)

作者:字节跳动技术团队我们知道,Android 低版本(4.X 及以下,SDK < 21)的设备,采用的 Java 运行环境是 Dalvik 虚拟机。它相比于高版本,最大的问题就是在安装或者升级更新之后,首次冷启动的耗时漫长。这常常需要花费几十秒甚至几分钟,用户不得不面对一片黑屏,熬过这段时间才能正常使用 APP。这是非常影响用户的使用体验的。我们从线上数据也可以发现,Android 4.X 及以下机型,其新增用户也占了一定的比例,但留存用户数相比新增则要少非常多。尤其在海外,像东南亚以及拉.

2020-10-10 22:22:21

RecyclerView源码解析

基础RecyclerView相对于以前的ListView来说,更加灵活。其所拆分出来的各个类的分工更加明确,很好地体现了我们经常所说的职责单一原则。我们这里先对其中使用到的类进行一下讲解LayoutManager:RecyclerView的布局管理者,主要负责对于RecyclerView子View的测量和布局工作。RecyclerView.Recycler:缓存的核心类。RecyclerView强大的缓存能力都是基于这个类来实现的。是缓存的核心工具类。Adapter:Adapter的基类。负责将V

2020-10-09 22:32:13

人们都说三十而立,是否感觉Android开发的自己一事无成?

最近在网上看见很多朋友问的比较多,说自己都快三十岁了。工作不顺利,生活不是很如意,薪资收入一般,每每一想到快三十了,自己还是一事无成,自己比较焦虑。不知道该如何是好?可不是嘛?人们常说80后忙着挣钱,00后忙着谈恋爱分手,那么90后呢?苦逼的90后即忙着挣钱又忙着谈恋爱以前 90 后都意味着年轻人,现在最早的一批 90 后,掐指一算都 30 岁了,90 后已不再年轻了。古人说,三十而立,在很多人看来,30 岁是个坎,30 岁如果没有自己的一份事业,就感觉人生活得很失败。说道事业,我记得有句话说得

2020-10-09 18:00:31

『Android 技能篇』优雅的转场动画之 Transition

前言先直接上效果图:相信大家在平常开发也会遇到类似的转场动画,如果想要要实现上图的效果有哪些方式呢?首先分析一下转场过程,我们把起始View分别定义为startView和endView。startView 为常见的列表布局,左侧头像和右侧为文本介绍;endView 为详情页面,置顶的大图和详细的文本介绍。不难发现,这些元素都是对应关系,只不过起始状态的基本属性不同:头像,位置和大小以及 scaleType 发生变化背景,颜色、位置和大小发生变化名称,字体大小、颜色和位置发生变化描述,字体大小

2020-10-09 17:54:29

2020年Android面试笔试总结(Android精心整理篇)

Activity中的几种启动模式activity的几种启动模式是android中常考的知识点,一般会考察有哪几种启动模式,以及每种启动模式在什么场景下使用:standard:这个是android默认的Activity启动模式,每启动一个Activity都会被实例化一个Activity,并且新创建的Activity在堆栈中会在栈顶。singleTop:如果当前要启动的Activity就是在栈顶的位置,那么此时就会复用该Activity,并且不会重走onCreate方法,会直接它的onNewIntent.

2020-09-29 22:13:04

谈谈对Android中Zygote的理解

Zygote是什么?在Android中,负责孵化新进程的这个进程叫做Zygote,安卓上其他的应用进程都是由它孵化的。众所周知,安卓是Linux内核,安卓系统上运行的一切程序都是放在Dalvik虚拟机上的,Zygote也不例外,事实上,它是安卓运行的第一个Dalvik虚拟机进程。既然Zygote负责孵化其他的安卓进程,那么它自己是由谁孵化的呢?既然Android是基于Linux内核,那么Zygote当然就是Linux内核启动的用户级进程Init创建的了。Zygote的作用是什么?对于Zygote的作用

2020-09-29 15:20:33

深入理解 Android 内核设计思想(二)内存管理

对冗余挑拣重点,对重点深入补充,输出结构清晰的精简版操作系统内存管理基础1.虚拟内存2.内存分配与回收3.mmap4.Copy on WriteAndroid 内存管理1.Low Memory Killer2.Ashmem 驱动3.MemoryFile 原理总结操作系统内存管理基础不论什么操作系统,内存管理都是绝对的重点和难点。内存管理旨在为系统中所有 Task 提供稳定可靠的内存分配、释放和保护机制。你可能会疑问,学习 Android 系统有必要了解 Linux Kerne

2020-09-28 22:42:17

深入理解 Android 内核设计思想(一)进程间通信与同步机制

对冗余挑拣重点,对重点深入补充以更易理解且简洁的方式记录呈现不是杂乱无章的笔记,而是原书的精简版…1. 进程间通信的经典实现1.共享内存2.管道3.UNIX Domain Socket4.Remote Procedure Calls2. 同步机制的经典实现1.信号量2.Mutex3.管程4.Linux Futex3. Android 中的进程间同步机制1.进程间同步 Mutex2.条件判断 Condition3.加解锁的自动化操作 Autolock4.Mutex+Auto

2020-09-28 22:39:50

Android开发者们该如何面对中年危机?

先来聊一下这个问题的背景吧。前两天有小伙伴问到Z哥这个问题。其实坦白说,我刚做开始程序员的前两年,行业中就已经充斥着这样担忧了,有说中年危机的,也有说35岁危机的。其实Z哥我当时也担忧的,觉得自己兴致勃勃选择投入一生的职业生涯,竟然。。。竟然是一条短跑赛道。不过没几天这个影响就消失了。因为那会实在每天排的太满了,除了工作就是学习,也没时间多想。就觉得反正还早~,到时候再说,搞不好提前发大财退休了呢(请容忍我的年少无知)。不过,经过了这7年的工作之后,我对这个问题有了一些新的认识。回头看过去,找经

2020-09-28 22:03:28

哔哩哔哩我来了,see goodbye 马总!!!

作者:阿强2020年7月,我从工作两年的腾讯离职了。离职前同事帮我弄到了B站的内推,经过3面后,9月4号我拿着26K的offer顺利的进入B站。作为一名资深技术宅,国漫和日番一直让我爱不释手。平时有了时间也不太爱出门,基本都是躺着用B站刷番,而这次去B站算是了却我之前的心愿。一、面试第一面8月10日,跟B站的HR进行了第一次通话,了解完公司的业务、技术、团队规模等情况后、就跟HR约了一面,面试时间是在11号下午,11号,我到了B站在杨浦的国正中心3号楼,在一楼大厅的机器人旁边等HR下来接我。然.

2020-09-27 22:34:01

Android Jetpack 之 Paging3的一些踩坑记录

前言使用时多多少少遇到到了一些问题,去翻了源码发现 Paging3 的实现涉及到挺多协程的内容,但是自己对协程也是一知半解,所以文中的看法以及解决方案可能存在错误或不合理的地方。简单使用写这篇文章的时候虽然网上的使用教程寥寥无几,但是仅有的几篇讲的都很详细。结合官方的文档 Paging 3 library overview 自己再仔细琢磨一下使用起来基本没什么问题,这里就不再多做赘述。注:关于paging3版本的问题,目前网上使用教程好像都是3.0.0-alpha02这个版本,这个版本存在一个bug

2020-09-26 21:42:08

查看更多

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