0
点赞
收藏
分享

微信扫一扫

7天拿到阿里Android岗位offer,让你明明白白的使用RecyclerView

王小沫 2022-03-31 阅读 58

开篇

说一下我大概的情况。渣本毕业,工作已经有快3年了,从高中就开始玩小破站。无论是学习还是日常放松都是在b站。大学主学的软件技术专业,所以,入职bilibili是我大学时期给自己定的小目标。

在学校,专业学的算中上的水平,课本知识和老师讲的东西基本消化的八九不离十,也自己动手写过属于自己APP,参与过一些社团协会共同开发的项目。

刚毕业时候,b站也有校招,满腔热血的参加了,准备了好久,结果还是没有被录用。当时,挺失落的吧,但是也并没有放弃我进B站工作的梦想。

7月份的时候一位学长知道我非常想进bilibili,特意告诉我B站有内推名额,问我要不要来试一下,我一口直接答应,然后把手里的工作辞掉了,破釜沉舟一把,宅家里半个月复习。将学校所学知识点,以及工作3年的积累经验都系统的归纳整理了起来。再过一篇,然后就是刷面经,面试场景练习等等等。

世间所有的付出终是有回报的,努力的耕耘,也没有被辜负。从离职到入职,一个月时间,顺利的入职了哔哩哔哩,也是要感谢网友们提供的宝贵经验,所以整理了一下,把我的面经整理一下也分享出来给大家。

1面 - 基础面

  1. 你们 Android 开发的时候,对于 UI 稿的 px 是如何适配的?
  1. 两个值相等的 Integer 对象,== 比较,判断是否相等?

  2. Activity A 跳转Activity B,Activity B再按back键回退,两个过程各自的生命周期

  1. 子线程是否可以 context.startActivity() (如ApplicationContext), 会不会有什么问题?
  1. Handler机制整体流程;Looper.loop()为什么不会阻塞主线程;IdHandler(闲时机制);postDelay()的具体实现;post()与sendMessage()区别;使用Handler需要注意什么问题,怎么解决的?
  1. Native、H5、RN页面混合跳转时,页面清栈的桥如何实现的?
  1. 怎么计算一个View在屏幕可见部分的百分比?

  2. ClassLoader 的双亲委派机制

  3. 简单介绍下 Https 的原理

  4. 什么情况会导致内存泄漏,如何修复?

  5. 下载一张很大的图,如何保证不 oom?

  6. 有没有做过UI方面的优化,做过哪些?

  1. WebView 与 JS 交互方式,shouldOverrideUrlLoading、onJsPrompt使用有啥区别

  2. Flutter、Kotlin接触使用过没有

  3. 其他项目相关问题

  4. 算法 - 二叉树输出第 k 层节点元素

2面 - 项目专项

  1. Native、H5、RN页面混合跳转时,页面清栈的桥实现

  2. 页面混编框架的设计与难点

  3. RN 通用容器的设计

  4. 用户行为监控方案设计

  5. JS 错误治理方案

  6. RN 页面对用户行为的监控与JS错误治理,在问题发现有什么收获、优化点

  7. 美团 RN 相对于原生 RN 的有什么优势

3面 - 基础加深

  1. 你们公司 Picasso 有使用过没,介绍下

  2. Picasso 单引擎,在多 Bundle 的情况下怎么保证数据隔离的?

  3. 美团 RN 与 Picasso 的区别

