HarmonyOS鸿蒙Next应用开发-Page Ability启动Service Ability

HarmonyOS鸿蒙Next应用开发-Page Ability启动Service Ability Page Ablity响应交互,从而调用Service Ability是鸿蒙开发中最常用的交互方式,在Page Ablity使用startAbility(intent)启动Service Ability,Service Ability端在onCommend做出响应。

Page Ablity:

Intent intent = new Intent();
Operation operation = new Intent.OperationBuilder()
    .withDeviceId("")
    .withBundleName("mytest.app")
    .withAbilityName("com.example.album.Ability.service.PlayServiceAbility")
    .build();
intent.setOperation(operation);
intent.setParam("item", item);
// 启动Service
context.startAbility(intent, 0);

Service Ability:

@Override
protected void onCommand(Intent intent, boolean restart, int startId) {
    super.onCommand(intent, restart, startId);
    HiLog.info(TAG, "发布公共事件");
    // 这里写响应内容
}

本文主要根据官方文档学习体验整理


更多关于HarmonyOS鸿蒙Next应用开发-Page Ability启动Service Ability的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

深夜刷帖,留个记号

更多关于HarmonyOS鸿蒙Next应用开发-Page Ability启动Service Ability的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


蛟龙同学到底是个人还是团队啊,真的牛

猜猜我是谁,

![深色代码主题](#)

就是这么简单…………

看完助个力

文章是不错,不过就是代码看的费劲哈哈哈

哈哈,

姓名:张三
年龄:28
职业:软件工程师

技能:

  • 熟练使用Java
  • 熟悉Python

在HarmonyOS鸿蒙Next中,Page Ability可以通过startAbility()方法启动Service Ability。首先,在config.json中配置Service Ability的声明。然后,在Page Ability中创建Intent对象,设置目标Service Ability的bundleNameabilityName,最后调用startAbility(intent)启动Service。例如:

Intent intent = new Intent();
Operation operation = new Intent.OperationBuilder()
    .withDeviceId("")
    .withBundleName("com.example.myapp")
    .withAbilityName("com.example.myapp.MyServiceAbility")
    .build();
intent.setOperation(operation);
startAbility(intent);

确保Service Ability已在config.json中正确声明。

回到顶部