android笔试题

发布 2024-04-17 03:30:11 阅读 1494

1. 请描述下activity的声明周期。

2. 如果后台的activity由于某种原因被系统**,如何在**之前保存当前状态。

ons**einstancestate().

程序中的某一个activity a 在运行时,主动或被动的运行另一个新的activity b,这个时候a会执行ons**einstancestate()。b完成以后又回来找a,这个时候有两种情况:一是a被**,二是a没有被**,被**的a就要重新调用oncreate()方法,不同于直接启动的是这回oncreate()里是带上了参数s**edinstancestate;而没被**的就直接执行onresume(),跳过oncreate()。

3. 如何将一个activity设置成窗口样式。

在中activity定义处添加。

android:theme="@android:style/" 或。

android:theme="@android:style/"。

4. 如何退出activity?如何安全退出已调用多个activity的application?

直接finish()即可。

5. 请介绍下android大众常用的五种布局。

framelayout(框架布局)

linearlayout(线性布局)

absolutelayout(绝对布局)

relativelayout(相对布局)

tablelayout(**布局)

6. 请介绍下android的数据存储方式。

sharedpreferences方式。

文件存储方式。

sqlite数据库方式。

内容提供器(content provider)方式。

网络存储方式。

7。介请绍下contentprovider是如何实现数据共享的。

8。如何启用service,如何停用service。

一。步骤。第一步:继承service类。

public class smsservice extends service

第二步:在文件中的节点里对服务进行配置:

二。和。服务不能自己运行,需要通过调用或方法启动服务。这两个方法都可。

以启动service,但是它们的使用场合有所不同。

1.使用startservice()方法启用服务,调用者与服务之间没有关连,即使调用者退出了,服务仍然运行。

使用bindservice()方法启用服务,调用者与服务绑定在了一起,调用者一旦退出,服务也就终止。

2.采用方法启动服务,在服务未被创建时,系统会先调用服务的oncreate()方法,接着调用onstart()方法。如果调用startservice()方法前服务已经被创建,多次调用startservice()方法并。

不会导致多次创建服务,但会导致多次调用onstart()方法。

采用startservice()方法启动的服务,只能调用方法结束服务,服务结束时会调用。

ondestroy()方法。

3.采用方法启动服务,在服务未被创建时,系统会先调用服务的oncreate()方法,接着调用onbind()方法。这个时候调用者和服务绑定在一起,调用者退出了,系统就会先调用服务的onunbind()方法,接着调用ondestroy()方法。

如果调用bindservice()方法前服务已经被绑定,多次调用bindservice()方法并不会。

导致多次创建服务及绑定(也就是说oncreate()和onbind()方法并不会被多次调用)。如果调用者希望与正在绑定的服务。

解除绑定,可以调用unbindservice()方法,调用该方法也会导致系统调用服务的onunbind()-ondestroy()方法。

三。service的生命周期。

oncreate() 该方法在服务被创建时调用,该方法只会被调用一次,无论调用多少次startservice()或bindservice()方法,服务也只被创建一次。 ondestroy()该方法在服务被终止时调用。

启动service有关的生命周期方法。

onstart()只有采用方法启动服务时才会**该方法。该方法在服务开始运行时被调用。

多次调用startservice()方法尽管不会多次创建服务,但onstart() 方法会被多次调用。

3. 启动service有关的生命周期方法。

onbind()只有采用方法启动服务时才会**该方法。该方法在调用者与服务绑定时被调用,当调用者与服务已经绑定,多次调用方法并不会导致该方法被多次调用。

onunbind()只有采用方法启动服务时才会**该方法。该方法在调用者与服务解除绑定时被调用。

备注:1. 采用startservice()启动服务。

intent intent = new intent(

startservice(intent);

intent intent = new intent();

startservice(intent);

启动。intent intent = new intent(

bindservice(intent, conn,//unbindservice(conn);/解除绑定。

9。注册广播有几种方式,这些方式有何优缺点?android引入广播机制的用意。

当实现了广播接收器,还要设置广播接收器接收广播信息的类型,这里是信息:

我们就可以把广播接收器注册到系统里面,可以让系统知道我们有个广播接收器。这里有两种,一种是**动态注册:

/生成广播处理。

smsbroadcastreceiver = new smsbroadcastreceiver();

/实例化过滤器并设置要过滤的广播。

intentfilter intentfilter = newintentfilter(""

/注册广播。

一种是在中配置广播

package=""

android:versioncode="1"

android:versionname="1.0">

android:label="@string/app_name">

android笔试题

1.请描述下activity的声明周期。正常启动的过程中,他们被调用的顺序是 oncreate onstart onresume,在activity被干掉的时候顺序是onpause onstop ondestroy 这样就是一个完整的生命周期,但是有人问了 程序正运行着呢来 了,这个程序咋办?中止了...

SQL笔试题笔试题

家庭住址,联系 create table stu 学号int 姓名varchar 8 年龄int,性别varchar 4 家庭地址varchar 50 联系 int 历varchar 6 3 修改学生表的结构,删除一列信息,家庭住址alter table stu drop column家庭地址4 向...

笔试题 笔试题目大全

一 选择题。选择题有单项选择 双项选择和多项选择三种类型,多项选择题是选择题中难度最大的一种,它并不指定正确答案的个数,可能只有一个是正确的,也可能两个是正确的,也可能全部是正确的。二 判断题。这类试题看似简单,但如思路不对,同样会造成错误。三 填空题。填空题的答案是唯一的,要用简明 准确 完整的语...