美文网首页面试
android面试题实战总结

android面试题实战总结

作者: 艾伦oy | 来源:发表于2019-02-19 18:47 被阅读31次

    下面的面试题都是我在面试过程中遇到的,这里总结一下。

    1.android lottie动画的使用?
    答:先让美工公用工具生成json格式的动画文件,放到asset目录,通过lottieanimationView类加载动画文件实现功能。
    2.android图片的三级缓存?
    答:强应用,软应用,系统文件,网络
    3.怎样更改Glide的缓存路径?
    答:实现glidebuilder接口重现里面的方法,通过glidebuilder类设置,在配置文件路径。
    4.自定义View的三种测量模式?
    答:不确定值,最大值,完全准确值
    5.android事件分发机制?
    答:用户点击屏幕产生MotionEvent(点击事件) Activity接收MotionEvent(点击事件)—>传递给Window—>传递给DecorView(ViewGroup)—>执行ViewGroup的dispatchTouchEvent() ViewGroup接收到MotionEvent(点击事件)之后,按照事件分发机制去分发事件。 若当子View不消耗事件,onTouchEvent()返回false,那么这个事件会传递回其父View的onTouchEvent(),如若父View也不消耗,最后会传递回给Activity进行处理。
    6.讲讲MVP架构?
    答:Model: 处理数据,包过网络请求、提交数据;缓存、读写本地数据、写入;写入、读取数据库数据等 View: 提供Activity需要实现方法,本身是一个接口,实际在Presenter中被调用执行。 Presenter: 业务处理,内部持有Model和View;使用CallBack获取Model获取结果信息。 Activity: 实现View提供方法,持有Presenter对象;在监听事件中调用Presenter方法,
    7.Rxjava中map和flatMap的区别?
    答:
    1、返回值上面: map变换后可以返回任意值,而flatMap则只能返回ObservableSource类型
    2、变换后的输出: map只能进行一对一的变换,而flatMap则可以进行一对一,一对多,多对多的变换,具体的变换规则根据我们设置的变换函数mapper来定

    8.View的绘制流程?
    答:View 绘制中主要流程分为measure,layout, draw 三个阶段。
    measure :根据父 view 传递的 MeasureSpec 进行计算大小。 layout :根据 measure 子 View 所得到的布局大小和布局参数,将子View放在合适的位置上。 draw :把 View 对象绘制到屏幕上。
    9.你做过哪些自定义控件?
    答:这个问题大部分面试官都会问,看自己的实际情况回答。
    10..android6.0到9.0的应⽤适配
    答:https://mp.weixin.qq.com/s?__biz=MzAxMTI4MTkwNQ==&mid=2650826756&idx=1&sn=dd888498081cb61e9bdb7bc6ebcf3a55&chksm=80b7bc9ab7c0358c1e85150120ecdb3c3164670c8b27cecb0c16621667e229c929f65a6bbae6&scene=0&subscene=131&ascene=7&devicetype=android-28&version=260703f2&nettype=3gnet&abtest_cookie=BAABAAoACwASABQABAAmlx4AV5keAJmZHgCgmR4AAAA%3D&lang=zh_CN&pass_ticket=CMPfIDis7lMyANcY39ZtUakJIKqcOArrwyUfSa4%2FPd9SzwwoEyOIepvHr3f7Ckkd&wx_header=1

    10.一张面试题

    面试题.jpg 答案.png
    1. webview 定位权限监听方法是什么?
    webView.setWebChromeClient(new WebChromeClient() {  
    @Override  
    public void onGeolocationPermissionsShowPrompt(String origin,Callback callback) {  
      callback.invoke(origin, true, false);    
      super.onGeolocationPermissionsShowPrompt(origin, callback);  
    }  
    }); 
    

    12.你觉得你比你的同事强在哪里?
    答:这个问题我不知道怎么回答,

    相关文章

      网友评论

        本文标题:android面试题实战总结

        本文链接:https://www.haomeiwen.com/subject/wowfyqtx.html