日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

接入 HarmonyOS NEXT(beta)

前置條件

添加 數據同步 SDK 前,請您確保已經將工程接入到 mPaaS。更多信息請參見 基于已有工程使用 ohpmrc 接入

引入依賴

在項目的 .ohpmrc 中添加如下倉庫:

@mpaas:registry=https://mpaas-ohpm.oss-cn-hangzhou.aliyuncs.com/meta

添加 SDK

oh-package.json5 中配置所需依賴,其中,當前版本號為 0.0.2

{
  "license": "",
  "devDependencies": {},
  "author": "",
  "name": "entry",
  "description": "Please describe the basic information.",
  "main": "",
  "version": "1.0.0",
  "dependencies": {
    "@mpaas/sync-service": "0.0.2"
  }
}

配置權限

module.json5 中配置所需權限。

"requestPermissions":[
      {
        "name" : "ohos.permission.GET_NETWORK_INFO",
      },
      {
        "name" : "ohos.permission.SET_NETWORK_INFO",
      },
      {
        "name" : "ohos.permission.INTERNET",
      }
    ]

初始化框架

在使用 數據同步 之前,需先初始化 mPaaS 框架:

export default class EntryAbilityStage extends AbilityStage {
 async onCreate() {
 const app = this.context;
 MPFramework.create(app);
 const instance: MPFramework = MPFramework.instance;
 const ctx: Context = instance.context
 }
}

import 接口

import {MPSync} from '@mpaas/sync-service'

相關接口

接口名稱

說明

initialize(Context context)

用于初始化接口和數據同步服務。

appToForeground()

用于讓客戶端 SDK 感知到當前 App 已經啟動,使其建立與服務器的網絡連接。每次 App 回前臺時調用。

appToBackground()

用于讓客戶端 SDK 感知到當前 App 已經回到后臺,使其斷開與服務器的網絡連接。每次 App 壓后臺時調用。

updateUserInfo(sessionId:string)

用于登錄信息 userId/sessionId 有變化時調用。至少調用一次。useridMPFramework 的接口中設置。

clearUserInfo()

用于用戶登出。

registerBiz(biz:string, syncCallback:ISyncCallback)

用于注冊一個接收業務數據的 callback。在獲取到同步推送的數據后,客戶端 SDK 會回調 syncCallback 實現類。

unregisterBiz(bizType:string)

用于反注冊指定同步配置。在獲取到同步推送的數據后,客戶端 SDK 則不會回調 syncCallback 實現類。

reportMsgReceived(syncMessag:SyncMessage )

用于在 syncCallback 實現類中收到數據后,調用該接口通知數據同步服務端接收同步數據成功。在沒有收到 reportMsgReceived 前,數據同步會重試投遞,重試 6 次之后數據會被永久刪除。

isConnected():Promise<boolean>

用于檢查當前數據同步服務是否正常。

addConectionListener(listener:connectionListener)

添加監聽連接狀態。

removeConnectionListener(listener:connectionListener)

刪除連接狀態監聽。

使用實例

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
   	..
    //在ability開始階段進行初始化相關操作
    MPFramework.create(this.context);//初始化
    MPFramework.instance.userId = example_userid;//設置userid
    MPSync.initialize();//初始化sync
    ..
  }
}

//page代碼示例
connectListener:ConnectionListener = {
    onConnectionStateChanged: (connectionEvent: ConnectionEvent) => {
      let type = connectionEvent.getEventType();
      switch (type) {
        case ConnectionType.Connecting:
          this.connectionMsg = "連接中"
          break;
        case ConnectionType.Unknown:
          this.connectionMsg = "未知"
          break;
        case ConnectionType.Connected:
          this.connectionMsg = "已連接"
          break;
        case ConnectionType.Disconnected:
          this.connectionMsg = "已斷開"
          break;
        case ConnectionType.ConnectFailed:
          let message = connectionEvent.getExtras();
          this.connectionMsg = "連接失敗:" + message
          break;
      }
    }
  
onPageShow(): void {
  MPSync.appToForeground();
  MPSync.addConnectionListener(this.connectListener)
}

build() {
    Row() {
      Column({ space: 20 }) {
        Button('初始化', { type: ButtonType.Capsule, stateEffect: true })
          .onClick(() => {
            let index = 1;
            let callback:ISyncCallback= {//消息接收callback示例
              onReceiveMessage:(message:SyncMessage):void=>{
                let msg = message.msgData;
                let obj:object[] = JSON.parse(msg);
                let str = "收到消息:\n";
                obj.forEach(value=>{
                  let m:string = getMessageObjString(value);
                  str += "message:"+index+":"+ m+'\n'
                  index++
                })
                this.message = str
              },
              onReceiveCommand:(message:SyncCommand):void=>{
              }
            }
            MPSync.registerBiz("oneUserSync",callback)//注冊biz,
          }).width('90%').margin({ top: 15 })
  		  Button('用戶綁定', { type: ButtonType.Capsule, stateEffect: true })
          .onClick(() => {
            MPSync.updateUserInfo("harmony_session")//綁定用戶
          }).width('90%').margin({ top: 15 })
			}
    }
    .height('100%').alignItems(VerticalAlign.Top)
  }