Android大厂一面面试:记录第一次跳槽经历

    技术2022-07-11  74

    前言

    首先说一下背景,小公司3年开发经验,Android、iOS都会,211本科,毕业3年,裸辞离京来杭,面的Android开发。

    其实面试最重要的是准备好简历上的东西,Java、Kotlin基础,性能优化、内存优化、内存泄漏这些都是基础,肯定要会的。另外简历上一定要有亮点,比如对Android架构设计有一定理解,模块化、组件化这些。

    这次跳槽知道了自己的实力,大厂基本上都给了面试机会,可惜啊,都是一面就跪了。有两方面原因,一是自己的实力,这是大头。二是三年都没出去面试过,不知道现在面什么东西,准备也不够,而且一上来就是面的就是大厂,表现不怎么样,留下了槽糕的面试记录。这个要特别注意,大厂的面试记录内部都是能看到的,所以没有准备好就不要去白白浪费机会了。

    网易-网易云音乐电话面

    模块化架构怎么设计的?怎么在gradle里面定义一个变量?gradle两个task中间要插入一个task任务要怎么做?注解解释器怎么指定处理哪些注解?怎么注册注解解释器?retrofit怎么生成call对象的?知道Kotlin伴生对象吗?讲讲Kotlin协程?

    网易一面面试官水平很高,我说我熟悉模块化架构,然后问了一堆相关的问题。

    阿里-天猫国际电话面

    kotlin实现单例有哪些方法?知道Kotlin协程吗?Binder原理Handler原理, Handler获取消息为什么是通过obtain方法?

    阿里-淘宝特价版电话面

    HashMap原理、ArrayMap原理Java线程同步有哪些方法?怎么解决线上内存泄漏?Leakcanary原理Arouter原理Activity启动过程

    滴滴视频面

    Activity四种启动模式,使用场景Dialog对Activity生命周期的影响?onPause和onStop的区别?ActivityA跳转ActivityB的生命周期变化。FragmentManager的add方法与replace方法的区别。听过IntentService,原理是什么?Fragment之间是怎么通信的启动一个Service有什么方式,生命周期有什么不一样?Service播放音乐,音乐开始、暂停是怎么实现的Handler原理,子线程怎么通知主线程更新。

    滴滴问的特别细,都是基础知识,只有滴滴是这么面的,别的都只是问一些大方向上的东西,或者framework层的源码。

    字节跳动-西瓜视频视频面

    手写双重判空的单例找到两个view的第一个父View,使用IDE,现场写怎么设计一个推送SDK讲一下内存泄漏的原因,以及怎么解决。
    Processed: 0.008, SQL: 9