日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開(kāi)發(fā):?jiǎn)?dòng)遠(yuǎn)程PageAbility 僅對(duì)系統(tǒng)應(yīng)用開(kāi)放

jf_46214456 ? 來(lái)源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-19 09:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

啟動(dòng)遠(yuǎn)程PageAbility(僅對(duì)系統(tǒng)應(yīng)用開(kāi)放)

啟動(dòng)遠(yuǎn)程PageAbility同樣通過(guò)featureAbility中的startAbility接口實(shí)現(xiàn)。

除引入'@ohos.ability.featureAbility'外,還需引入'@ohos.distributedHardware.deviceManager',通過(guò)DeviceManager(該組件提供帳號(hào)無(wú)關(guān)的分布式設(shè)備的認(rèn)證組網(wǎng)能力)的getTrustedDeviceListSync接口(獲取信任設(shè)備列表)獲取遠(yuǎn)端的deviceId,寫(xiě)入want中,用于啟動(dòng)遠(yuǎn)程PageAbility。

由于當(dāng)前DeviceManager的getTrustedDeviceListSync接口僅對(duì)系統(tǒng)應(yīng)用開(kāi)放,故現(xiàn)階段非系統(tǒng)應(yīng)用無(wú)法獲取其他設(shè)備信息,無(wú)遠(yuǎn)程啟動(dòng)設(shè)備選擇入口,遠(yuǎn)程啟動(dòng)Ability開(kāi)發(fā)。

表1 featureAbility接口說(shuō)明

接口名接口描述 ** 開(kāi)發(fā)前請(qǐng)熟悉鴻蒙開(kāi)發(fā)指導(dǎo)文檔**:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]點(diǎn)擊或者復(fù)制轉(zhuǎn)到。
startAbility(parameter: StartAbilityParameter)啟動(dòng)Ability。
startAbilityForResult(parameter: StartAbilityParameter)啟動(dòng)Ability,并在該Ability被銷(xiāo)毀時(shí)返回執(zhí)行結(jié)果。

表2 deviceManager接口說(shuō)明

接口名接口描述
getTrustedDeviceListSync(): Array同步獲取所有可信設(shè)備列表。

在跨設(shè)備場(chǎng)景下,啟動(dòng)遠(yuǎn)程PageAbility首先需要向用戶(hù)申請(qǐng)數(shù)據(jù)同步的權(quán)限,相關(guān)接口說(shuō)明如下:

表3 AtManager接口說(shuō)明

接口名接口描述
checkAccessToken(tokenID: number, permissionName: string) : Promise校驗(yàn)應(yīng)用是否授予權(quán)限。使用Promise異步回調(diào)。返回值GrantStatus。建議使用checkAccessToken代替verifyAccessToken(已廢棄),verifyAccessToken從API version 9開(kāi)始不再維護(hù)。

表4 context接口說(shuō)明

接口名接口描述
requestPermissionsFromUser(permissions: Array, requestCode: number, resultCallback: AsyncCallback< PermissionRequestResult>): void以callback形式從系統(tǒng)請(qǐng)求某些權(quán)限,詳見(jiàn)對(duì)應(yīng)[接口文檔]。

如下示例代碼展示了向用戶(hù)申請(qǐng)數(shù)據(jù)同步權(quán)限的方法:

import abilityAccessCtrl from "@ohos.abilityAccessCtrl";
import featureAbility from '@ohos.ability.featureAbility';
import bundle from '@ohos.bundle.bundleManager';
import hilog from '@ohos.hilog';

const TAG: string = 'PagePageAbilitySecond'
const domain: number = 0xFF00;

