本资源是针对Android程序员面试题的精编第四版,由传智播客武汉校区就业部提供,注重实战与理论相结合。以下是部分内容的详细解析:
1. **Activity**:Android中的Activity是用户界面的主要组件,负责展示应用程序的各种视图。它是用户与应用交互的核心,每次启动一个新的Activity都会创建一个新的实例。Activity有完整的生命周期管理,包括 onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy()等方法,用于控制其显示、隐藏、暂停和销毁过程。
2. **Activity生命周期**:Activity的生命周期分为多个阶段,如初始化(onCreate())、显示(onStart()和onResume())、可见但不活动(onPause())、暂停(onStop())、完全停止(onDestroy())。理解这些方法的执行顺序对于正确管理资源至关重要。
3. **Activity类型**:常见活动类型有标准模式、单任务模式、单实例模式、任务与栈模式,以及后台服务模式等,每种模式都有不同的启动行为和资源管理规则。
4. **保存Activity状态**:可以通过 onSaveInstanceState() 和 onRestoreInstanceState() 方法保存和恢复Activity的状态,或者使用SharedPreferences、SQLite等本地存储技术。
5. **Activity间跳转**:当两个Activity进行切换时,会触发onPause()、onStop()、onCreate()和onResume()等方法,其中finish()方法会结束当前Activity。
6. **横竖屏切换**:在屏幕方向改变时,Activity的onConfigurationChanged()方法会被调用,用于处理布局和资源的适配。
7. **窗口样式设置**:通过setContentView()设置布局,还可以使用Window.setFlags()方法改变窗口属性,如添加Title Bar或全屏显示。
8. **退出Activity与应用**:通常使用finish()结束当前Activity,而Activity.finishAffinity()可以结束与之关联的任务。应用的退出则需要使用Application类的exit()方法,确保所有Activity关闭并清理资源。
9. **Activity启动模式**:四种模式包括标准模式(singleTask、standard)、单实例模式(singleInstance)、任务与栈模式(singleTop)以及前台启动模式(foreground)等,各有不同的启动和回退策略。
10. **Context, Activity, Application区别**:Context是Android中的全局上下文,用于访问应用资源和服务;Activity是UI元素和逻辑的集合;Application是整个应用的生命周期管理者,继承自Context。
11. **数据传递方式**:除了Intent,Android还提供了BroadcastReceiver(广播接收器)和ContentProvider(内容提供者)来实现跨组件的数据传递,尤其是后者用于不同应用之间的数据共享。
12. **Context的作用**:Context是Android中的核心概念,它代表了当前上下文环境,用于获取资源、启动其他组件、执行系统操作等。
这部分内容涵盖了Android编程的基础知识,对于准备Android程序员面试的求职者来说,理解和掌握这些知识点是必不可少的,它们涉及到Activity的管理、数据传递机制以及应用程序的结构设计。通过深入理解这些内容,面试者能够展现出扎实的Android开发技能。