精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

ArkTS元服務與關系型數據庫—計步卡片

數據庫 其他數據庫
這里主要講解一下ArKTS開發服務卡片,Codelabs開發的是JS服務卡片,還有在把這個JS卡片改為用ArkTS過程中。

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

前言

本篇帖子是參考Codelab基于Stage模型JS服務卡片,使用最新ArkTS元服務開發的,實現帶有卡片的計步應用,用于介紹卡片的開發及生命周期實現。需要完成以下功能:

  1. 消息通知欄,通知用戶今天所行走步數(行走步數是模擬的)。
  2. 元服務卡片,在桌面上添加2x2或2x4規格元服務卡片,能看到步數變化,也能看到當天所行走的進度。
  3. 關系型數據庫,用于查詢,添加用戶行走的數據。

ArkTS元服務與關系型數據庫-計步卡片-開源基礎軟件社區

知識點

  • 消息通知:提供通知管理的能力,包括發布、取消發布通知,創建、獲取、移除通知通道,訂閱、取消訂閱通知,獲取通知的使能狀態、角標使能狀態,獲取通知的相關信息等。
  • 關系型數據庫:關系型數據庫基于SQLite組件提供了一套完整的對本地數據庫進行管理的機制,對外提供了一系列的增、刪、改、查等接口,也可以直接運行用戶輸入的SQL語句來滿足復雜的場景需要。
  • 元服務卡片開發:卡片是一種界面展示形式,可以將應用的重要信息或操作前置到卡片,以達到服務直達、減少體驗層級的目的。
  • 卡片提供方:顯示卡片內容,控制卡片布局以及控件點擊事件。
  • 卡片使用方:顯示卡片內容的宿主應用,控制卡片在宿主中展示的位置。
  • 卡片管理服務:用于管理系統中所添加卡片的常駐代理服務,包括卡片對象的管理與使用,以及卡片周期性刷新等。
  • 軟件要求
  • DevEco Studio版本:DevEco Studio 3.1 Release及以上版本。
  • HarmonyOS SDK版本:API version 9及以上版本。
  • 硬件要求
  • 設備類型:華為手機3.1系統或運行在DevEco Studio上的遠程模擬器API9。
  • HarmonyOS系統:3.1.0 DeveloperRelease及以上版本。

講解

卡片更新邏輯和Codelabs是一樣的,詳情可以移步到Stage模型卡片(ArkTS)細看, 這里主要講解一下ArKTS開發服務卡片,Codelabs開發的是JS服務卡片,還有在把這個JS卡片改為用ArkTS過程中,需要注意的地方:

使用關系型數據庫時,Codelabs與使用最新版本API不同之處:

Codelabs源碼:

await DataRdb.getRdbStore(context, CommonConstants.RDB_STORE_CONFIG)
        .then((rdbStore: DataRdb.RdbStore) => {

本項目源碼:

await DataRdb.getRdbStore(context, CommonConstants.RDB_STORE_CONFIG)
        .then((rdbStore) => {

使用Chart組件和Polyline組件:
在JS服務卡片可以使用Chart組件來生成曲線圖表:

<chart type="line" id="Chart" datasets="{{ datasets }}" options="{{ options }}"></chart>

在ArkTS服務卡片,使用不了Chart組件,用Polyline組件來代替:

Polyline().width('100%').height('100%').points(this.setPolyLine(this.datasets))

默認EntryAbility.ts和EntryFormAbility.ts兩個文件的后輟都是ts的,其他文件后輟是ets的,當想在這兩個文件import其它文件時,提示以下信息,于是我把這兩個文件后輟都改為ets了。

Importing ArkTS files to JS and TS files is not allowed. <etsLint>

服務卡片如何接收更新數據,卡片頁面如何接收,后臺如何更新。
卡片頁面如何接收,比如步數參數如何定義:

let storage = new LocalStorage();

@Entry(storage)
@Component
struct WidgetCard {
  @LocalStorageProp('steps') steps: number = 0;
  ......

后臺如何更新:

// 創建卡片
    let formData: FormData = new FormData();
    formData.percent = 0;
    formData.steps = 0;
    return FormBindingData.createFormBindingData(formData);
    // 更新卡片
    FormProvider.updateForm(formData.formId, FormBindingData.createFormBindingData(formData))

2x2卡片界面部分代碼:

Stack() {
      Image($r("app.media.icon_2x2_card_background"))
        .width(this.FULL_WIDTH_PERCENT)
        .height(this.FULL_HEIGHT_PERCENT)
        .objectFit(ImageFit.Cover)

      Progress({ value: this.percent, total: 100, type: ProgressType.Ring }).width(100).height(100)
        .color(Color.White)           // 進度條前景色為灰色
        .style({ strokeWidth: 12})    // 設置strokeWidth進度條寬度為12vp
      Column() {
        Text('步數')
          .fontSize(10)
          .fontColor($r('app.color.text_font_color'))
        Text(this.steps.toString())
          .fontSize(26)
          .fontColor($r('app.color.text_font_color'))
        Text('步')
          .fontSize(10)
          .fontColor($r('app.color.text_font_color'))
      }
      .width(this.FULL_WIDTH_PERCENT)
      .height(this.FULL_HEIGHT_PERCENT)
      .alignItems(HorizontalAlign.Center)
      .justifyContent(FlexAlign.Center)
      .padding($r('app.float.column_padding'))
    }
    .width(this.FULL_WIDTH_PERCENT)
    .height(this.FULL_HEIGHT_PERCENT)
    .onClick(() => {
      postCardAction(this, {
        "action": "router",
        "abilityName": "EntryAbility",
        "params": {
          "message": "add detail"
        }
      });
    })

2x4卡片界面部分代碼:

Stack() {
      Image($r("app.media.icon_2x4_card_background"))
        .width(this.FULL_WIDTH_PERCENT)
        .height(this.FULL_HEIGHT_PERCENT)
        .objectFit(ImageFit.Cover)
      Row() {
        Column() {
          Text(`今天走了 ${this.mileage} 米`)
            .fontSize(16)
            .fontWeight(400)
            .opacity(0.9)
            .fontColor($r('app.color.text_font_color'))
          Row(){
            Text(this.steps.toString())
              .fontSize(40)
              .fontWeight(700)
              .fontColor($r('app.color.text_font_color'))
            Text('步')
              .fontSize(16)
              .fontWeight(400)
              .opacity(0.9)
              .fontColor($r('app.color.text_font_color'))
              .margin({left: 5, bottom: -10})
          }
          .margin({top: 10, bottom: 10})
          Text(`${this.percent}%`)
            .fontSize(16)
            .fontWeight(400)
            .fontColor($r('app.color.text_font_color'))
          Progress({ value: this.percent, total: 100, type: ProgressType.Linear })
            .color('#FFFFFF')
            .backgroundColor('#40FFFFFF')
            .style({ strokeWidth: 6})
            .margin({top: 4})
        }
        .width('50%')
        .height(this.FULL_HEIGHT_PERCENT)
        .alignItems(HorizontalAlign.Start)
        .justifyContent(FlexAlign.Center)
        .padding($r('app.float.column_padding'))
        Column() {
          Polyline()
            .width('100%').height('100%')
            .points(this.setPolyLine(this.datasets))
            .strokeDashOffset(-50)
            .fillOpacity(0)
            .strokeOpacity(0.5)
            .stroke(Color.White)
            .strokeWidth(3)
              // 設置折線拐角處為圓弧
            .strokeLineJoin(LineJoinStyle.Round)
              // 設置折線兩端為半圓
            .strokeLineCap(LineCapStyle.Round)
        }
        .width('50%')
      }

    }
    .width(this.FULL_WIDTH_PERCENT)
    .height(this.FULL_HEIGHT_PERCENT)

總結

通過學習Cabelabs案例,我們可以快速學到實踐知識,通過查看文檔指南,我們可以了解到更細的知識點,當我們腦子里有了一個應用的模型,所以通過Codelabs相似案例知識點,加上查看文檔指南、API參考,平常多看和參加學堂視頻課程,有了一定的知識量,做項目或回答一些問題,就是這么簡單了。

文章相關附件可以點擊下面的原文鏈接前往下載:

 https://ost.51cto.com/resource/2750。

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

責任編輯:jianghua 來源: 51CTO 開源基礎軟件社區
相關推薦

2018-07-18 09:16:39

關系型非關系型數據庫

2021-09-06 10:24:12

鴻蒙HarmonyOS應用

2011-05-12 09:51:26

2013-01-25 15:19:42

大數據關系型數據庫

2017-03-17 14:44:04

關系型數據庫原理

2010-12-10 10:17:21

關系型數據庫

2022-06-13 08:30:01

數據庫管理系統

2022-05-27 07:37:38

關系型數據庫Spanner

2018-01-29 12:56:27

數據庫關系型數據庫NewSQL

2013-04-26 16:18:29

大數據全球技術峰會

2022-12-27 08:38:45

關系型數據庫設計

2023-05-22 16:10:51

動態共享包數據庫

2021-01-26 13:31:48

數據庫關系型數據庫冗余

2016-08-23 14:25:19

MySQL約束數據庫

2021-07-28 14:40:57

鴻蒙HarmonyOS應用

2023-05-20 08:11:55

2022-07-27 08:32:01

數據庫MySQL

2022-09-05 17:52:44

數據庫技術

2015-03-30 10:16:22

2018-03-26 12:58:52

數據庫OracleMySQL
點贊
收藏

51CTO技術棧公眾號

欧美久久久久久久久久久久| 三年中国国语在线播放免费| 精品国产亚洲AV| 欧美不卡一区| 日韩精品一区二区在线| 性欧美大战久久久久久久| 暖暖视频在线免费观看| 免费国产亚洲视频| 欧美成人h版在线观看| 欧类av怡春院| 成人日韩av| 亚洲欧洲日本在线| 国产中文一区二区| 中文字幕人妻丝袜乱一区三区| 婷婷色综合网| 亚洲电影在线看| 一级黄色香蕉视频| 日本色护士高潮视频在线观看| 91丨九色丨黑人外教| 成人av在线网址| 日韩 欧美 综合| 日韩综合精品| 亚洲精品99999| 亚洲xxx在线观看| 污片视频在线免费观看| 久久久99久久| 风间由美久久久| 中文字幕黄色av| 亚洲经典在线| 粗暴蹂躏中文一区二区三区| 中国一级特黄录像播放| 中文成人在线| 色哟哟亚洲精品| 日韩人妻精品一区二区三区| 视频国产在线观看| 国产精一区二区三区| 日本高清不卡的在线| 青娱乐av在线| 日韩一级毛片| 亚洲欧美日韩一区二区在线 | 97影院秋霞午夜在线观看| 91麻豆文化传媒在线观看| 95av在线视频| 欧美a视频在线观看| 伊人激情综合| 欧美黑人xxx| 99久久久免费精品| 日韩欧美午夜| 亚洲人在线视频| 妖精视频一区二区| 日韩在线亚洲| 欧美一区二区免费观在线| 久久精品免费网站| 欧美男女交配| 91久久线看在观草草青青| 搞av.com| 99久久精品免费看国产小宝寻花| 亚洲蜜臀av乱码久久精品| 亚洲精品中文字幕乱码三区不卡| 青青草免费在线| 99久久精品国产麻豆演员表| 99精品国产高清一区二区| 波多野结衣一二区| 日本vs亚洲vs韩国一区三区 | 国产福利91精品一区二区三区| 国产原创欧美精品| av网站在线免费看| 国产成人亚洲综合a∨婷婷图片| 91在线高清视频| 97超碰人人模人人人爽人人爱| 日韩激情视频在线观看| 国产精品久久久久av免费| 中文字幕免费视频观看| 奇米精品一区二区三区四区| 国产精品丝袜白浆摸在线| 最近中文字幕免费在线观看| 理论片日本一区| 国产99在线|中文| 婷婷激情五月综合| 久久99热狠狠色一区二区| 成人h片在线播放免费网站| 国产乱码精品一区二三区蜜臂 | 天天综合色天天综合| 日本福利视频在线| 黄色成人免费网| 欧美少妇xxx| 麻豆网站免费观看| 欧美绝顶高潮抽搐喷水合集| 亚洲欧美在线x视频| 国产性猛交xx乱| 99国产**精品****| 欧美激情视频一区| 精品国产xxx| 男女男精品网站| 99r国产精品视频| 日本精品999| 中文字幕国产精品一区二区| 五月天在线免费视频| 波多野结衣在线观看| 一本色道久久综合亚洲aⅴ蜜桃| 欧美婷婷精品激情| 中文字幕日韩高清在线| 日韩乱码在线视频| 亚洲不卡在线播放| 一二三区精品| 国产日韩av在线| 欧美特级特黄aaaaaa在线看| 欧美激情一区二区三区不卡| 日韩精品免费一区| 欧美色网在线| 在线播放欧美女士性生活| 91精产国品一二三| 精品久久久中文字幕| 欧美另类高清videos| 久久久久在线视频| 岛国一区二区在线观看| 亚洲高清在线观看一区| 麻豆av在线播放| 精品视频在线视频| 中文字幕天堂网| 国产精品久久久久久久久久10秀| 欧美性视频网站| 国产成人精品一区二三区四区五区 | 最新在线中文字幕| 99久久精品免费看国产| 日韩三级电影| 松下纱荣子在线观看| 欧美一区二区三区公司| 丁香激情五月少妇| 日韩网站在线| 国产一区私人高清影院| 欧美新色视频| 亚洲mv在线观看| 超碰中文字幕在线观看| 欧美精品一二| 欧美一区二区.| 国产黄a三级三级看三级| 国产欧美日韩激情| 国产精品免费观看久久| 免费成人蒂法| 久久久久久久久久av| 国产精品毛片一区二区在线看舒淇| 久久一夜天堂av一区二区三区| 99视频精品全部免费看| 亚洲欧美专区| 亚洲人成伊人成综合网久久久| 久久久精品国产sm调教网站| 国产一区二区三区蝌蚪| 影音先锋欧美资源| 国产一区影院| 中文字幕免费精品一区| 波多野结衣日韩| 国产欧美精品国产国产专区| 国产免费成人在线| 日本欧美韩国国产| 97国产精品免费视频| 日韩在线观看视频一区| 亚洲国产日日夜夜| 911av视频| 亚洲成人免费| 99热99热| 草草在线视频| 精品视频在线播放色网色视频| 日本五十路女优| 97久久精品人人做人人爽| 男女视频网站在线观看| 欧美爱爱网站| 51午夜精品视频| 黄色美女网站在线观看| 在线亚洲欧美专区二区| 国产精品1区2区3区4区| 日本成人中文字幕在线视频| 亚洲高清视频一区| 2020国产精品小视频| 美女少妇精品视频| 成人精品在线播放| 一本色道久久综合精品竹菊| 天天干天天操天天拍| 国内精品视频一区二区三区八戒 | 青青免费在线视频| 在线视频欧美区| 中文字幕无码日韩专区免费| 蜜臀va亚洲va欧美va天堂| 一区二区精品在线| aaa国产精品视频| 8x海外华人永久免费日韩内陆视频| 你懂的视频在线观看| 欧美日韩国产综合一区二区| 一区视频免费观看| 97久久人人超碰| 色婷婷一区二区三区av免费看| 在线观看日韩| 欧美资源一区| 精品久久亚洲| 青草热久免费精品视频| 亚洲s色大片| 亚洲第一国产精品| 伊人免费在线观看| 亚洲h精品动漫在线观看| 国产精品成人无码免费| 国产精品18久久久久| 免费一级特黄毛片| 人人狠狠综合久久亚洲婷| 丁香婷婷久久久综合精品国产 | 精品国产亚洲av麻豆| 欧美性感美女h网站在线观看免费| 亚洲一区二区观看| 国产一区二区三区四| www.日本在线播放| 婷婷久久国产对白刺激五月99| 九色91视频| gogo大尺度成人免费视频| 青青草国产精品一区二区| gogo在线观看| 亚洲人成电影在线观看天堂色| 精品久久久免费视频| 91国偷自产一区二区开放时间 | 777米奇影视第四色| 欧美在线亚洲综合一区| 日韩理论片在线观看| 国产乱人伦丫前精品视频| 国产热re99久久6国产精品| 天堂电影一区| 欧美华人在线视频| 欧美精品电影| 国产亚洲精品日韩| 亚洲av无码一区二区三区dv | 欧美丰满少妇xxxx| 美女国产在线| 亚洲人成伊人成综合网久久久| 亚洲老妇色熟女老太| 欧美日韩国产乱码电影| 亚洲精品男人的天堂| 亚洲国产精品嫩草影院| 黄色av免费播放| 久久久久综合网| 污污污www精品国产网站| 经典一区二区三区| 国产91色在线观看| 日韩国产高清影视| 男人日女人视频网站| 韩日欧美一区| 少妇大叫太大太粗太爽了a片小说| 精品国产乱码久久久久久1区2匹| 国产亚洲二区| 亚洲成人黄色| 成人在线资源网址| 久久97久久97精品免视看秋霞| 91在线免费观看网站| 精品视频一区二区三区| 99久久久精品免费观看国产 | 日韩电影大全免费观看2023年上| 天天干天天爱天天操| 日韩经典第一页| 国产资源在线播放| 日韩中文字幕不卡视频| 黄色成人影院| 九色精品免费永久在线| 操喷在线视频| 国产成人极品视频| 欧美激情不卡| 91黄在线观看| 米奇精品关键词| 日本一区二区三区精品视频| 欧美色婷婷久久99精品红桃| 天天爱天天做天天操| 欧美视频亚洲视频| 欧美一级片中文字幕| 蜜臀久久久久久久| 久久久久亚洲AV成人网人人小说| 99天天综合性| av片在线免费看| 亚洲黄色小说网站| 久久久久久久久久影院| 欧美三区在线观看| 精品人妻一区二区三区含羞草| 亚洲国产精品99久久| 国产福利免费在线观看| 久久影院在线观看| 欧亚av在线| 91精品久久久久久久久青青| silk一区二区三区精品视频| 日本一区二区久久精品| 国产精品成人一区二区网站软件| 鲁一鲁一鲁一鲁一澡| 久久超碰97人人做人人爱| 麻豆精品国产传媒av| 欧美激情一二三区| 精品处破女学生| 欧美私模裸体表演在线观看| 亚洲高清精品视频| 中文字幕亚洲欧美日韩高清| 福利网站在线观看| 国产精品视频xxxx| 图片婷婷一区| 嫩草影院中文字幕| 裸体在线国模精品偷拍| 日本一区二区在线免费观看| 中文字幕中文字幕一区二区| 欧美一级片免费在线观看| 69p69国产精品| 国产裸舞福利在线视频合集| 欧美精品videosex极品1| 四虎地址8848精品| 日本日本精品二区免费| 红桃视频国产精品| 日本一二三区在线| 国产欧美一区二区三区网站| 日韩av一区二区在线播放| 欧美一区二区福利在线| 91在线视频免费看| 日韩av第一页| 希岛爱理av免费一区二区| 欧美视频在线第一页| 精品一区二区久久久| 无码人妻丰满熟妇啪啪欧美| 黑人巨大精品欧美一区二区免费| 亚洲av少妇一区二区在线观看| 综合网日日天干夜夜久久| 新版的欧美在线视频| 国产精品手机在线| 午夜欧美视频| 无套白嫩进入乌克兰美女| 中文字幕一区日韩精品欧美| 最近日韩免费视频| 在线精品国产成人综合| 欧美日韩免费看片| 久久手机视频| 午夜一区在线| 影音先锋人妻啪啪av资源网站| 一区二区成人在线视频 | 国产成人在线视频免费播放| 很污很黄的网站| 欧美日本一道本| 69xxxx欧美| 成人国产精品久久久| 久久国产中文字幕| 中文字幕第17页| 亚洲欧洲精品一区二区三区不卡| 中文字幕网址在线| 日韩专区中文字幕| 亚洲成人毛片| 中国黄色录像片| 国产精品一二三区在线| 久久久久久福利| 亚洲成人久久久| 黑森林国产精品av| 麻豆传媒一区| 日韩国产精品久久久久久亚洲| 一级片久久久久| 欧美日韩黄色一区二区| 国产黄色在线免费观看| 亚洲自拍偷拍色图| 欧美色图首页| 久久一区二区电影| 日本福利一区二区| 日本在线免费| av在线亚洲男人的天堂| 在线欧美不卡| 精品国产av无码| 欧美裸体bbwbbwbbw| 伊人手机在线| 久久久7777| 免费在线欧美视频| 老妇女50岁三级| 日韩精品有码在线观看| 精品欧美日韩精品| 日本高清xxxx| 99天天综合性| 亚洲怡红院av| 欧美—级a级欧美特级ar全黄| 日本亚洲不卡| 91视频这里只有精品| 亚洲一级二级三级| 免费在线高清av| 亚洲一区亚洲二区亚洲三区| 国产视频一区在线观看一区免费| 亚洲自拍偷拍图| 精品国产一区二区三区四区四| 午夜影院在线播放| 伊人婷婷久久| 99久久精品国产一区| 国产又黄又粗又长| 97av在线视频免费播放| 日韩中字在线| 亚洲第九十七页| 91麻豆精品国产自产在线| 少妇视频一区| 一二三四中文字幕| 久久久亚洲精品一区二区三区| av男人天堂网| 国产精品欧美一区二区| 日韩网站在线| 强行糟蹋人妻hd中文| 国产亚洲精品成人av久久ww| 国内露脸中年夫妇交换精品| 尤物国产在线观看| 色综合久久综合| 波多野结衣在线观看| 中文字幕在线乱|