学校BBS上师兄发网易内推,凑下热闹投了一发

一面:电话面

大概25分钟,感觉面试官气场很足,主要关注了其中一个 个人开源项目

1、自我介绍

2、说说你做的这个项目

当时谈到使用到了开源框架xtuil中的dbxutil和httptuil,然后让分析这俩个模块源码;其中详细问了httputil实现原理(主要是线程池,封装的是httpclient)

使用到了 slidingmenu_library开源控件,让分析这个开源框架的源码;

tips:项目中使用到的开源框架一定要了解个大概,给出一个比较不错的学习连接http://a.codekk.com/

3、说说你做过最复杂的控件

有点不好说,扯到开机动画,追问如何实现,然后又追问了animation 和animator的区别

干净利索没有太多的废话,直接就说“好,面试结束”直接就挂电话了 。同学问我面的咋样,我都直接说跪了没戏

二面:杭州网易现场面 (当然报销来回动车路费)

面了将近1小时15分钟吧

过了一个星期接到hr电话说一面过了,需要现场面,去杭州面试确实艰苦,14个小时动车到杭州已经是半夜11点了,找个小旅馆睡下,下午俩点去面试

面试官不关注我app项目,直接抛出大问题,慢慢讨论

1、说说推送

扯到长连接,心跳包,直接被面试官打断,这个我们都知道,说说保持一个长连接很简单,为什么长连接会带来很多麻烦,还提示从耗电量,微信分析

