## 什么是Activity?
Activity是android的四大组件中最常见的部分,是Android用于交互的部分。Activity有四种状态:Active/Runing、Paused、Stoped、Killed。主要有七个生命周期方法。通过Intent与其他Activity或者组件通信。
## 请描述一下Activity生命周期。
Activitiy的生命周期方法主要有七个:
onCreate()、onRestart()、onStart()、onResume()、onPause()、onStop()、onDestory()。
## 两个Activity之间跳转时必然会执行的是哪几个方法。
这个问题与 从A跳转到B需要执行那些生命周期方法 的意思是相同的。分为两种情况:
1. B不透明时,A执行除onDestory之外的全部方法,B执行到onResume方法;
2. B透明时,A执行到onPause方法,B执行到onResume方法。
## 横竖屏切换时候Activity的生命周期。
## 如何将一个Activity设置成窗口的样式。
在AndroidManifest.xml中在你需要显示为窗口的activity中添加如果属性:android:theme="@style/Theme.FloatActivity" 即可
## 你后台的Activity被系统回收怎么办?如果后台的Activity由于某原因被系统回收可了,如何在被系统回收之前保存当前状态?
onSaveInstanceState在这个方法中保存信息。在onCreate中判断savedInstanceState是否为空,不为空就去出来。
## 如何退出Activity?如何安全退出已调用多个Activity的Application?
退出单个Activity调用finish()方法。
## 两个Activity之间怎么传递数据?
可以通过Intent,Bundle或者SharedPreferences都可以传递数据。
## 怎么在启动一个Activity时就启动一个service?
在activity的onCreate里写
startService(xxx);
然后
this.finish();结束自己..
这是最简单的方法 可能会有屏幕一闪的现象,如果UI要求严格的话用AIDL把
根据service与activity的生命周期,选择在onCreate或onResume中startService;当然要记得stopService.
## 同一个程序,但不同的Activity是否可以放在不同的Task任务栈中?
可以放在不同的Task中。需要为不同的activity设置不同的taskaffinity属性,启动activity的Intent需要包含FLAG_ACTIVITY_NEW_TASK标记
## Activity怎么和service绑定,怎么在activity中启动自己对应的service?
startService()一旦被创建 调用着无关 没法使用service里面的方法
bindService () 把service 与调用者绑定,如果调用者被销毁, service会销毁
bindService() 我们可以使用service 里面的方法
bindService(). 让activity能够访问到service里面的方法
- 空白目录
- 自我介绍
- Android面试题
- Handler
- 网络请求框架
- 图片处理框架Picasso,Glide
- Android最佳性能实践OOM
- 异步:RxJava,AsyncTask
- View,ViewGroup事件分发
- 消息传递:EventBus
- HTTPS和HTTP的区别
- 进程间通信的方式
- HttpClient与HttpUrlConnection的区别
- 性能优化
- Java多线程
- Fragment状态保持和恢复
- 讲解一下Context
- JNI
- java虚拟机和Dalvik虚拟机的区别
- 线程sleep和wait有什么区别
- 保存Activity状态
- WebView与js交互(调用哪些API)
- 内存泄露检测,内存性能优化
- 布局优化
- 自定义view和动画
- 设计模式(单例,工厂,观察者。作用,使用场景)
- String,Stringbuffer,Stringbuilder 区别
- 开源框架,为什么使用,与别的有什么区别
- Android大厂面试题
- 爱奇艺
- 小米
- 腾讯
- 阿里
- 今日头条
- 共同问到的
- 其他问题
- 框架MVC、MVP、MVVM
- sleep和wait有什么区别
- React Native原理
- React Native面试题
- 数据结构
- Android开发
- 基础知识
- Java基础
- 数据结构
- 面向对象思想
- 设计模式
- 开发环境
- Android SDK
- Activity
- Service
- Broadcastreceiver
- Contentprovider
- ActionBar
- Fragment
- UI
- 通信
- 数据持久化
- 性能
- 调试
- 适配
- 测试
- 安全
- NDK
- 手机功能
- 第三方扩展
- 其他
- 2018 Java面试题
- Android(2017-2018)BAT面试题整理
- 2017下半年,一二线互联网公司Android面试题汇总
- 2018阿里Android面试题
- 一面
- 二面
- 三面