首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android面试题集合

生命周期及横竖屏切换时生命周期 启动模式 内存不足时,怎么保持Activity一些状态,在哪个方法里面做具体操作?...介绍ActivityService、Broadcast、BroadcastReceiver、Intent、IntentFilter 怎么在启动一个activity时就启动一个service 同一个程序不同...如何将一个Activity设置成窗口样式 如何退出Activity?如何安全退出调用多个ActivityApplication? Activity中如何动态添加Fragment?...activity启动过程 参考 不用Service,B页面为音乐播放,A跳到B,再返回,如何使音乐继续播放? windows和activity之间关系?...ServiceActivity怎么实现通信 Service有哪些启动方法,有什么区别,怎样停用Service? 什么是IntentService?有何优点?

79910

Android中进程和线程

默认情况下,同一应用所有组件在相同进程和线程(称为“主”线程)中运行。 如果某个应用组件启动且该应用存在进程(因为存在该应用其他组件),则该组件会在此进程内启动并使用相同执行线程。...如果一个进程满足以下任一条件,即视为前台进程: 托管用户正在交互 Activity调用 Activity onResume() 方法) 托管某个 Service,后者绑定到用户正在交互...Activity 托管正在“前台”运行 Service(服务调用 startForeground()) 托管正执行一个生命周期回调 Service(onCreate()、onStart() 或 onDestroy...例如,如果前台 Activity 启动了一个对话框,允许在其后显示上一 Activity,则有可能会发生这种情况 托管绑定到可见(或前台)Activity Service 可见进程被视为是极其重要进程...4.后台进程 包含目前对用户不可见 Activity 进程(调用 Activity onStop() 方法)。

1.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

Android SDK上手指南:知识测试

元素包含在清单当中,从而在应用程序设备菜单中启动时执行该activity?...仔细检查文件名字符串。 将我们I/O代码放置在一个独立类当中。 尝试并获取与I/O代码相关数据块。 向用户输出警告信息。...使用一个单独进程、而不要利用用户界面进程进行数据获取。 在主activity类中一个方法内获取数据。 将检索数据保存在SQLite数据库当中。 问题十四 以下哪种说法存在错误?...即使是在启动serviceactivity停止运行之后、该service仍将继续处于运行状态。 除非用户利用后退按钮进行退出操作,否则activity将始终处于运行状态。...Intent Thread View Service 问题十六 当一款应用程序启动并处于resumed状态时,以下哪种回调方法不会执行?

86520

Android Service 服务(二)—— BroadcastReceiver

广播接收器只能接收广播,对广播通知做出反应,很多广播都产生于系统代码,如:时区改变通知、电池电量不足、用户改变了语言偏好,或者开机启动等 广播接收器没有用户界面,但是它可以为它们接收到信息启动一个Activity...中,PlayMusicService中通过重写OnClickListener 接口onClick()方法实现对播放音乐控制,把音乐各种操作用数字通过Intent传递给service 然后通过构造一个Intent...启动 sendBroadcast(intent); 广播,通过实现onReceive()方法,解析Activity中IntentBundle数据。...op数值决定启动context.startService(it); 服务 或 关闭context.stopService(it); 服务 4、Service中,处理BroadcastReceiver广播启动...onDestroy(),停止并释放mediaPlayer音乐资源,如果当执行context.stopService()时调用此方法 5、Activity中,onClick()函数中close与exit

1.6K20

Android应用界面开发——Service与IntentService(实现定时更换壁纸)

meta-data:数据格式 uses-library:第三方类库 Service中定义了一系列生命周期方法: IBinder onBind(Intent intent):该方法Service子类必须实现方法...只是重写了Service组件onCreate()、onStartCommand()、onDestroy()、onBind()等方法,重写这些方法时只是打印了一个字符串。...绑定本地Service并与之通信——bindService()方式启动 如果Service和访问者之间需要进行方法调用或者交换数据,则应该使用bindService()和unbindService()方法启动...类实现了onBind()方法,该方法返回一个可访问该Service状态数据(count)IBinder对象,该对象将被传给该Service访问者。...当Activity调用bindService()绑定一个通过startService()启动Service时,系统只是把Service内部IBinder对象传给Activity,并不会把该Service

2.3K30

《Android应用开发揭秘》连载3

当startActivity方法被调用时,将触发解析myIntent动作,该机制提供了两个关键好处: * Activity能够重复利用其他组件中以Intent形式产生请求。...另外,还可以通过使用Context.bindService()方法连接到一个Service上(如果这个Service当前还没有处于启动状态,则将启动它)。...其实Activity类中还有很多类似于onCreate方法,比如onStart、onResume、onPause、onDestroy等,而这些方法都是系统自动调用,名字上大概就可以看出这是一些关于生命周期方法...这里我们看到,当程序Activity01界面进入Activity02界面时,并不是马上将Activity01销毁,而是待Activity02启动之后将Activity01停止并销毁。...这里我们看到,当程序Activity02界面返回Activity01界面时,并不是马上将Activity02销毁,而是待Activity01启动之后将Activity02停止并销毁。

85520

Android service ( 一 ) 三种开启服务方法

三、 Service生命周期 Service生命周期并不像Activity那么复杂,它只继承了onCreate()、onStart()、onDestroy()三个方法 当我们第一次启动Service...这里需要注意是,如果Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。...它可以通过Service.stopSelf()方法或者Service.stopSelfResult()方法来停止自己,只要调用一次stopService()方法便可以停止服务,无论调用了多少次启动服务方法...只有少数前台进程可以在任何给定时间内运行,销毁他们是系统万不得、最后选择——当内存不够系统继续运行下去时。...3 一个服务进程是一个通过调用startService()方法启动服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心,比如后台播放音乐或网络下载数据

3.2K10

Android:Intent介绍 & 使用方法

作用 指定当前组件要完成动作 在 Android 不同组件间 传递数据 ActivityService、BroadcastReceiver之间通信载体 = Intent 下面,将根据...通过ActivitystartActivity()执行该意图操作(接收一个Intent对象) // 将构建好Intent对象传入该方法就可启动目标Activity startActivity...使用2:不同组件间 传递数据 使用方法 在当前Activity把要传递数据暂存在Intent中(通过PutExtra() )、在新启动Activity中取出Intent中数据 可传递数据类型...数据传递代码 // 目的:将FristActivity中一个字符串传递到SecondActivity中,并在SecondActivity中将Intent对象中数据(FristActivity传递过来数据...; //putExtra()方法接收两个参数:第一个是键,第二个是值,代表真正要传递数据

1.2K20

Android四大组件之一Service

Service可以分为以下两种类型: Started(启动):当Activity通过startService()方法启动服务时,服务处于started状态。一旦启动,就算组件被销毁也不会停止。...只有自身调用stopSelf()或者其他组件调用stopService()才停止 Bound(绑定):当Activity通过bindService()方法启动服务时,服务处于bound状态。...可以实现如下任务: 创建区别于主线程线程来执行发送到onStartCommand()方法全部Intent 创建工作队列,每次传递一个Intent到onHandleIntent() 所有请求处理完毕后停止服务...也就是自动生成return语句不能改 2.继承Service类 使用IntentService将简化启动服务实现,但如果要处理多线程,则可以继承Service来处理各个Intent 对于每次启动请求...包含客户端能调用公共方法 返回当前Service实例,其中包含客户端能调用方法 返回服务管理其他类实例 (2)onBind()回调方法中返回Binder实例 (3)在客户端,onServiceConnected

68630

Carson带你学Android:这是一份全面&详细Intent学习指南

作用 指定当前组件要完成动作 在 Android 不同组件间 传递数据 ActivityService、BroadcastReceiver之间通信载体 = Intent 下面,将根据Intent...中数据 方法1:putExtra() // 目的:将FristActivity中一个字符串传递到SecondActivity中,并在SecondActivity中将Intent对象中数据(FristActivity...通过putExtra()方法传递一个字符串到SecondActivity; // putExtra()方法接收两个参数:第一个是键,第二个是值(代表真正要传递数据) intent.putExtra...启动Activity startActivity(intent); // 2. 数据取出(在被启动Activity中) // a....启动Activity startActivity(intent); // 2. 数据取出(在被启动Activity中) // a.

40830

Service基础

ServiceActivity一样,也有一个启动到销毁过程,但是Service这个过程比Activity要简单多。...通过startService方式启动Activity生命周期 Service启动到销毁 只会经历如下三个阶段 创建服务 开始服务 销毁服务 一个服务需要继承自android.app.Service...举个例子,某个Service需要定时服务器获取最新数据:通过一个定时器每隔指定N分钟让定时器启动Service去获取服务端最新数据。...假设Service在从服务器获取最新数据过程中被Android系统强制杀掉,Service不会再重新创建,这也没关系,因为再过N分钟定时器就会再次启动Service并重新获取数据。...---- 开机启动Service 详见 Service 开机接受广播,启动服务问题 ---- 判断Service是否注册 Android SDK 并没有直接提供API来判断某个Service是否已经注册

1.9K70

我所理解Intent 和Intent-filter

通过将 Intent 传递给 startActivity(),可以启动 Activity 实例。Intent 描述了要启动 Activity,并携带了任何必要数据。...Intent 描述了要启动服务,并携带了任何必要数据。 如果服务旨在使用客户端-服务器接口,则通过将 Intent 传递给 bindService(),可以其他组件绑定到此服务。...注意:为了确保应用安全性,启动 Service 时,请始终使用显式 Intent,且不要为服务声明 Intent 过滤器。...找到匹配项之后, [3] 该系统通过调用匹配 ActivityActivity B) onCreate() 方法并将其传递给 Intent,以此启动匹配 Activity。...b)action 指定要执行通用操作(例如,“查看”或“选取”)字符串。 对于广播 Intent,这是指发生且正在报告操作。

