Android面试中的那些问题

1. Intent有哪些作用?

2. Android存储数据有哪些方式?

答:(1)通过SQLite数据库存储;

       (2)通过文件存储;

       (3)通过Content Provider存储数据;

       (4)通过网络存储数据;

       (5)SharedPreferences存储数据;


3. activity的启动模式有哪些?都是什么含义?

4. Intent传递二进制数据有哪些方法?

答:(1). 使用Serializable接口实现序列化,这是Java常用的方法。
       (2). 实现Parcelable接口,这里Android的部分类比如Bitmap类就已经实现了,同时Parcelable在Android AIDL中交换数据也很常见的。


5. 注册广播有哪几种方式?


6. 简述activity的生命周期。

答:activity的生命周期有以下这么7个:

onCreate(),onStart(),onRestart(),onResume(),onPause(),onStop(),onDestory()

可见的部分是从onStart()到onStop()

前台生命周期是从onResume()到onPause()


7. android的布局有几种?有哪些布局可以用来编写九宫格?

答:有五种布局。

       (1)LinearLayout线性布局;

       (1)FrameLyout框架布局;

       (1)RelativeLayout相对布局;

       (1)AbsoluteLayout绝对布局;

       (1)TableLyout表格布局。

       我们可以用LinearLayout、RelativeLayout、AbsoluteLayout、TableLayout来编写这样的九宫格程序。不过个人觉得TableLayout更简单一些,对于这样的程序。


8. 启动activity有几种方式?

9. 如果虚拟器(或是真机)与调试工具断开链接了,有什么解决办法?

答:打开VM的菜单的网络连接设置,勾选Connected的复选框,然后确认即可。


10. 如何让Activity变成一个窗口?

11. 请解释一下在单线程模型中Message、Handler、Message Queue、Looper之间的关系:

答:中单线程中我们通过Handler和Looper来进行线程间的通信。Message Queue用来存放Handler发布的消息,按照先进先出的原则来执行。Message中传递的信息,数据等。Looper是管理这些Message的管理员,而Handler不能进行线程间的通信,而是通过Looper来进行线程间的通信。Handler发布消息给Looper,Looper来管理这个消息队列。


12. 什么叫Android系统的碎片化?

答:众所周知,Android是基于Linux内核的。而Linux内核却是开源的。在开源的情况下,我们可以把那份共享的Linux改得连爹妈都不认识了。而正是我们这样肆无忌惮地改写,唯一的一份Linux内核就可以延生出了很多很多的Android版本,注意:这里说到的Android版本可不是我们常听到的Android2.0,Android2.3,Android4.0等等,而是像小米有小米的Android system,魅族有魅族的Android system,三星有三星的Android system,甚至是魅族的M8,M9,MX,MX2,MX3都不是一个Android system。这就是我们所说的Android系统的碎片化。



待续中。。。。。。。。。。

你可能感兴趣的:(android)