您的位置:首页 > 移动开发 > Android开发

Jollen 的 Android 教学(9): 启动 Service - startService()

2009-12-09 12:43 489 查看
  上一个课程里,我们实作了一个 Service 的类别称为 MokoService,现在我们想要在 Activity 里加载并启动 MokoService 类别,让它可以在背景执行,请依以下步骤完成这个任务。

  修改 AndroidManifest.xml

  在 Package Explorer 窗口里找到目前 Android 项目的信息描述文件,文件名是 AndroidManifest.xml。这是一个用来描述 Android 应用程序「整体信息」的档案,每个 Android 应用程序项目都会有一个。在这里修改 Androidmanifest.xml 的目的是为了「在我们的 Android 应用程序里加入一个 Service 类别」,这样才有办法启动 Service。修改后的内容如下,红色的部份是新增的描述:。

  package="com.moko.hello"

  android:versionCode="1"

  android:versionName="1.0.0">

  android:label="@string/app_name">

  这是什么意思呢?我们留待后续再做说明。接着只需要再加上一行程序代码,就能启动 MokoService 类别了。

  启动 Service - startService()

  回到 HelloM 类别,加入一行程序代码:

  public class HelloMoko extends Activity {

  /** Called when the activity is first created. */

  @Override

  public void onCreate(Bundle savedInstanceState) {

  super.onCreate(savedInstanceState);

  setContentView(R.layout.main);

  startService(new Intent ("com.moko.hello.START_MUSIC"));

  }

  }

  Activity 类别里有一个 method 叫做 startService:

  startService(Intent service)

  呼叫 startService() 即可启动一个 Service 类别,只是,startService() 的参数是一个「Intent」的型别,并不是所要启动的类别名称。「Intent」是一个很像「Event」的类别,后续我们再做比较精确的说明,在这里,我们不如把 Intent 当成是 Event(事件)。

  当程序送出 com.moko.hello.START_MUSIC 事件给 Android 时,Android 便去寻找能处理此事件的类别,然后启动它。在这里,能处理 com.moko.hello.START_MUSIC 事件的类别就是 MokoService,这个关系就是透过 AndroidManifest.xml 的设定实现的。

  --jollen

原文(http://www.miiceic.org.cn/07/0710/071010/200906301656195.asp

中程在线(北京)科技有限公司
中国信息产业培训网
www.miiceic.org.cn
咨询热线:400-7068-123
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