@Entry
@Component
struct PagePageAbilitySecond {
  async requestPermission(): Promise< void > {
    hilog.info(domain, TAG, 'RequestPermission begin');
    let array: Array< string > = ['ohos.permission.DISTRIBUTED_DATASYNC'];
    let bundleFlag = 0;
    let tokenID: number | undefined = undefined;
    let userID = 100;
    let appInfo = await bundle.getApplicationInfo('com.samples.famodelabilitydevelop', bundleFlag, userID);
    tokenID = appInfo.accessTokenId;
    let atManager = abilityAccessCtrl.createAtManager();
    let requestPermissions: Array< string > = [];
    for (let i = 0;i < array.length; i++) {
      let result = await atManager.verifyAccessToken(tokenID, array[i]);
      hilog.info(domain, TAG, 'checkAccessToken result:' + JSON.stringify(result));
      if (result != abilityAccessCtrl.GrantStatus.PERMISSION_GRANTED) {
        requestPermissions.push(array[i]);
      }
    }
    hilog.info(domain, TAG, 'requestPermissions:' + JSON.stringify(requestPermissions));
    if (requestPermissions.length == 0) {
      return;
    }
    let context = featureAbility.getContext();
    context.requestPermissionsFromUser(requestPermissions, 1, (error, data) = > {
      hilog.info(domain, TAG, 'error:' + error.message + ',data:' + JSON.stringify(data));
      hilog.info(domain, TAG, 'data requestCode:' + data.requestCode);
      hilog.info(domain, TAG, 'data permissions:' + data.permissions);
      hilog.info(domain, TAG, 'data authResults:' + data.authResults);
    });
    hilog.info(domain, TAG, 'RequestPermission end');
  }

  build() {
    //...
  }
}

在獲取數(shù)據(jù)同步權(quán)限后,需要獲取可信設(shè)備列表,進(jìn)行設(shè)備選擇。

如下示例展示了通過(guò)getAvailableDeviceListSync獲取可信設(shè)備列表,選擇設(shè)備的方法。

import deviceManager from '@ohos.distributedDeviceManager';
import promptAction from '@ohos.promptAction';
import hilog from '@ohos.hilog';

const TAG: string = 'PagePageAbilitySecond'
const domain: number = 0xFF00;

@Entry
@Component
struct PagePageAbilitySecond {
  @State deviceID: string = '';
  
  getRemoteDeviceId(): void {
    let dmClass: deviceManager.DeviceManager;
    dmClass = deviceManager.createDeviceManager('com.samples.famodelabilitydevelop');
    try {
      if (typeof dmClass === 'object' && dmClass !== null) {
        let list = dmClass.getAvailableDeviceListSync();
        if (typeof (list) == undefined || list.length == 0) {
          hilog.info(domain, TAG, 'EntryAbility onButtonClick getRemoteDeviceId err: list is null');
          return;
        }
        hilog.info(domain, TAG, `EntryAbility onButtonClick getRemoteDeviceId success[${list.length}]:` + JSON.stringify(list[0]));
        if (list[0].networkId != undefined) {
          this.deviceID = list[0].networkId;
        }
        promptAction.showToast({
          message: this.deviceID
        });
      } else {
        hilog.info(domain, TAG, 'EntryAbility onButtonClick getRemoteDeviceId err: dmClass is null');
      }
    } catch (error) {
      hilog.info(domain, TAG, `getRemoteDeviceId error, error=${error}, message=${error.message}`);
    }
  }

  build() {
    //...
  }
}

`HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`

新文檔.png

設(shè)備選擇完成后,通過(guò)調(diào)用startAbility接口,顯式啟動(dòng)遠(yuǎn)程PageAbility。

如下示例展示了通過(guò)startAbility顯式啟動(dòng)遠(yuǎn)程PageAbility的方法。

import featureAbility from '@ohos.ability.featureAbility';
import Want from '@ohos.app.ability.Want';
import promptAction from '@ohos.promptAction';
import { BusinessError } from '@ohos.base';
import hilog from '@ohos.hilog';

const TAG: string = 'PagePageAbilitySecond'
const domain: number = 0xFF00;

@Entry
@Component
struct PagePageAbilitySecond {
  @State deviceID: string = '';
  