(这个问题后来做了总结,确实是个好问题可以参考我的这篇博客http://blog.csdn.net/xsf50717/article/details/48519135

2、从协议栈角度分析一下推送的过程

看了我LTE协议栈项目(本人通信专业)问的,感觉有点不搭边

3、项目使用开源框架的源码分析讨论

主要还是集中在httputil源码实现、讨论了线程池设计,阻塞队列;

由于httputil封装了httpclient,然后让比较 httpclient和httpurlclient区别;

扯到了http协议,问了http与https区别,(当时我在分析直接被打断,“这个我们都知道,简介概括”,然后我我直接说https=http+ssl+加密算法);

加密算法是对称还是非对称的,,商量秘钥的过程是对称还是非对称

3、android消息处理机制

handler+loop分析;

loop线程与普通线程区别;

asynctask源码分析(这里有个线程池几个关键参数5,128,使用的阻塞队列,补充讲了asynctask缺陷)

如何改进asynctask造成的内存泄露的问题,从而延伸到 jvm虚拟机四种引用

4、说说androi 使用卡顿是什么造成的,给出优化

主要回答了ui overdraw避免,<include>标签,<viewstub>标签,<merge>标签使用,hierarchy viewer工具的使用;

面试官追问:再从底层分析;(其实就是 16ms和60fps的追求了)

再结合GPU操作分析一下UI过程;

然后说到了大图加载问题,提到UIL框架,让分析内部源码(我主要从uil的缓存策略和线程池机制分析)

5、忽然扯到并发,让分析concurrenthashmap,答了分段锁仍不满意,要求再分析一下size操作是如何做的

6、材料设计

从listview优化谈到recyclerview,深入分析一下recyclerview特点

然后引申到瀑布流如何实现,不使用recyclerview如何实现瀑布流

7、属性动画

8、touch事件分发机制

9、android开机过程(主要讨论了zygote)

10、让你设计一个游戏人物,如何设计

主要讲了抽象类+接口+mvc和mvp模式

一面折腾完,直接让出去休息,等HR面,后来等了40多分钟面完HR,由于是第二天早上7点半的动车,晚上在火车站附近网吧玩了一夜LOL,第二天回校等通知,9.16号才等来offer通知

网易内推(Android) 拿offer的更多相关文章

  1. 互联网公司技术岗实习/求职经验(实习内推+简历+面试+offer篇)

    找工作的事基本尘埃落定了,打算把这大半年来积累的经验写下来,基本都是我希望当年找实习的时候自己能够知道的东西,帮师弟师妹们消除一点信息不平等,攒攒RP~ 不要像我当年那样,接到电话吓成狗,没接到电话吓 ...

  2. DP 网易内推:合唱团

    链接:https://www.nowcoder.com/questionTerminal/661c49118ca241909add3a11c96408c8来源:牛客网 [编程题]合唱团 热度指数:18 ...

  3. 剑指Offer——网易校招内推笔试题+模拟题知识点总结

    剑指Offer--网易校招内推笔试题+模拟题知识点总结 前言 2016.8.2 19:00网易校招内推笔试开始进行.前天晚上利用大约1小时时间完成了测评(这个必须做,关切到你能否参与面试).上午利用2 ...

  4. 阿里、腾讯、百度、网易、美团Android面试经验分享,拿到了百度、腾讯offer

    基本情况 2021届普通本科,Android开发岗. 此文主要是2020年秋招面试经验汇总,最终拿到了百度.腾讯的offer. 主要包括阿里三面,腾讯四面,百度三面,网易三面,美团一场面完. 阿里(由 ...

  5. 阿里提前批校招内推offer经历

    经过一个半月的阿里内推面试,今天终于收到了阿里的offer邮件 .阿里的内推面试一共有四轮,本人是7月19号投的内推邮件,8月28号收到了offer的邮件.首先本人谈谈内推的看法.内推是公司招聘人才的 ...

  6. Google Offer的经历+内推

    8个月从CS菜鸟到拿到Google Offer的经历+内推 http://www.1point3acres.com/bbs/forum.php?mod=viewthread&tid=77453 ...

  7. 剑指Offer——美团内推+校招笔试题+知识点总结

    剑指Offer--美团内推+校招笔试题+知识点总结 前言 美团9.9内推笔试.9.11校招笔试,反正就是各种虐,笔试内容如下: 知识点:图的遍历(DFS.BFS).进程间通信.二叉查找树节点的删除及中 ...

  8. 转载: 8个月从CS菜鸟到拿到Google Offer的经历+内推

    8个月从CS菜鸟到拿到Google Offer的经历+内推 http://blog.csdn.net/fightforyourdream/article/details/17094127 http:/ ...

  9. 学生党如何拿到阿里技术offer: 《2016阿里巴巴校招内推offer之Java研发工程师(成功)》

    摘要: 这篇文章字字珠玑,这位面试的学长并非计算机相关专业,但是其技术功底足以使很多计算机专业的学生汗颜,这篇文章值得我们仔细品读,其逻辑条理清晰,问题把握透彻,语言表达精炼,为我们提供了宝贵的学习经 ...

随机推荐

  1. PHP MySQL Delete

    DELETE 语句用于从数据库表中删除行. 删除数据库中的数据 DELETE FROM 语句用于从数据库表中删除记录. 语法 DELETE FROM table_name WHERE some_col ...

  2. 分布式改造剧集2---DIY分布式锁

    前言: ​ 好了,终于又开始播放分布式改造剧集了.前面一集中(http://www.cnblogs.com/Kidezyq/p/8748961.html)我们DIY了一个Hessian转发实现,最后我 ...

  3. Spring常用配置

    ----------------------------------------------------------------------------------------------[版权申明: ...

  4. mysql 跨服务器复制数据库

    比较了下,还是采用ssh的方式最简单.比如传数据库test_db mysqldump --databases test_db| ssh 121.121.121.121 test_db

  5. java记事本开发

    今天我想要分享的是一个用java写的一个记事本程序.我知道现在市面上有各种各样的记事本了,但是我发现有的写的功能不够完善,或者是代码层次结构不够清晰,有的甚至看了之后云里雾里的,有的还不乏了非常明显的 ...

  6. Intellij IDEA 插件开发之自建插件仓库

    Intellij IDEA 有一个自己的官方的插件仓库,但是当我们的开发的 Intellij IDEA 的插件不能够对外公开时,我们就需要搭建自己的 Intellij IDEA 的插件仓库.前不久我们 ...

  7. 全文检索Lucene (2)

    接着全文检索Lucene (1) . 下面我们来深入的研究一下,如何使用Lucene! 从全文检索Lucene (1)中我们可以看出,Lucene就好比一个双向的工作流,一方面是对索引库的维护,另一方 ...

  8. Gazebo與ROS版本說明

    使用哪种ROS / Gazebo版本的组合 介绍 本文档提供了有关将不同版本的ROS与不同版本的Gazebo结合使用的选项的概述.建议在安装Gazebo ROS包装之前阅读它.重要!简单的分析,快速和 ...

  9. Linux--FTP和MAIL服务器

     1) FTP协议 FTP(FileTransfer Protocol,文件传输协议)用于管理计算机之间的文件传送.FTP 是Internet 上使用非常广泛的一种通讯协议,它是由支持Intern ...

  10. Citrix 桌面虚拟化解决方案与VMware桌面虚拟化解决方案对比

    通过 XenDesktop 和 FlexCast为各种场景交付虚拟桌面 企业桌面面临的问题 为每个用户提供安全高效的桌面环境是几乎所有公司或组织的基本要求.如果用户无法使用他们的桌面或应用程序,公司就 ...