Android面试复习:四大组件,生命周期,Binder解析

0 下载量 185 浏览量 更新于2024-08-31 收藏 269KB PDF 举报
"Android基础知识面试复习,涵盖四大组件、Activity与Fragment生命周期、启动模式、Service、广播及Binder机制等核心概念。" 在Android开发中,掌握基础是非常关键的,特别是对于面试来说,这些知识点是考察开发者专业技能的重要部分。让我们一一探讨这些主题: 1. **四大组件** - **Activity**:作为用户界面的主要承载者,Activity负责展示应用程序的功能和用户交互。它有自己的生命周期,包括onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy()等方法。 - **Service**:Service是后台运行的服务,通常没有用户界面,用于执行长时间任务,如播放音乐或网络通信。它的生命周期包括onStartCommand()和onBind()等方法。 - **BroadcastReceiver**:广播接收器用于监听系统或自定义的广播事件,当特定事件发生时执行相应的处理代码。 - **ContentProvider**:内容提供商允许在不同应用程序之间共享数据,常用于存储和检索结构化数据,如联系人或媒体库。 2. **Activity和Fragment的生命周期** - Activity的生命周期由上述提到的方法组成,而Fragment则有自己的生命周期,包括onAttach(), onCreate(), onCreateView(), onViewCreated(), onStart(), onResume(), onPause(), onStop(), onDestroyView(), onDestroy(), onDetach()等。Fragment可以嵌入到Activity中,增强界面的复用性和灵活性。 3. **Activity的四种启动模式** - **Standard**:每个启动请求都会创建新的Activity实例。 - **SingleTop**:如果新Activity已经在栈顶,就复用它,否则创建新的实例。 - **SingleTask**:如果新Activity在栈中存在,移除它之上的所有Activity并复用它。 - **SingleInstance**:在整个系统中只有一个实例,且在单独的任务栈中。 4. **Service的启动方法与生命周期** - 可以通过startService()启动Service,执行一次性任务;或通过bindService()绑定Service,执行长期连接的任务。Service的生命周期由onCreate(), onStartCommand(), onBind(), onRebind(), onUnbind(), onDestroy()等方法控制。 5. **广播** - 广播分为有序广播(Ordered Broadcast)和无序广播(Broadcast)。有序广播可以根据优先级逐个接收,而无序广播所有接收者同时收到。 - 注册方式有两种:静态注册(在AndroidManifest.xml中声明)和动态注册(在代码中注册)。静态注册在应用启动时自动激活,即使应用不在运行也能接收广播;动态注册需在运行时注册,应用停止后不再接收。 6. **广播的发送与接收原理** - 发送广播使用sendBroadcast(),sendOrderedBroadcast()或sendStickyBroadcast()。接收广播通过实现BroadcastReceiver类,并重写onReceive()方法。 - 接收广播时,系统会根据广播Intent的Action匹配接收者,并调用其onReceive()方法。 7. **Android Binder机制** - Binder是Android特有的进程间通信(IPC)机制,允许不同进程的对象之间进行通信。选用Binder是因为它提供了安全、高效的数据传输,并且是Android系统组件间通信的基础。 了解这些基础知识对成为一名合格的Android开发者至关重要,它们是构建应用程序、理解和解决实际问题的基础。在面试中,能够深入理解并熟练运用这些知识点将大大提升你的竞争力。