记2.10一家外包公司Android面试

面试问题

Android基础

  • activity之间数据传输,类型如果是类实例,需要实现序列化,以及序列化的原理

基本数据类型和复合类型,复合类型中的类实例--对象需要序列化传输,后面引出了序列化的原理(对象转化成可存储的或者客传输的过程,对象=>字节流),两种方式:java自带实现Serializable以及Android的Parcelable(应用内传递高效内存)

  • 有哪几种图片缓存框架?

Fresco,Glide,Volley,简单使用过没看过源码,很虚

  • 使用过okhttp没?okhttp的优势?

我答:用过,看过知识点了,想不起来,答了个定时重传,说Xutils网络模块没有吗(简历上写了),回答是有的,尴尬哈。

去看知识点后:
1.支持SPDY,共享同一个Socket来处理同一个请求
2.如果SPDY不可用,则使用连接池提高效率并减少请求延时
3.默认支持GZIP,提高传输效率
4.网络请求缓存响应的数据来减少重复的网络请求

  • 一般软件开发的流程?

不说了

  • 一组动画循环播放的代码?

我答:原生动画基本没有使用,说一直在进行RN开发

后面查了下:
1.使用属性动画 代码如下

    List animators = new ArrayList<>();
    animators.add(new ObjectAnimator...);
    ...
    AnimatorSet btnSexAnimatorSet = new AnimatorSet();
    btnSexAnimatorSet.playTogether(animators);
    btnSexAnimatorSet.setStartDelay(delay);
    btnSexAnimatorSet.start();
  • 线程与进程的区别

记得好像是线程是任务最小调度单位,看我愣了会,就问了下哪个大,然后顺便说了下进程是有一个或者多个线程的构成的

  • 五种基本布局?有没有接触过约束布局,说一下它的主要作用?

五种布局就不说了,约束布局可以拖拽式布局,作用的话减少嵌套视图,提高页面加载效率

  • 有哪些动画类型?

属性动画,View动画,帧动画

  • handler中的取消消息发送的?

removeMessage和sendEmptyMessageDelayed

  • 举例一款app的项目结构和遇到的疑难问题以及如何解决的?

设计模式

  • 单例模式有哪几种以及单例模式的作用?
  • 熟悉哪几种设计模式?
  • MVP与MVC开发模式的优势?

项目

  • 讲了下2015年的两个Android项目做了什么东西?
  • 简历上写了布局优化?

使用merge减少层次和使用ViewStub提高资源利用,讲了下ListView优化

  • 没问到算法

你可能感兴趣的:(记2.10一家外包公司Android面试)