美文网首页面试题面试题
Android面试题5(通关2-1)

Android面试题5(通关2-1)

作者: 阿迪scar | 来源:发表于2019-06-28 21:35 被阅读35次

1: Activity . fragment(事务) 包括跳转.旋转屏幕的生命周期:

先展示一张大家众所周知activity流程图

1:onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。

2:onStart():Activity在屏幕上对用户可见时调用,但还不可与用户交互

3:onRestart():在activity停止后,在再次启动之前被调用。

4:onResume():Activity开始和用户交互的时候调用,这时该Activity是在Activity栈的顶部,并接受用户输入。

5:onPause():Activity被暂停时调用,也就是你要对你能看到的这个Activity说byebye的时候调用,这里可以做一些清理和保存工作

6: onStop():Activity被停止或者Activity变成不可见时调用

7:onDestroy():Activity被从内存中移除,一般发生在执行finish方法时或者Android回收内存的时候

跳转页面时生命周期:

A跳B,则点击跳转后,

A:onPause->onSaveInstanceState->onStop

再返回回来的话:

A:onRestart->onStart->onResume->onPostResume

旋转时:

再切换回竖屏时:

fragment生命周期


2 : SVN.Git的使用以及常见问题:

git常用快捷键:

常见问题:

svn 常用命令

# 创建分支 svn copy http://example.com/repos/myproject/trunk http://example.com/repos/myproject/branches/branch1 -m 'create brancht

' # 切换分支 svn sw http://example.com/repos/myproject/trunk

# 合并分支 svn sw http://example.com/repos/myproject/trunk svn merge http://example.com/repos/myproject/branches/branch1

# 删除 svn delete/rm/del

# 恢复 svn revert # svn ignore svn propset svn:ignore -F .svnignore .

# 解决冲突 svn resolve –accept working a.txt svn ci -m ’some comment’ a.txt

3:布局优化(标签,嵌套)

综上,布局的优化其实说白了就是减少层级,越简单越好,减少overdraw,就能更好的突出性能。 下面介绍几种布局优化的方式:

1:能用相对布局尽量用相对布局,少用线性布局,一般情况下用LinearLayout的时候总会比RelativeLayout多一个View的层级。而每次往应用里面增加一个View,或者增加一个布局管理器的时候,都会增加运行时对系统的消耗,因此这样就会导致界面初始化、布局、绘制的过程变慢。而通过扁平的RelativeLayout可以降低LinearLayout嵌套所产生布局树的层级

2:另外一种手段就是使用抽象布局标签include、merge、ViewStub

(1) include标签常用于将布局中的公共部分提取出来

(2)merge标签是作为include标签的一种辅助扩展来使用,它的主要作用是为了防止在引用布局文件时产生多余的布局嵌套。

(3) viewstub是view的子类。他是一个轻量级View, 隐藏的,没有尺寸的View。他可以用来在程序运行时简单的填充布局文件。

3:Android最新的布局方式ConstaintLayout  

4、利用Android Lint工具寻求可能优化布局的层次

4:不同Android系统版本适配:

参照上一篇:Android版本适配

5:机型适配:

 企业开发一款APP前会考虑支持多平台的问题,APP根据在不同的平台有不同的开发语言,但在开发过程中需要考虑到不同手机机型兼容的问题,特别是Android 系统下手机类型繁多,如何在不同的平台不同机型上避免APP的功能和使用问题尽可能减少。一般来说Android的适配或者兼容性,基本都是系统,分辨率,厂商和机型适配的问题。

1.操作系统适配,即适配Android 2.X,4.X,5.X……每个版本的操作系统,都有其特定的变化,对于App开发者而言,最重要的一点就是要明确每一个版本API Changed List。

2.厂家型号,即适配三星、小米、Note5、米2……这块有两种适配方式,一是公版适配,二是定制开发。我们先从公版适配说起,这也是大多数App在用的方式。   公版适配这里指的是只存在一套代码,一个APK,要适配所有的厂商或机型。比较差的方式通常就是在代码中涉及到不同厂商或型号的地方通过if语句利用Build里的厂商标识等进行不同的策略,其结果就是适配得越多,if语句越复杂,越难维护。其实只要利用一个工厂模式就可以做得更灵活一些,

 3.硬件兼容。主要是对包括屏幕分、CPU、内存、外存、传感器等进行适配,其主要思路也是抽象隔离。 在数据层,最主要的是进行外部存储的适配,即考虑数据存储的位置、格式、易失性等。通常这种持久化的数据存储,都要考虑存储位置及其易失性问题,不要把关键数据保存在易失的外部存储当中,还有Android 5.X开始的外卡的不可访问性,进而,可以根据存储空间和数据特点考虑明文格式还是密文格式,压缩还是不压缩。

相关文章

  • Android面试题5(通关2-1)

    1: Activity. fragment(事务) 包括跳转.旋转屏幕的生命周期: 先展示一张大家众所周知acti...

  • 华为被虐,美团被刷花3个月从咸鱼到大厂Offer收割机「面试总结

    Android面试题由易—难,适合小白—高级架构师!(注:面试者通关利器!) 前言 【Android进阶小刘】是我...

  • Android 面试BAT大厂

    主要分为以下几部分: (1)java面试题(2)Android面试题(3)混合开发面试题(4)高端技术面试题(5)...

  • android面试题和答案1

    主要分为以下几部分: (1)java面试题(2)Android面试题(3)混合开发面试题(4)高端技术面试题(5)...

  • Android面试题

    Android面试必备: (一)、Java面试题 (二)、Android面试题 (三)、Android高级面试题

  • 面试题

    关注的面试题文集 Android面试题整理 Android工程师面试题大全 Android 面试题总结之Andro...

  • MQW-面试

    1.android面试题 https://www.jianshu.com/p/c70989bd5f29 大厂面试题...

  • Android面试总结二

    参考文章 40个Android面试题Java面试题集Android名企面试题及知识点整理Android面试题收集较...

  • Android 面试题(重点2)

    掘金官网Android面试题 Android 动画 Android 动画Android面试题 算法和数据结构 设计...

  • Android面试题4(通关四)

    网络框架原理: 1:okhttp原理,这个我总结的有,可以参考okhttp 2:市面上常见的网络框架有哪些? OK...

网友评论

    本文标题:Android面试题5(通关2-1)

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