[文章]HarmonyOS服务卡片开发-入口设置

阅读量0
0
2
一、简介
在原子化服务开发的过程中,新建的原子化服务四张卡片都是进入一个页面,那有什么方法让不同卡片进入不同入口,通过修改配置文件可以实现该需求。
二、方法
1、修改配置文件
"forms": [
  {
    "jsComponentName": "wkwidget",
    "isDefault": false,
    "scheduledUpdateTime": "10:30",
    "defaultDimension": "1*2",
    "name": "wkwidget",
    "description": "",
    "colorMode": "auto",
    "type": "JS",
    "supportDimensions": [
      "1*2"
    ],
    "updateEnabled": true,
    "updateDuration": 1
  },
  {
    "jsComponentName": "xkwidget",
    "isDefault": true,
    "scheduledUpdateTime": "10:30",
    "defaultDimension": "2*2",
    "name": "xkwidget",
    "description": "",
    "colorMode": "auto",
    "type": "JS",
    "supportDimensions": [
      "2*2"
    ],
    "updateEnabled": true,
    "updateDuration": 1
  },
  {
    "jsComponentName": "zkwidget",
    "isDefault": false,
    "scheduledUpdateTime": "10:30",
    "defaultDimension": "2*4",
    "name": "zkwidget",
    "description": "",
    "colorMode": "auto",
    "type": "JS",
    "supportDimensions": [
      "2*4"
    ],
    "updateEnabled": true,
    "updateDuration": 1
  },
  {
    "jsComponentName": "dkwidget",
    "isDefault": false,
    "scheduledUpdateTime": "10:30",
    "defaultDimension": "4*4",
    "name": "dkwidget",
    "description": "",
    "colorMode": "auto",
    "type": "JS",
    "supportDimensions": [
      "4*4"
    ],
    "updateEnabled": true,
    "updateDuration": 1
  }
]
2、添加js文件       
添加4JS文件夹,分别对应4种卡片。
图片1.png
在这些文件夹下新建.jSON文件,用于指定卡片进入的页面ACE
{
  "data": {},
  "actions": {
    "routerEvent": {
      "action": "router",
      "bundleName": "com.fkxxskj.bailianCard",
      "abilityName": "com.example.cardmodel.Ace.AboutAbility"
    }
  }
}
别忘了在html代码下应用该跳转。
<div class="container">
3、新建AceAbility
建立4ACE进行指定页面。
图片2.png
代码如下:
public class AboutAbility extends AceAbility {
    @Override
    public void onStart(Intent intent) {
        setInstanceName("default");
        setPageParams("pages/index/about/about",null);

        super.onStart(intent);

//        this.getWindow().addFlags(WindowManager.LayoutConfig.MOD_STATUS_BAR);
        this.setDisplayOrientation(AbilityInfo.DisplayOrientation.FOLLOWRECENT);
    }

    @Override
    public void onStop() {
        super.onStop();
    }
}
setInstanceName("default");
setPageParams("pages/index/about/about",null);
指定对应的页面。
附件:

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友