WEB开发网
开发学院手机开发Android 开发 有关Android调用服务全解析 阅读

有关Android调用服务全解析

 2010-06-01 15:09:00 来源:WEB开发网   
核心提示:进行Android调用服务时,你的程序只需要建立一个intent对象,有关Android调用服务全解析,这个intent对象包含请求的数据,并调用startActivity(),它还有一些其他 的功能,如:指明需要连接的库、识别程序希望被授予的权限,当前的acitivity被弹出栈,之前的activity成为正在运行的

进行Android调用服务时,你的程序只需要建立一个intent对象,这个intent对象包含请求的数据,并调用startActivity(),当前的acitivity被弹出栈,之前的activity成为正在运行的。

被激活的activity可以通过调用 getIntent() 方法获取激活它的intent。Android调用服务acitivity 的onNewIntent() 方法来传送其他后来的intent。(注:一个activity可以同时被多个intent激活)Activity经常会调用其他的activity,如果它需要被调用的activity返回的数据,可以调用startActivityForResult() 方法,而不是 startActivity()。

例如,某个activity调用另外一个activity用来让用户选择一个图片,另外一个activity应该返回用户选择的图片。结果通过第一个activity的onActivityResult() 返回,返回的形式也是intent。service通过调用 Context.startService()被开始。Android调用服务的onStart() 方法,并把intent传送给它。

类似的,intent可以通过 Context.bindService() 方法建立同正在运行的服务的联系。服务通过onBind() 方法获取intent。如果服务没有启动, bindService() 方法可以选择是否启动服务。例如,一个activity可能会想建立与后台播放音乐的服务的通信。

这样用户就可以通过activity控制后台的播放。因此activity可能会调用 bindService() 方法来建立连接,然后再调用service公开的接口。程序可以调用Context.sendBroadcast(), Context.sendOrderedBroadcast(), 和Context.sendStickyBroadcast()来传递intent初始化一个broadcast。broadcast 通过 onReceive() 方法接收。

Android开始一个应用程序之前,它必须知道有哪些文件,因此程序必须在一个manifest文件中声明所有用到的组件。这些声明的组件会被编译到apk文件中。.apk 文件含有程序源代码和资源。

(注:相当于项目文件)装箱单是一个xml文件,在所有的程序中命名都是AndroidManifest.xml 。它还有一些其他 的功能,如:指明需要连接的库、识别程序希望被授予的权限。

但是装箱单的主要任务还是向android声明程序的组件。一份装箱单的例子:

1. < ?xml version="1.0" encoding="utf-8"? >

2.

3. < manifest . . . >

4.

5. < application . . . >

6.

7. < activity android:name="com.example.project.FreneticActivity"

1 2  下一页

Tags:有关 Android 调用

编辑录入:coldstar [复制链接] [打 印]
赞助商链接