  onStartRemoteAbility(): void {
    hilog.info(domain, TAG, 'onStartRemoteAbility begin');
    let wantValue: Want = {
      bundleName: 'ohos.samples.distributedmusicplayer',
      abilityName: 'ohos.samples.distributedmusicplayer.MainAbility',
      deviceId: this.deviceID, // this.deviceID的獲取方式在前面的示例代碼中
    };
    hilog.info(domain, TAG, 'onStartRemoteAbility want=' + JSON.stringify(wantValue));
    featureAbility.startAbility({
      want: wantValue
    }).then((data) = > {
      promptAction.showToast({
        message: $r('app.string.start_remote_success_toast')
      });
      hilog.info(domain, TAG, 'onStartRemoteAbility finished, ' + JSON.stringify(data));
    }).catch((error: BusinessError) = > {
      promptAction.showToast({
        message: JSON.stringify(error)
      });
      hilog.error(domain, TAG, 'onStartRemoteAbility failed: ' + JSON.stringify(error));
    });
    hilog.info(domain, TAG, 'onStartRemoteAbility end');
  }
  build() {
    //...
  }
}

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    9603

    瀏覽量

    157677
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    3031

    瀏覽量

    46195
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Stage模型啟動(dòng)FA模型PageAbility方法

    Stage模型啟動(dòng)FA模型PageAbility 本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何啟動(dòng)FA模型的PageAbility組件。 UIAbility
    發(fā)表于 06-04 06:36

    HarmonyOS/OpenHarmony應(yīng)用開(kāi)發(fā)-PageAbility開(kāi)發(fā)體驗(yàn)

    功能簡(jiǎn)介PageAbility是具備ArkUI實(shí)現(xiàn)的Ability,是開(kāi)發(fā)者具體可見(jiàn)并可以交互的Ability實(shí)例。開(kāi)發(fā)者通過(guò)IDE創(chuàng)建Ability時(shí),IDE會(huì)自動(dòng)創(chuàng)建相關(guān)模板代碼
    發(fā)表于 12-08 11:03

    華為升級(jí)鴻蒙系統(tǒng)開(kāi)放的機(jī)型名單

    華為升級(jí)鴻蒙系統(tǒng)開(kāi)放的機(jī)型名單一覽。6 月 2 日,華為舉辦鴻蒙操作系統(tǒng)及華為全場(chǎng)景新品發(fā)布會(huì),在會(huì)上華為正式推出了Harmony OS 2
    的頭像 發(fā)表于 06-21 10:54 ?5.9w次閱讀

    多家頭部企業(yè)宣布「啟動(dòng)鴻蒙原生應(yīng)用開(kāi)發(fā)」,你看好鴻蒙系統(tǒng)走向「獨(dú)立」嗎?

    鴻蒙生態(tài)迎「關(guān)鍵一戰(zhàn)」,多家頭部企業(yè)宣布「啟動(dòng)鴻蒙原生應(yīng)用開(kāi)發(fā)」,你看好鴻蒙系統(tǒng)走向「獨(dú)立」嗎?
    的頭像 發(fā)表于 01-24 11:47 ?1142次閱讀
    多家頭部企業(yè)宣布「<b class='flag-5'>啟動(dòng)</b><b class='flag-5'>鴻蒙</b>原生應(yīng)用<b class='flag-5'>開(kāi)發(fā)</b>」,你看好<b class='flag-5'>鴻蒙</b><b class='flag-5'>系統(tǒng)</b>走向「獨(dú)立」嗎?

    哪吒汽車(chē)APP啟動(dòng)鴻蒙原生應(yīng)用開(kāi)發(fā)

    哪吒汽車(chē)正式簽約,啟動(dòng)鴻蒙原生應(yīng)用開(kāi)發(fā);在5月17日,在上海市經(jīng)濟(jì)和信息化委員會(huì)指導(dǎo)的“千帆競(jìng)發(fā)啟航 共筑鴻蒙生態(tài)——HDD上海站·鴻蒙原生
    的頭像 發(fā)表于 05-18 09:48 ?1921次閱讀

    鴻蒙開(kāi)發(fā):【PageAbility組件概述+配置】

    PageAbility是包含UI、提供展示UI能力的應(yīng)用組件,主要用于與用戶(hù)交互。
    的頭像 發(fā)表于 06-17 18:05 ?1100次閱讀

    鴻蒙開(kāi)發(fā):【PageAbility的生命周期】

    PageAbility生命周期是PageAbility被調(diào)度到INACTIVE、ACTIVE、BACKGROUND等各個(gè)狀態(tài)的統(tǒng)稱(chēng)。PageAbility生命周期流轉(zhuǎn)及狀態(tài)說(shuō)明見(jiàn)如下圖1、表1所示。
    的頭像 發(fā)表于 06-17 10:05 ?1685次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:【<b class='flag-5'>PageAbility</b>的生命周期】

    鴻蒙開(kāi)發(fā)PageAbility啟動(dòng)模式

    啟動(dòng)模式對(duì)應(yīng)PageAbility啟動(dòng)時(shí)的行為,支持單實(shí)例模式、多實(shí)例模式兩種啟動(dòng)模式。
    的頭像 發(fā)表于 06-17 14:35 ?1246次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:<b class='flag-5'>PageAbility</b>的<b class='flag-5'>啟動(dòng)</b>模式

    鴻蒙開(kāi)發(fā):創(chuàng)建PageAbility

    通過(guò)DevEco Studio開(kāi)發(fā)平臺(tái)創(chuàng)建PageAbility時(shí),DevEco Studio會(huì)在app.js/app.ets中默認(rèn)生成onCreate()和onDestroy()方法,其他方法需要開(kāi)發(fā)者自行實(shí)現(xiàn)。
    的頭像 發(fā)表于 06-18 09:36 ?814次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:創(chuàng)建<b class='flag-5'>PageAbility</b>

    鴻蒙開(kāi)發(fā)啟動(dòng)本地PageAbility

    PageAbility相關(guān)的能力通過(guò)featureAbility提供,啟動(dòng)本地Ability通過(guò)featureAbility中的startAbility接口實(shí)現(xiàn)。
    的頭像 發(fā)表于 06-18 09:29 ?905次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:<b class='flag-5'>啟動(dòng)</b>本地<b class='flag-5'>PageAbility</b>

    鴻蒙開(kāi)發(fā):停止PageAbility

    停止PageAbility通過(guò)featureAbility中的terminateSelf接口實(shí)現(xiàn)。
    的頭像 發(fā)表于 06-18 14:16 ?857次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:停止<b class='flag-5'>PageAbility</b>

    鴻蒙開(kāi)發(fā)啟動(dòng)指定頁(yè)面

    當(dāng)PageAbility啟動(dòng)模式設(shè)置為單例時(shí)(具體設(shè)置方法和典型場(chǎng)景示例見(jiàn)[PageAbility啟動(dòng)模式],缺省情況下是單實(shí)例模式),若Pag
    的頭像 發(fā)表于 06-19 09:29 ?1137次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:<b class='flag-5'>啟動(dòng)</b>指定頁(yè)面

    鴻蒙開(kāi)發(fā):【組件啟動(dòng)規(guī)則(FA模型)】

    啟動(dòng)PageAbility、ServiceAbility,如使用startAbility()等相關(guān)接口。
    的頭像 發(fā)表于 06-22 10:01 ?1425次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>:【組件<b class='flag-5'>啟動(dòng)</b>規(guī)則(FA模型)】

    鴻蒙開(kāi)發(fā)Ability Kit程序框架服務(wù):Stage模型啟動(dòng)FA模型PageAbility

    本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何啟動(dòng)FA模型的PageAbility組件。
    的頭像 發(fā)表于 06-26 09:50 ?1146次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>Ability Kit程序框架服務(wù):Stage模型<b class='flag-5'>啟動(dòng)</b>FA模型<b class='flag-5'>PageAbility</b>

    鴻蒙開(kāi)發(fā)Ability Kit程序框架服務(wù):PageAbility切換 組件切換

    FA模型中PageAbility對(duì)應(yīng)Stage模型中的UIAbility,PageAbility切換為UIAbility的方法如下。
    的頭像 發(fā)表于 06-28 11:38 ?1079次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>Ability Kit程序框架服務(wù):<b class='flag-5'>PageAbility</b>切換 組件切換
    虞城县| 乌兰县| 望都县| 乌拉特前旗| 南宫市| 庆安县| 安龙县| 时尚| 周宁县| 修水县| 崇义县| 和龙市| 鸡泽县| 边坝县| 邢台县| 孝感市| 潮州市| 临安市| 故城县| 微山县| 北京市| 桐城市| 嘉义市| 虹口区| 白水县| 琼海市| 定日县| 延安市| 夏河县| 岳阳县| 谢通门县| 海伦市| 肇源县| 洪湖市| 定结县| 南昌县| 平安县| 衢州市| 蓬安县| 台山市| 凤翔县|