Android面试常问基础25题

640?wx_fmt=gif

640?wx_fmt=other

极力推荐文章:欢迎收藏Android 干货分享 

640?wx_fmt=other

1.四大组件是什么?

1.Activity:

  用户可操作的可视化界面,为用户提供一个完成操作指令的窗口。一个Activity通常是一个单独的屏幕,Activity通过Intent来进行通信。Android中会维持一个Activity Stack,当一个新Activity创建时,它就会放到栈顶,这个Activity就处于运行状态。

2.Service:

  服务,运行在手机后台,适合执行不需和用户交互且还需长期运行的任务。

3.ContentProvider:

  内容提供者,使一个应用程序的指定数据集提供给其他应用程序,其他应用可通过ContentResolver类从该内容提供者中获取或存入数据。它提供了一种跨进程数据共享的方式,当数据被修改后,ContentResolver接口的notifyChange函数通知那些注册监控特定URIContentObserver对象。

  如果ContentProvider和调用者在同一进程中,ContentProvider的方法(query/insert/update/delete等)和调用者在同一线程中;如果ContentProvider和调用者不在同一进程,ContentProvider方法会运行在它自身进程的一个Binder线程中。

4.Broadcast Receiver:

  广播接收者,运用在应用程序间传输信息,可以使用广播接收器来让应用对一个外部事件做出响应。

2.四大组件的生命周期和简单用法

1.Activity:

  onCreate()->onStart()->onResume()->onPause()->onStop()->onDestory()

onCreate():

  为Activity设置布局,此时界面还不可见;

onStart():

  Activity可见但还不能与用户交互,不能获得焦点

onRestart():

   重新启动Activity时被回调

onResume():

  Activity可见且可与用户进行交互

onPause():

  当前Activity暂停,不可与用户交互,但还可见。在新Activity启动前被系统调用保存现有的Activity中的持久数据.停止动画等。

onStop():

  当Activity被新的Activity覆盖不可见时被系统调用

onDestory():

Activity被系统销毁杀掉或是由于内存不足时调用

2.Service

1.onBind方式绑定的:

  bind 服务的生命周期如下:onCreate->onBind->onUnBind->onDestory

  不管调用bindService几次,onCreate只会调用一次,onStart不会被调用,建立连接后,service会一直运行,直到调用unBindService或是之前调用的bindServiceContext不存在了,系统会自动停止Service,对应的onDestory会被调用。

2.startService启动的:

  启动Service的声明周期如下:onCreate->onStartCommand->onDestory

  start多次,onCreate只会被调用一次,onStart会调用多次,该service会在后台运行,直至被调用stopService或是stopSelf

3.又被启动又被绑定的服务

  不管如何调用,onCreate()只被调用一次,startService调用多少次,onStart就会被调用多少次,而unbindService不会停止服务,必须调用stopService或是stopSelf来停止服务。必须unbindServicestopService(stopSelf)<

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Android

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值