1.3K90

【Android笔记】Android Service 服务

三、 Service生命周期 Service生命周期并不像Activity那么复杂,它只继承了onCreate()、onStart()、onDestroy()三个方法 当我们第一次启动Service时...这里需要注意是,如果Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。...它可以通过Service.stopSelf()方法或者Service.stopSelfResult()方法来停止自己,只要调用一次stopService()方法便可以停止服务,无论调用了多少次启动服务方法...> 五、 代码解析 1、Activity中,PlayMusicService中通过重写OnClickListener 接口onClick()方法实现对播放音乐控制,把音乐各种操作用数字通过Intent...3 一个服务进程是一个通过调用startService()方法启动服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心,比如后台播放音乐或网络下载数据

75110

Android Service 服务(一)—— Service

三、 Service生命周期 Service生命周期并不像Activity那么复杂,它仅仅继承了onCreate()、onStart()、onDestroy()三个方法 当我们第一次启动Service...这里须要注意是,假设Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。...它能够通过Service.stopSelf()方法或者Service.stopSelfResult()方法来停止自己,仅仅要调用一次stopService()方法便能够停止服务,不管调用了多少次启动服务方法...接口onClick()方法实现对播放音乐控制,把音乐各种操作用数字通过Intent传递给service 然后通过构造一个Intent , intent = new Intent(“com.homer.service.musicService...3 一个服务进程是一个通过调用startService()方法启动服务,而且不属于前两种情况。虽然服务进程没有直接被用户看到,但他们确实是用户所关心,比方后台播放音乐或网络下载数据

1.2K10

Android Service 服务(一)—— Service

三、 Service生命周期  Service生命周期并不像Activity那么复杂,它只继承了onCreate()、onStart()、onDestroy()三个方法 当我们第一次启动Service...这里需要注意是,如果Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。...它可以通过Service.stopSelf()方法或者Service.stopSelfResult()方法来停止自己,只要调用一次stopService()方法便可以停止服务,无论调用了多少次启动服务方法...接口onClick()方法实现对播放音乐控制,把音乐各种操作用数字通过Intent传递给service 然后通过构造一个Intent , intent = new Intent("com.homer.service.musicService...3 一个服务进程是一个通过调用startService()方法启动服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心,比如后台播放音乐或网络下载数据

1.2K30

Android Service 服务解说

Activity那么复杂,它只继承了onCreate()、onStart()、onDestroy()三个方法 当我们第一次启动Service时,先后调用了onCreate()、onStart()这两个方法...这里需要注意是,如果Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。...它可以通过Service.stopSelf()方法或者Service.stopSelfResult()方法来停止自己,只要调用一次stopService()方法便可以停止服务,无论调用了多少次启动服务方法...> 五、代码解析 1、Activity中,PlayMusicService中通过重写OnClickListener 接口onClick()方法实现对播放音乐控制,把音乐各种操作用数字通过Intent...3 一个服务进程是一个通过调用startService()方法启动服务,并且不属于前两种情况。尽管服务进程没有直接被用户看到,但他们确实是用户所关心,比如后台播放音乐或网络下载数据

53530

Android四大组件全面解析,夯实基础。

1.2 远程服务(Remote Service) > 该服务是独立进程,对应进程名格式为所在包名加上指定 android:process 字符串。...: 定义一个类继承 service manifest.xml文件中配置 service (当然as一键创建不用配置) 使用contextstartService(Intent)方法启动服务 不使用时...``ContentProvider` 中表名 为`User` 中 `id`为1数据 // 特别注意:URI模式存在匹配通配符* & # // *:匹配任意长度任何有效字符字符串 // 以下...1.onCreaete() 初始化内容提供器,通常会在这里完成,对数据创建和升级数据库,返回true,和false, 2.query() 内容提供器中查询数据,使用uri参数确定来查询那个那张表...5.delete() 内容提供器中删除数据2,使用uri参数来确定删除哪一样表中数据,selection和selectionArgs参数用于约束删除那些行,被删除行数将作为返回值返回。

83230

Android 悬浮窗功能实现

3.既然ServiceActivity是通过bind去绑定,说明当悬浮窗显示时候,通话Activity虽然不可见但仍在运行。...如何将acitivity置于后台 其实很简单,我们调用一个方法即可 moveTaskToBack(true); 这个方法含义就是将当前任务战置于后台,so,为什么我要在第二个Activity中实现原因之一...,因为默认Activity启动模式是标准模式,而上面方法会将任务栈置于后台而不是一个单独Activity,所以我们为了显示悬浮窗时不影响操作软件其他功能,我们要将通话页面的Activity设置为...singleInstance,这样当调用上面方法时候只是将通话页面所在Activity栈置于后台,如果你还不了解启动模式可以移步至上一篇文章:Activity启动模式。...这个问题简单说就是,如果你在通话页面呼叫某人,通话过程中按Home键,然后电话挂断,此时你任务程序中切回应用,会再次呼叫这个人,也就是这种状态下重新回到了onCreate方法

6K10
领券