Android面试题

  1. Activity生命周期?
  2. Service生命周期?
  3. Activity的启动过程?
  4. Broadcast注册方式和区别?
  5. HttpClient和HttpUrlConnection的区别?
  6. java虚拟机和Dalvik虚拟机的区别?
  7. 进程保活(不死进程)
  8. Context详解?
  9. 理解Activity、View、Window三者关系?
  10. 四种LaunchMode及其使用场景?
  11. View的绘制流程?
  12. View、ViewGroup时间分发?
  13. 保存Activity状态?
  14. Android中的几种动画?
  15. Android中跨进程通讯的几种方式?
  16. AIDL的理解?
  17. Handler的原理?
  18. Binder机制原理?
  19. 热修复的原理?
  20. Android内存泄漏及管理?

    (1)内存溢出(OOM)和内存泄露(对象无法被回收)的区别。 

    (2)引起内存泄露的原因

     (3) 内存泄露检测工具 ------>LeakCanary

  21. Fragment与Fragment、Activity通信的方式?
  22. Android UI适配?
  23. app优化

    app优化:(工具:Hierarchy Viewer 分析布局  工具:TraceView 测试分析耗时的)

    App启动优化

    布局优化

    响应优化

    内存优化

    电池使用优化

    网络优化

  24. 图片优化?

  25. HybridApp WebView和JS交互?

  26. JAVA GC原理?

  27. ANR?

    (1)5s内无法响应用户输入事件(例如键盘输入, 触摸屏幕等).

    (2)BroadcastReceiver在10s内无法结束

    (3)Service 20s内无法结束(低概率)

  28. 设计模式?

  29. RxJava?

  30. MVP,MVC,MVVM?

  31. 手写算法(选择冒泡必须要会)?

  32. JNI ?

    (1)安装和下载Cygwin,下载 Android NDK

    (2)在ndk项目中JNI接口的设计

    (3)使用C/C++实现本地方法

    (4)JNI生成动态链接库.so文件

    (5)将动态链接库复制到java工程,在java工程中调用,运行java工程即可

  33. RecyclerView和ListView的区别?

  34. Universal-ImageLoader,Picasso,Fresco,Glide对比?

  35. Xutils, OKhttp, Volley, Retrofit对比?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值