Anadroid 面试题
来源:互联网 发布:js select 不可编辑 编辑:程序博客网 时间:2024/06/05 01:05
1. 请描述一下Activity 生命周期。
创建 onCreate - 启动onStart– 开始 onResume– 暂停 onPause– 结束 onStop– 销毁onDestroy
2. 你后台的Activity被系统 回收怎么办?如果后台的Activity由于某原因被系统回收可了,如何在被系统回收之前保存当前状态?
除了在栈顶的activity,其他的activity都有可能在内存不足的时候被系统回收,一个activity越处于栈底,被回收的可能性越大.
3.service是否在main thread中执行, service里面是否能执行耗时的操作?
如果没有显示的指定service所运行的进程, Service和activity是运行在当前app所在进程的main thread(UI主线程)里面
service里面不能执行耗时的操作(网络请求,拷贝数据库,大文件 )
4. 同一个程序,但不同的Activity是否可以放在不同的Task任务栈中?
在激活一个新的activity时候, 给intent设置flag
Intent的flag添加FLAG_ACTIVITY_NEW_TASK singleinstance 单独的任务栈
这个被激活的activity就会在新的task栈里面…
5. Activity怎么和service绑定,怎么在activity中启动自己对应的service?
bindService () 把service 与调用者绑定 ,如果调用者被销毁, service会销毁
通过bindService的方法去启动一个服务,
6.什么是Service以及描述下它的生命周期。Service有哪些启动方法,有什么区别,怎样停用Service?
Service是运行在后台的android组件,没有用户界面,不能与用户交互,可以运行在自己的进程,也可以运行在其他应用程序的上下文里。
当用Context.startService()来启动时,Service的生命周期依次为:
oncreate——>onStartCommand——>onDestroy
当用Context.bindService()启动时:
onStart——>onBind——>onUnbind——>onDestroy。
停用Service使用Context.stopService。
7.什么是IntentService?有何优点?
普通的service ,默认运行在ui main 主线程,带有异步处理的service类,
Acitivity的进程,当处理Intent的时候,会产生一个对应的Service
处理耗时的操作,
8. 什么时候使用Service?
当需要创建在后台运行的程序的时候(主进程不能进行耗时操作),就要使用到Service。
9. 请描述一下Intent 和 Intent Filter。
Android 中通过 Intent 对象来表示一条消息,一个 Intent 对象不仅包含有这个消息的目的地,还可以包含消息的内容,Intent filter: 可以理解为邮局或者是一个信笺的分拣系统…
10. 说说Activity,Intent,Service是什么关系 。
intent是activity和service的桥梁,activity主要操作显示界面,service在后台运行
11.请描述一下Broadcast Receiver
有序广播 无序广播
sendOrderedBroadcast
12. 请介绍下ContentProvider是如何实现数据共享的。
把自己的数据通过uri的形式共享出去
android 系统下 不同程序 数据默认是不能共享访问
13. 请介绍下Android的数据存储方式。
文件 数据库 sqlite 网络SharedPreference
14. 为什么要用ContentProvider?它和sql的实现上有什么差别?
屏蔽数据存储的细节,对用户透明,contentprovider 还可以去增删改查本地文件. xml文件的读取,更改,网络数据读取更改
15. 请介绍下Android中常用的五种布局。
FrameLayout(帧布局),LinearLayout (线性布局),RelativeLayout(相对布局),TableLayout(表格布局)
- Anadroid 面试题
- anadroid环境搭建
- anadroid inputmanager详细分析
- Anadroid-蓝牙相关
- 面试题....
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- 面试题
- UVa复合词
- 总结Git常用命令以及常用操作总结
- 一些函数的应用
- vim存活日志2---折叠设置
- opencv中彩色图像通道分离、合成
- Anadroid 面试题
- ios集成极光推送的一些坑点及详解
- Java中的访问控制与修饰符
- OFBiz实现任务调度和JOB运行机制
- 玩一玩java定时器
- mysql中select * for update
- java String深入理解
- 局间中继与电路复用技术
- host文件地址