4.省略若干项目相关问题…

  1. RN 的页面追踪埋点如何实现的

  2. 美团首页是否是 RN 页面,MTFlexBox 原理

  3. synchronized 修饰 static 方法、普通方法、类、方法块区别

  4. synchronized 底层实现原理

  5. volatile 的作用和原理

  6. 一个 int 变量用 volatile 修饰,多线程去操作 i++,是否线程安全?如何保证 i++ 线程安全?AtomicInteger 的底层实现原理?

  1. 说下对线程池的理解,以及创建线程池的几个关键参数

  2. Handler 机制又问了一遍…

  3. 介绍下 Binder 机制,与内存共享机制有什么区别?

  4. Java 集合,介绍下ArrayList 和 HashMap 的使用场景,底层实现原理

  5. ArrayList 与 LinkedList 的区别

  6. 算法 - 两个有序的链表的合并

  7. 算法 - 输入一个字符串(不含*和.)、正则(字母、*和.任意组合),判断字符串是否合法

  8. 简单介绍下,项目中遇到的一些技术难点

4面 - 交叉面

  1. 下面的代码, str 值最终为多少?换成 Integer 值又为多少,是否会被改变?
public void test() {
    String str = "123";
    changeValue(str); 
    System.out.println("str值为: " + str);  // str未被改变,str = "123"
}

public changeValue(String str) {
    str = "abc";
}

  1. 下面的代码,再次使用对象 student 是否需要判空?
public void test()  {
    Student student = new Student("Bobo", 15);
    changeValue1(student);   // student值未改变,不为null! 输出结果 student值为 name:Bobo、age:15
    // changeValue2(student);  // student值被改变,输出结果 student值为 name:Lily、age:20
    System.out.println("student值为 name: " + student.name + "、age:" + student.age);
}

public changeValue1(Student student) {
    student = null;
}

public static void changeValue2(Student student)  {    
     student.name = "Lily";    
     student.age = 20;
}

  1. Java 的几种引用类型,弱引用的使用场景?

  2. 线程池分类,解释下几个核心参数?

  3. APK 的打包过程是什么?

  1. APK 为什么要签名?是否了解过具体的签名机制?
  1. 为什么要分 dex ?SDK 21 不分 dex,直接全部加载会不会有什么问题?
  1. 常见的设计模式有哪些?你提供的 JS 错误治理方案,用了哪些设计模式?

  2. 算法 - 二叉树层序遍历,奇数层逆序遍历节点,偶数层正序遍历

  3. 未来 3~5 年的规划是什么?

  4. 你觉得你的优点是什么?缺点是什么?

  5. 现在的职级,近期的绩效如何

5面 - 部门 TL

  1. 商业化部门相关的业务介绍 (核心大概是商业化部门壁垒高,培养一个人成本高,比做其他业务更有含金量,可以积累很多业务策略知识),然后让问他问题

  2. 未来几年的规划?生活上有什么规划?

  3. 你觉得你的优点是什么?缺点是什么?

  4. 现在的职级,近期的绩效如何

  5. 为什么给你这么好的绩效?

  6. 有没有看其他机会?阿里面试的情况

6面 - 大 Boss

  1. 算法 - 数组插入,考虑扩容

  2. 在项目的遇到的比较有挑战的事是什么?

  3. 你在美团负责的业务有哪些?

  4. 未来几年的规划是什么?

  5. 你觉得你的优点是什么?缺点是什么?

  6. 现在的职级,近期的绩效如何

【HR 面】

  1. 本科和研究生专业都是偏硬件的,是否有相关的软件经历?

  2. 研究生是保研的还是自己考的?

  3. 去美团之前有没有 Android 开发经历?

  4. 当时为什么要选择去美团?为什么要选择来北京?

  5. 为什么要换工作?期望以后的工作是怎样的?

  1. 现在的职级,近期的绩效如何?

  2. 这么好的绩效,为什么不选择美团内换部门看看机会?

  3. 几次晋升中,业绩亮点是什么?

  4. 家是哪里的,有回家那边发展的打算没有?

  5. 有打算再去看看快手之类的工作机会没有?

  6. 问一些阿里现在的面试进展和情况

  7. 期望的薪资

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》开源

最后

写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个学习思路及方向,从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。

image
开源项目:**

最后

写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个学习思路及方向,从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。

[外链图片转存中…(img-SXN4tAXC-1648728837733)]

举报

相关推荐

0 条评论