字节跳动五面都过了,结果被刷了,问了hr原因竟说是,安卓app启动速度优化

1.Java 基础知识
  • 面向对象的基本思想

  • Object类相关:Object类的几个关键函数、String涉及到的常量池概念,序列化 & 反序列化。

  • 重要关键字:final、static。

  • 内部类:内部类的分类、应用场景、内部类编译成class后是怎么样的。

  • 抽象类 & 接口:区别、应用场景。

  • 编码:编码的目的、分类。

  • 异常:异常体系、自定义异常。

  • 注解:注解的基本概念、分类、编译时注解 & 运行时注解。

  • 容器:重要容器的内部实现、容器间的对比。

  • 内存模型。

  • 垃圾回收。

  • 类加载的过程。

  • 泛型:分类、通配符 & 上下边界、泛型擦除。

  • 反射:使用。

2.Android 基础知识
  • Dalvik、Art虚拟机

  • Activity:生命周期、launchMode。

  • Fragment:生命周期、懒加载、两种Adapter之间的区别。

  • BroadcastReceiver:基本概念、广播分类、权限。

  • Service:生命周期、onStartCommand的返回值、startService和bindService的区别、相同进程 & 不同* * 进程的交互、IntentService实现原理。

  • 重要的工具类 & 源码实现:AsyncTask、HandlerThread、Handler、IntentService、LruCache、LinkedHashMap、SparseArray。

  • RecyclerView:缓存原理、和ListView的对比、Adapter如何适配多种layout。

  • 存储:数据库升级 & 优化、ContentProvider,SharePreference。

  • SDK版本升级的兼容问题。

  • Android的权限管理机制。

3.图片
  • Bitmap相关:Bitmap的大小计算、质量、inJustDecodeBounds、inBitmap。

  • 几种图片格式的对比、压缩。

  • 大图加载:BitmapRegionDecoder

4.算法

别无捷径,刷题,但是刷题的时候,要按照题的类型去总结。

5.开源框架
  • RxJava:操作符的应用场景、重点操作符的内部实现、和RxJava的对比。

  • Glide:流程、缓存相关的实现。

  • Retrofit:流程、动态代理 & 注解解析。

  • OkHttp:流程、队列实现、缓存实现。

6.性能
  • 性能优化技巧:启动速度优化、布局优化、内存优化、电量优化、APK大小优化、列表滑动优化。

  • 性能优化工具:TraceView、Systrace、调试GPU过度绘制 & GPU呈现模式分析、Hierarchy Viewer、MAT、Memory Monitor & Heap Viewer & Allocation Tracker、LeakCanary、Lint。

  • ANR

  • ANR原因

  • ANR产生过程源码分析

  • 信息收集过程

  • trace文件分析

  • 分析基本流程

  • 具体示例

  • 如何避免产生ANR

  • 性能实践:解决过的性能问题,从 遇到问题、分析问题、解决问题、结果 四个点进行阐述。

7.View
  • 绘制流程:measure、layout、draw三个关键流程。

  • 事件分发:事件分发的原理、处理过的滑动冲突问题。

  • 自定义View:Canvas & Path,实现过的比较复杂的自定义View。

8.架构
  • MVP:MVP的思想 & 优劣势、在项目中的应用、
9.源码
  • AMS

  • WMS

  • Binder

  • 应用启动流程

  • APK相关知识点

  • APK构成:resources.arsc组成、AndroidManifest.xml、aapt作用及原理

  • APK打包过程

  • APK安装过程

  • APK签名 & 校验原理

  • dexopt原理

10.网络

基础知识:看一下对于 <<计算机网络>> ,重点是网络分层模型、TCP/UDP、HTTP/HTTPS。

11.设计模式

按照23种网络模型、三个分类进行总结,每种设计模式包含以下三个方面,至少要准备常用的几个:

  • 基本概念:UML图、简单例子、应用场景、优势 & 劣势。

  • Android源码中的实现

  • 项目中的应用

12.多线程
  • 看并发编程的艺术,这本书的目录就是多线程最好的知识体系。

  • 遇到过的多线程问题、怎么解决的。

[]

( )13.Gradle

  • 常用配置。

  • 多渠道打包。

14.插件化
  • 插件化的核心思想。

  • 几种插件化框架实现的原理。

15.组件化
  • 组件化的优势。

  • Arouter:使用方式、实现原理。

16.Kotlin

有用到的可以看看。

17.多媒体

音频、视频播放。

18.大前端

ReactNative、Flutter:没学过的可以了解一下思想。

19.JNI

调用实现方式。

所有的知识点都整理在了开源项目【GitHub】,有需要的朋友可以自取。

如何和 HR 聊天,比如谈钱等等


首先你面到 HR 了,说明你基本已经成为备选人之一了。这时候 HR 会和你聊很多问题,这些问题都是为了了解你的一些个人情况的。比如说性格啦、反应能力、情商等等。另外大部分公司的 HR 并没有一票否决权,面试没有成功多半是有更好的备选人而不是因为 HR 把你卡掉了。

然后说到谈钱的一个问题。首先以最少的工资招到需要的人肯定是 HR 的考核之一,所以压价是很正常的一个事情。并且上家公司的薪资也是一个很重要的参考,一般来说涨薪幅度在 30% 以上是很牛逼的事情了,通常都在 20% 左右。

你的开价一般就是 offer 的上限了,考虑到压价的情况,你可以在原本期望薪水上上浮 1K 左右,然后可以根据面试的情况来有选择性的开价。

  • 面的不错,本来想要 16K 的,那么就多要个 1-2K 没啥问题
    等等。另外大部分公司的 HR 并没有一票否决权,面试没有成功多半是有更好的备选人而不是因为 HR 把你卡掉了。

然后说到谈钱的一个问题。首先以最少的工资招到需要的人肯定是 HR 的考核之一,所以压价是很正常的一个事情。并且上家公司的薪资也是一个很重要的参考,一般来说涨薪幅度在 30% 以上是很牛逼的事情了,通常都在 20% 左右。

你的开价一般就是 offer 的上限了,考虑到压价的情况,你可以在原本期望薪水上上浮 1K 左右,然后可以根据面试的情况来有选择性的开价。

  • 面的不错,本来想要 16K 的,那么就多要个 1-2K 没啥问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值