精华内容
下载资源
问答
  • 安卓app启动速度优化

    2018-09-08 21:41:25
    随着app的迭代功能也会越来越多,一些功能难免要启动时初始化,这样会使应用的启动速度变慢,提升启动速度迫在眉睫,如果不是非必须应用,很有可能分分钟被卸载,优化启动速度这里需要用到一个theme属性 ​&lt...

    随着app的迭代功能也会越来越多,一些功能难免要启动时初始化,这样会使应用的启动速度变慢,提升启动速度迫在眉睫,如果不是非必须应用,很有可能分分钟被卸载,优化启动速度这里需要用到一个theme属性

    ​<item name="android:windowIsTranslucent">false</item>

    设置窗口是否半透明

    <item name="android:windowBackground">@mipmap/launch</item>

    在设置一下窗口的背景 设置为app的启动图片 这样在启动应用的第一时间就会显示启动页的背景图片就会和启动页无缝链接,这个时候如果启动页设置了等待时长,可能会使应用启动页显示时间过长,手机配置不一样从启动到启动页显示出来的时长也不尽相同,如果手机配置比较差的话,启动页显示时间还是过长,继续对启动页进行优化。

    //Application
    
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        //记录Application初始化时间
        SPUtil.putLong("application_attach_time", System.currentTimeMillis());
    }
    //启动界面
    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
    
          long appAttachTime = SPUtil.getLong("application_attach_time");
          //从application到入口Acitity的时间
          long diffTime = System.currentTimeMillis() - appAttachTime;
    
    
         //假设启动页停留2s 所以启动页展示的时间为 2000ms - diffTime.
    }

    这样的话在不同配置的手机上启动页显示的时间就基本一致。

    注:在使用windowIsTranslucent为false时,activity的转场动画就会失效,侧滑返回也没有达到应有的效果,这是可以单独设置启动页的theme

    展开全文
  • 前言 我最近在筹备Android面试的相关文章,我发现,Framework是一个十分重要的点,被不少大厂所看重。 如图,这是我们的一个技术交流群里面的对话↓↓↓ 前阵子我写的Android技术文里面,关于Framework这个知识点的...

    前言

    我最近在筹备Android面试的相关文章,我发现,Framework是一个十分重要的点,被不少大厂所看重。

    如图,这是我们的一个技术交流群里面的对话↓↓↓

    前阵子我写的Android技术文里面,关于Framework这个知识点的文阅读量破千,但是,有很多朋友私信我说那篇文写的不够详细,文章深度不够,学不到什么东西。

    感受到了大家对这个知识点的热情,我最近也一直在留意这个方面的知识。

    不久前,一个腾讯的朋友说他们那里有一个T4的大佬每天熬夜到凌晨,肝了半个月,把Android Framework 内核解析精编成了452页的PDF!更牛掰的是——现在这份资料开放下载了!

    想不到,想睡觉的时候正好有人送来了枕头,得知这个内部信息的我赶紧打开电脑,飞速的敲起了键盘,把这个消息告诉大家:

    你们要的干货来了!!!

    第一章 为什么Flutter是跨平台开发的终极之选

    跨平台开发是当下最受欢迎、应用最广泛的框架之一。能实现跨平台开发的框架也五花八门,让人眼花缭乱。

    最流行的跨平台框架有 Xamarin、PhoneGap、Ionic、Titanium、Monaca、Sencha、jQuery Mobile、React native、Flutter 等等。但这些工具的表现也是高低有别,各有千秋。

    在这些流行的框架中,有很多也已经消失在了历史的长河中被人渐渐遗忘了。但 React native 和 Flutter 这俩框架地位依旧坚挺,备受欢迎。

    因为它们俩分别由最强大的科技巨头 Facebook 和谷歌背书支持。

    第二章 在Windows上搭建Flutter开发环境

    • 使用镜像
    • 系统要求
    • 获取Flutter SDK
    • 编辑器设置
    • Android设置
    • 起步: 配置编辑器
    • 起步: 体验
    • 体验热重载

    最后

    我见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了7、8年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。

    其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。

    不断奔跑,你就知道学习的意义所在!

    以上进阶BATJ大厂学习资料可以免费分享给大家,需要完整版的朋友,【点这里可以看到全部内容】。

    A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)】。**

    展开全文
  • 其实如果你技术深度足够,大必不用为就业而忧愁。每个行业何尝不是这样,最开始的风口,到慢慢的成熟。Android初级在2020年的日子里风光不再, 靠会四大组件就能够获取到满意薪资的时代一去不复返。...

    其实如果你技术深度足够,大必不用为就业而忧愁。每个行业何尝不是这样,最开始的风口,到慢慢的成熟。Android初级在2020年的日子里风光不再, 靠会四大组件就能够获取到满意薪资的时代一去不复返。**经过一波一波的淘汰与洗牌,剩下的都是技术的金子。就像大浪褪去,裸泳的会慢慢上岸。**而真正坚持下来的一定会取得不错成绩。毕竟Android市场是如此之大。从Android高级的蓬勃的就业岗位需求来看,能坚信我们每一位Android开发者的梦想 。

    本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注

    今天有幸给大家分享谷歌大神熬夜整理的三方库源码笔记 EventBus源码详解,

    一、注册

    EventBus.java

    SubscriberMethodFinder.java

    SubscriberMethodFinder.FindState

    EventBus.java

    二、发送消息

    消息的执行策略

    发送非黏性消息

    发送黏性消息

    移除黏性事件

    三、解除注册

    四、注解处理器

    五、一些坑

    奇怪的继承关系

    移除黏性消息

    由于篇幅受限,只能截图展示部分内容,有需要这份三方库源码笔记 EventBus源码详解的朋友可以点击GitHub免费下载

    更多内容截图:

    面试宝典

    面试必问知识点、BATJ历年历年面试真题+解析:点击【答案】即可领取

    学习经验总结

    (一)调整好心态
    心态是一个人能否成功的关键,如果不调整好自己的心态,是很难静下心来学习的,尤其是现在这么浮躁的社会,大部分的程序员的现状就是三点一线,感觉很累,一些大龄的程序员更多的会感到焦虑,而且随着年龄的增长,这种焦虑感会越来越强烈,那么唯一的解决办法就是调整好自己的心态,要做到自信、年轻、勤奋。这样的调整,一方面对自己学习有帮助,另一方面让自己应对面试更从容,更顺利。

    (二)时间挤一挤,制定好计划
    一旦下定决心要提升自己,那么再忙的情况下也要每天挤一挤时间,切记不可“两天打渔三天晒网”。另外,制定好学习计划也是很有必要的,有逻辑有条理的复习,先查漏补缺,然后再系统复习,这样才能够做到事半功倍,效果才会立竿见影。

    (三)不断学习技术知识,更新自己的知识储备
    的复习,先查漏补缺,然后再系统复习,这样才能够做到事半功倍,效果才会立竿见影。

    (三)不断学习技术知识,更新自己的知识储备
    对于一名程序员来说,技术知识方面是非常重要的,可以说是重中之重。**要面试大厂,自己的知识储备一定要非常丰富,若缺胳膊少腿,别说在实际工作当中,光是面试这一关就过不了。**对于技术方面,首先基础知识一定要扎实,包括自己方向的语言基础、计算机基础、算法以及编程等等。

    展开全文
  • 除了惊叹大家超强的信息接收能力和处理速度外,更进一步我还发现,连拍马屁都是有队形的,一级部门leader发消息,几个二级部门leader跟上,后面各组长跟上,最后是大家的狂欢,让我一度怀疑拍马屁的速度就决定了...

    金九银十过后各大网络平台都是各种面经分享,包括已收offer,或面试失败的都有,相信大部分人都拿到了自己心仪的大厂offer,不过也有没有少数没能进到自己内心向往的大厂而懊恼的,那么到底如何才能进大厂,该准备些什么才能进大厂?

    此时字节总监有话说,针对面试字节跳动,大佬总结了一些面试点,相信在其它面试中也能带来不少的帮助,今天小编把它整理好了,希望可以帮到更多的小伙伴。

    学会深入思考,总结沉淀

    我想说的第一条就是要学会深入思考,总结沉淀,这是我觉得最重要也是最有意义的一件事。

    ‌先来说深入思考。在程序员这个圈子里,常能听到一些言论:我这个工作一点技术含量都没有,每天就CRUD,再写写if-else,这TM能让我学到什么东西?

    抛开一部分调侃和戏谑的论调不谈,这可能确实是一部分同学的真实想法,至少曾经的我,就这么认为过。

    后来随着工作经验的积累,加上和一些高level的同学交流探讨之后,我发现这个想法其实是非常错误的。之所以出现没什么可学的这样的看法,基本上是思维懒惰的结果。

    任何一件看起来很不起眼的小事,只要进行深入思考,稍微纵向挖深或者横向拓宽一下,都是足以让人沉溺的知识海洋。

    ‌举一个例子。某次有个同学跟我说,这周有个服务OOM了,查了一周发现有个地方defer写的有问题,改了几行代码上线修复了,周报都没法写。

    可能大家也遇到过这样的场景,还算是有一定的代表性。其实就查bug这件事来说,是一个发现问题,排查问题,解决问题的过程,包含了触发、定位、复现、根因、修复、复盘等诸多步骤。

    花了一周来做这件事,一定有不断尝试与纠错的过程,这里面其实就有很多思考的空间。比如说定位,如何缩小范围的?走了哪些弯路?用了哪些分析工具?

    **比如说根因,**可以研究的点起码有linux的OOM,k8s的OOM,go的内存管理,defer机制,函数闭包的原理等等。如果这些真的都不涉及,仍然花了一周时间做这件事,那复盘应该会有很多思考,提出来几十个WHY没问题吧…

    **‌再来说下总结沉淀。**这个我觉得也是大多数程序员比较欠缺的地方,只顾埋头干活,可以把一件事做的很好。但是几乎从来不做抽象总结,以至于工作好几年了,所掌握的知识还是零星的几点,不成体系,不仅容易遗忘,而且造成自己视野比较窄,看问题比较局限。

    **适时地做一些总结沉淀是很重要的,这是一个从术到道的过程,会让自己看问题的角度更广,层次更高。**遇到同类型的问题,可以按照总结好的方法论,系统化、层次化地推进和解决。

    ‌还是举一个例子。做后台服务,今天优化了1G内存,明天优化了50%的读写耗时,是不是可以做一下性能优化的总结?

    比如说在应用层,可以管理服务对接的应用方,梳理他们访问的合理性;在架构层,可以做缓存、预处理、读写分离、异步、并行等等;在代码层,可以做的事情更多了,资源池化、对象复用、无锁化设计、大key拆分、延迟处理、编码压缩、gc调优还有各种语言相关的高性能实践…

    等下次再遇到需要性能优化的场景,一整套思路立马就能套用过来了,剩下的就是工具和实操的事儿了。大家也可以关注微信公众号:Java技术栈,在后台回复:架构,可以获取我整理的 N 篇 Java 架构教程,都是干货。

    ‌还有的同学说了,我就每天跟PM撕撕逼,做做需求,也不做性能优化啊。先不讨论是否可以搞性能优化,单就做业务需求来讲,也有可以总结的地方。比如说,如何做系统建设?系统核心能力,系统边界,系统瓶颈,服务分层拆分,服务治理这些问题有思考过吗?

    每天跟PM讨论需求,那作为技术同学该如何培养产品思维,引导产品走向,如何做到架构先行于业务,这些问题也是可以思考和总结的吧。就想一下,连接手维护别人烂代码这种蛋疼的事情,都能让Martin Fowler整出来一套重构理论,还显得那么高大上,我们确实也没啥必要对自己的工作妄自菲薄…

    ‌所以说学习和成长是一个自驱的过程,如果觉得没什么可学的,大概率并不是真的没什么可学的,而是因为自己太懒了,不仅是行动上太懒了,思维上也太懒了。

    积极学习,保持技术热情

    ‌最近两年在互联网圈里广泛传播的一种焦虑论叫做35岁程序员现象,大意是说程序员这个行业干到35岁就基本等着被裁员了。

    不可否认,互联网行业在这一点上确实不如公务员等体制内职业。但是这个问题里35岁程序员并不是绝对生理意义上的35岁,应该是指那些工作十几年和工作两三年没什么太大区别的程序员。

    后面的工作基本是在吃老本,没有主动学习与充电,35岁和25岁差不多,而且没有了25岁时对学习成长的渴望,反而添了家庭生活的诸多琐事,薪资要求往往也较高,在企业看来这确实是没什么竞争力。

    **‌而如果我们积极学习,保持技术能力、知识储备与工作年限成正比,这到了35岁哪还有什么焦虑呢,这样的大牛我觉得应该也是各大公司抢着要吧?**但是学习这件事,其实是一个反人类的过程,这就需要我们强迫自己跳出自己的安逸区,主动学习,保持技术热情。

    在滴滴时有一句话大概是,主动跳出自己的舒适区,感到挣扎与压力的时候,往往是黎明前的黑暗,那才是成长最快的时候。相反如果感觉自己每天都过得很安逸,工作只是在混时长,那可能真的是温水煮青蛙了。

    ‌刚毕业的这段时间,往往空闲时间还比较多,正是努力学习技术的好时候。借助这段时间夯实基础,培养出良好的学习习惯,保持积极的学习态度,应该是受益终身的。至于如何高效率学习,网上有很多大牛写这样的帖子,到了公司后内网也能找到很多这样的分享,我就不多谈了。

    ‌可以加入学习小组和技术社区,公司内和公司外的都可以,关注前沿技术。

    ‌主动承担,及时交流反馈

    ‌前两条还是从个人的角度出发来说的,希望大家可以提升个人能力,保持核心竞争力,但从公司角度来讲,公司招聘员工入职,最重要的是让员工创造出业务价值,为公司服务。

    虽然对于校招生一般都会有一定的培养体系,但实际上公司确实没有帮助我们成长的义务。而在能为公司办成事,创造价值这一点上,我觉得最重要的两个字就是主动,主动承担任务,主动沟通交流,主动推动项目进展,主动协调资源,主动向上反馈,主动创造影响力等等。

    我当初刚入职的时候,基本就是leader给分配什么任务就把本职工作做好,然后就干自己的事了,几乎从来不主动去跟别人交流或者主动去思考些能帮助项目发展的点子。自以为把本职工作保质保量完成就行了,后来发现这么做其实是非常不够的,这只是最基本的要求。

    而有些同学的做法则是leader只需要同步一下最近要做什么方向,下面的一系列事情基本不需要leader操心了 ,这样的同学我是leader我也喜欢啊。入职后经常会听到的一个词叫owner意识,大概就是这个意思吧。

    ‌在这个过程中,另外很重要的一点就是及时向上沟通反馈。项目进展不顺利,遇到什么问题,及时跟leader同步,技术方案拿捏不准可以跟leader探讨,一些资源协调不了可以找leader帮忙,不要有太多顾忌,认为这些会太麻烦,leader其实就是干这个事的。。

    如果项目进展比较顺利,确实也不需要leader介入,那也需要及时把项目的进度,取得的收益及时反馈,自己有什么想法也提出来探讨,问问leader对当前进展的建议,还有哪些地方需要改进,消除信息误差。

    做这些事一方面是合理利用leader的各种资源,另一方面也可以让leader了解到自己的工作量,对项目整体有所把控,毕竟leader也有leader,也是要汇报的。可能算是大家比较反感的向上管理吧,有内味了,这个其实我也做得不好。但是最基本的一点,不要接了一个任务闷着头干活甚至与世隔绝了,一个月了也没跟leader同步过,想着憋个大招之类的,那基本凉凉。

    一定要主动,可以先从强迫自己在各种公开场合发言开始,有问题或想法及时one-one

    ‌除了以上几点,还有一些小点我觉得也是比较重要的,列在下面:‌

    第一件事建立信任

    ‌无论是校招还是社招,刚入职的第一件事是非常重要的,直接决定了leader和同事对自己的第一印象。入职后要做的第一件事一定要做好,最起码的要顺利完成而且不能出线上事故。这件事的目的就是为了建立信任,让团队觉得自己起码是靠谱的。

    如果这件事做得比较好,后面一路都会比较顺利。如果这件事就搞杂了,可能有的leader还会给第二次机会,再搞不好,后面就很难了,这一条对于社招来说更为重要。

    ‌而刚入职,公司技术栈不熟练,业务繁杂很难理清什么头绪,压力确实比较大。这时候一方面需要自己投入更多的精力,另一方面要多跟组内的同学交流,不懂就问。

    最有效率的学习方式,我觉得不是什么看书啊学习视频啊,而是直接去找对应的人聊,让别人讲一遍自己基本就全懂了,这效率比看文档看代码快多了,不仅省去了过滤无用信息的过程,还了解到了业务的演变历史。当然,这需要一定的沟通技巧,毕竟同事们也都很忙。

    脸皮要厚一点,多找人聊,快速融入,最忌讳有问题也不说,自己把自己孤立起来。

    超出预期

    ‌超出预期这个词的外延范围很广,比如leader让去做个值周,解答用户群里大家的问题,结果不仅解答了大家的问题,还收集了这些问题进行分类,进而做了一个智能问答机器人解放了值周的人力,这可以算超出预期。比如leader让给运营做一个小工具,结果建设了一系列的工具甚至发展成了一个平台,成为了一个完整的项目,这也算超出预期。

    超出预期要求我们有把事情做大的能力,也就是想到了leader没想到的地方,并且创造了实际价值,拿到了业务收益。这个能力其实也比较重要,在工作中发现,有的人能把一个小盘子越做越大,而有的人恰好反之,那么那些有创新能力,经常超出预期的同学发展空间显然就更大一点。

    这块其实比较看个人能力,暂时没想到什么太好的捷径,多想一步吧。

    体系化思考,系统化建设

    ‌这句话是晋升时候总结出来的,大意就是做系统建设要有全局视野,不要局限于某一个小点,应该有良好的规划能力和清晰的演进蓝图。比如,今天加了一个监控,明天加一个报警,这些事不应该成为一个个孤岛,而是属于稳定性建设一期其中的一小步。

    这一期稳定性建设要做的工作是报警配置和监控梳理,包括机器监控、系统监控、业务监控、数据监控等,预期能拿到XXX的收益。

    这个工作还有后续的roadmap,稳定性建设二期要做容量规划,接入压测,三期要做降级演练,多活容灾,四期要做…给人的感觉就是这个人思考非常全面,办事有体系有规划。

    ‌**平时积极总结沉淀,多跟别人交流,形成方法论。**‌

    提升自己的软素质能力

    ‌这里的软素质能力其实想说的就是PPT、沟通、表达、时间管理、设计、文档等方面的能力。说实话,我觉得我当时能晋升就是因为PPT做的好了一点…可能大家平时对这些能力都不怎么关注,以前我也不重视,觉得比较简单,用时候直接上就行了,但事实可能并不像想象得那样简单。

    比如晋升时候PPT+演讲+答辩这个工作,其实有很多细节的思考在里面,内容如何选取,排版怎么设计,怎样引导听众的情绪,如何回答评委的问题等等。

    晋升时候我见过很多同学PPT内容编排杂乱无章,演讲过程也不流畅自然,虽然确实做了很多实际工作,但在表达上欠缺了很多,属于会做不会说,如果再遇到不了解实际情况的外部门评委,吃亏是可以预见的。

    公司内网一般都会有一些软素质培训课程,可以找一些场合刻意训练。

    ‌以上都是这些分享还都算比较伟光正,但是社会吧也不全是那么美好的。。下面这些内容有负能量倾向,三观特别正的同学以及观感不适者建议跳过。

    拍马屁是真的香

    ‌拍马屁这东西入职前我是很反感的,我最初想加入互联网公司的原因就是觉得互联网公司的人情世故没那么多,事实证明,我错了…

    入职前几天,部门群里大leader发了一条消息,后面几十条带着大拇指的消息立马跟上,学习了,点赞,真不错,优秀,那场面,说是红旗招展锣鼓喧天鞭炮齐鸣一点也不过分。

    除了惊叹大家超强的信息接收能力和处理速度外,更进一步我还发现,连拍马屁都是有队形的,一级部门leader发消息,几个二级部门leader跟上,后面各组长跟上,最后是大家的狂欢,让我一度怀疑拍马屁的速度就决定了职业生涯的发展前景(没错,现在我已经不怀疑了)。

    ‌坦诚地说,我到现在也没习惯在群里拍马屁,但也不反感了,可以说把这个事当成一乐了。倒不是说我没有那个口才和能力(事实上也不需要什么口才,大家都简单直接),在某些场合,为活跃气氛的需要,我也能小嘴儿抹了蜜,甚至能把古诗文彩虹屁给leader安排上。而是我发现我的直属leader也不怎么在群里拍马屁,所以我表面上不公开拍马屁其实属于暗地里事实上迎合了leader的喜好…

    ‌但是拍马屁这个事只要掌握好度,整体来说还是香的,最多是没用,至少不会有什么坏处嘛。大家能力都差不多,每一次在群里拍马屁的机会就是一次露脸的机会,按某个同事的说法,这就叫打造个人技术影响力…

    ‌想舔就舔,不想舔也没必要酸别人,Respect Greatness。

    ‌永不缺席的撕逼甩锅实战 ‌ 有人的地方,就有江湖。虽然搞技术的大多城府也不深,但撕逼甩锅邀功抢活这些闹心的事儿基本也不会缺席,甚至我还见到过公开群发邮件撕逼的…

    这部分话题涉及到一些敏感信息就不多说了,而且我们低职级的遇到这些事儿的机会也不会太多。只是给大家提个醒,在工作的时候迟早都会吃到这方面的瓜,到时候留个心眼。

    ‌稍微注意一下,咱不会去欺负别人,但也不能轻易让别人给欺负了。

    不要被画饼蒙蔽了双眼

    ‌说实话,我个人是比较反感灌鸡汤、打鸡血、谈梦想、讲奋斗这一类行为的,这一套治还在大行其道,真不知道是该可笑还是可悲。当然,这些词本身并没有什么问题,但是这些东西应该是自驱的,而不应该成为外界的一种强push。

    我必须努力奋斗』这个句式我觉得是正常的,但是『你必须努力奋斗』这种话多少感觉有点诡异,努力奋斗所以让公司的股东们发家致富?尤其在钱没给够的情况下,这些行为无异于耍流氓。

    我们需要对leader的这些画饼操作保持清醒的认知,理性分析,作出决策。比如感觉钱没给够(或者职级太低,同理)的时候,可能有以下几种情况:

    •leader并没有注意到你薪资较低这一事实
    •leader知道这个事实,但是不知道你有多强烈的涨薪需求
    •leader知道你有涨薪的需求,但他觉得你能力还不够
    •eader知道你有涨薪的需求,能力也够,但是他不想给你涨
    •leader想给你涨,也向上反馈和争取了,但是没有资源

    ‌这时候我们需要做的是向上反馈,跟leader沟通确认。如果是1和2,那么通过沟通可以消除信息误差。如果是3,需要分情况讨论。如果是4和5,已经可以考虑撤退了。

    对于这些事儿,也没必要抱怨,抱怨解决不了任何问题。我们要做的就是努力提升好个人能力,保持个人竞争力,等一个合适的时机,跳槽就完事了。

    ‌时刻准备着,技术在手就没什么可怕的,哪天干得不爽了直接跳槽。‌

    学会包装

    ‌这一条说白了就是,要会吹。忘了从哪儿看到的了,能说、会写、善做是对职场人的三大要求。能说是很重要的,能说才能要来项目,拉来资源,招来人。

    同样一件事,不同的人能说出来完全不一样的效果。比如我做了个小工具上线了,我就只能说出来基本事实,而让leader描述一下,这就成了,打造了XXX的工具抓手,改进了XXX的完整生态,形成了XXX的业务闭环。老哥,我服了,硬币全给你还不行嘛。

    据我的观察,每个互联网公司都有这么几个词,抓手、生态、闭环、拉齐、梳理、迭代、owner意识等等等等,我们需要做的就是熟读并背诵全文,啊不,是牢记并熟练使用。

    ‌这是对事情的包装,对人的包装也是一样的,尤其是在晋升和面试这样的应试型场合,特点是流程短一锤子买卖,包装显得尤为重要。

    晋升和面试这里就不展开说了,这里面的道和术太多了。。关注微信公众号:Java技术栈,在后台回复:面试,可以获取我整理的 N 篇 Java 面试题干货。

    下面的场景提炼自面试过程中和某公司面试官的谈话,大家可以感受一下:

    我们背后是一个四五百亿美金的市场…

    我负责过每天千亿级别访问量的系统…

    工作两年能达到这个程度挺不错的…

    贵司技术氛围挺好的,业务发展前景也很广阔…

    啊,彼此彼此…

    嗯,久仰久仰…

    最后

    针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!

    • Android前沿技术大纲

    • 全套体系化高级架构视频

    资料领取:点赞+点击腾讯文档免费获取

    往期Android高级架构资料、源码、笔记、视频。高级UI、性能优化、架构师课程、混合式开发(ReactNative+Weex)全方面的Android进阶实践技术,群内还有技术大牛一起讨论交流解决问题。

    0hO-1616833917977)]

    资料领取:点赞+点击腾讯文档免费获取

    往期Android高级架构资料、源码、笔记、视频。高级UI、性能优化、架构师课程、混合式开发(ReactNative+Weex)全方面的Android进阶实践技术,群内还有技术大牛一起讨论交流解决问题。

    展开全文
  • APP优化 启动速度优化

    万次阅读 2017-06-23 10:40:48
    Xposed是一款特殊的安卓应用,诞生于著名的XDA论坛,由Xposed框架和Xposed模块组成。 你可以把它看作是一部模块化手机,Xposed框架相当于手机的主体,而Xposed模块相当于模块化手机的诸如镜头模块、投影模块和电池...
  • 通常来说,在安卓中应用的启动方式分为两种:冷启动和热启动。 1、冷启动:当启动应用时。后台没有该应用的进程,这时系统会又一次创建一个新的进程分配给该应用,这个启动方式就是冷启动。 2、热启动:当启动...
  • 通常来说,在安卓中应用的启动方式分为两种:冷启动和热启动。 1、冷启动:当启动应用时。后台没有该应用的进程,这时系统会又一次创建一个新的进程分配给该应用,这个启动方式就是冷启动。 2、热启动:当启动...
  • 我面的是安卓开发岗位。 Android面试相关整理 最近有一点找工作的打算,想补下面试题。但是发现网上面试相关的文章特别多,不知道从何看起,所以简单的总结了一下我有印象的一些,方便自己随时查看,本想带下
  • code小生,一个专注 Android 领域的技术平台公众号回复 Android 加入我的安卓技术群作者:Android_Jieyao链接:https://www.jia...
  • 最近公司项目越来越重,加了一些功能... 如果想要记录每次返回桌面的状态,下次启动直接打开上次离开的页面,而不是每次退出再打开APP都是进入主页,优化用户体验,不妨试一下下边的操作: 给根Activity加上android:
  • 谈起性能优化,我想问, 什么是性能优化?你的理解呢? **首先什么是性能:**在同一个手机里面,同样功能的app,哪个跑的快,哪个不卡,哪个就性能高。我们这篇文章就是解决那些性能慢的问题: 1)我们要找到性能低...
  • 安卓APP优化归档

    2017-03-15 11:50:36
    经过N个项目(包括线上和练手自己写的),觉得想成为资深的app...1.APP启动速度。主要是冷启动和热启动的启动速度,通过在application入口减少耗时的操作来进行优化。参考文章: 启动优化1 启动优化22.UI去除不必要
  • 如何优化原生开发的安卓app 优化APP的目标是:交互流畅不卡顿,启动速度要快,有离线缓存,支持弱网环境 优化的方面有:借助android性能分析工具来优化内存,优化UI渲染,优化启动过程
  • 1 App启动 1.1 启动方式 通常来说,在安卓中应用的启动方式分为两种:冷启动和热启动。 (1)冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷...
  • 当用户越来越多,产品的功能也随着迭代越来越多,App 逐渐变得臃肿是一件很常见的现象,甚至可以说是不可避免的现象,随之而来的工作就是优化 App 性能,其中最主要的一项就是启动速度优化。但本文的主角并不是启动...
  • 第一次开机扫描过程分析与第一次启动速度优化 第一次开机扫描过程分析 1.PackageMangerService的启动 不是本篇主要内容,简要了解即可 2.指定以下几个目录进行扫描 /data/data /data/app /data/app-lib /data/user /...
  • 本文由爱奇艺技术团队原创分享,原题《爱奇艺Android客户端启动优化与分析》。 1、引言 互联网领域里有个八秒定律,如果网页打开时间超过8秒,便会有超过70%的用户...爱奇艺安卓APP非常重视启动速度优化,本文...
  • 一、初识应用启动应用启动的流程在安卓系统上,应用在没有进程的情况下,应用的启动都是这样一个流程:当点击app启动图标时,安卓系统会从Zygote进程中fork创建出一个新的进程分配给该应用,之后会依次创建和初始...
  • 可能在App主进程启动阶段或者在主界面启动阶段放了很多初始化其他业务的逻辑,而这些业务落地可能一开始并不需要用到导致,其结果是启动速度慢,需求要求对启动时间有要求,故需要优化其时间 分析制定优化技术...
  • 一、怎么记录安卓app启动速度 1)Android Profiler,可以设置从启动开始监控,得到cpu内存等信息 2)Perfetto UI,开发者模式新增加了一个“系统跟踪”的功能,只有安卓10可以用 3)MethodTracingDebug....
  • 本篇文章将先从以下三个内容来介绍启动速度与执行效率优化: [冷启动和热启动解析] [APP启动黑白屏解决办法] [APP 卡顿问题分析及解决方案] 一、冷启动和热启动解析 1.1 启动方式 通常来说,在安卓中应用的启动方式...
  • App启动时间统计

    2017-12-08 15:44:31
    想要优化 App启动速度,必须有准确衡量启动时间的方法,否则优化完之后效果怎样,自己都不知道,说出去别人也不信服不是。在做 App 启动时间统计之前,当然必须弄明白有哪些启动类型,每种启动类型的特点。通常来...
  • 安卓app响应速度或使用流畅度是衡量性能的一个指标。如果一个应用用户启动应用时缓慢、使用时卡顿、甚至出现ANR那是很糟糕的体验。 通常,当应用无法响应用户输入时,系统即会显示 ANR。例如,如果应用在界面线程中...
  • 开头 互联网时代的到来,让我们获取知识变得更加简单,理论上讲只要你想学,便会有不尽的知识等你,只要方法...1、启动速度和执行效率优化 2、布局检测与优化 3、内存优化 4、耗电优化 5、网络传输与数据存储优化 6、AP
  • Redex安卓Apk优化技术研究

    千次阅读 2017-02-28 21:48:24
    Redex介绍ReDex 是 Facebook 开源的工具,通过对字节码进行优化,以减小 Android Apk 大小,同时提高 App 启动速度。 GitHub:ReDex github,官网主页:fbredex.com本次研究完成了Redex在Ubuntu linux上的安装和...
  • 1 简介 互联网领域里有个八秒定律,如果网页打开时间超过8秒,便会有超过70%...爱奇艺安卓APP非常重视启动速度优化,本文将从启动过程,启动时间测量,启动优化,以及后续监控等方面分享我们在启动优化方面积累的...

空空如也

空空如也

1 2 3 4 5 6
收藏数 105
精华内容 42
关键字:

安卓app启动速度优化