カメラを開き、デバイスで UIAbility を明示的に開く方法 [Nut Pie-Nut]

カメラを開き、デバイスで UIAbility を明示的に開く方法 [Nut Pie-Nut]

今日Lavalコミュニティで厄介なプログラマーが助けを求めているのを見ました

元のリンク:

https://laval.csdn.net/64e69d6c2ea0282871eaa75d.html

画像-20230825081852046

非政府組織ナット・パイの役柄が出てきました。

ここでは後で使用するwantを紹介します。

欲しい

Want はオブジェクト間の情報転送のキャリアであり、アプリケーション コンポーネント間の情報転送に使用できます。Want の使用シナリオの 1 つは、startAbility のパラメータとして使用されます。これには、指定された起動ターゲットと起動時に保持される関連データが含まれます。たとえば、bundleName フィールドとabilityName フィールドはそれぞれ、ターゲットのアビリティが含まれるアプリケーションのパッケージ名を示します。対応するパッケージ内のアビリティの場所と名前。UIAbilityA が UIAbilityB を開始してデータを渡す必要がある場合、Want をキャリアとして使用してこれらのデータを UIAbilityB に渡すことができます。

次に始めます

カメラをオンにする方法

ステップ 1: モジュールをインポートする

import common from '@ohos.app.ability.common';

ステップ 2: コンテキストを取得する

  let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext

ステップ 3: 必要な情報を追加する

 let want = {
    deviceId: '', // deviceId为空表示本设备
    bundleName: 'com.ohos.camera',
    abilityName: 'com.ohos.camera.MainAbility'
  };

ステップ 4: 開始

  context.startAbility(want, (err) => {
    console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
  });

完全なソースコード

import common from '@ohos.app.ability.common';

@Entry
@Component
struct Index {


  build() {
    Row() {
      Column() {
       

        Text("显式打开相机")
          .fontSize(36)
          .fontWeight(FontWeight.Bold).onClick(() => {

          let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext

          let want = {
            deviceId: '', // deviceId为空表示本设备
            bundleName: 'com.ohos.camera',
            abilityName: 'com.ohos.camera.MainAbility'
          };

          context.startAbility(want, (err) => {
            console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
          });


        })
      }
      .width('100%')
    }
    .height('100%')
  }
}

彼からの別の質問を見てみましょう

画像-20230825082333131

https://laval.csdn.net/64e566284165333c3076a6a1.html

デバイス内の UIAbility を明示的に有効にする

ステップ 1: モジュールをインポートする

import common from '@ohos.app.ability.common';

ステップ 2: コンテキストを取得する

  let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext

ステップ 3: 必要な情報を追加する

let want = {
 
         deviceId: '', // deviceId为空表示本设备
            bundleName: 'com.example.map',
            abilityName: 'EntryAbility',
          };

ステップ 4: 開始

  context.startAbility(want, (err) => {
    console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
  });

完全なソースコード

import common from '@ohos.app.ability.common';

@Entry
@Component
struct Index {


  build() {
    Row() {
      Column() {
       

    Text("显式打开设备内UIAbility")
          .fontSize(36)
          .fontWeight(FontWeight.Bold).onClick(() => {

          let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext

          let want = {
 
         deviceId: '', // deviceId为空表示本设备
            bundleName: 'com.example.map',
            abilityName: 'EntryAbility',
          };

          context.startAbility(want, (err) => {
            console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
          });


        })
      }
      .width('100%')
    }
    .height('100%')
  }
}

さて、これでこの記事は終わりです。

Nutsに参加して一緒にHongmeng Ecologyを構築する皆さんを歓迎します。

おすすめ

転載: blog.csdn.net/qq_39132095/article/details/132487543