Power Apps のホスト オブジェクト

適用先: キャンバス アプリ モデル駆動型アプリ

Power Apps の ホスト オブジェクトはアプリを実行している現在のホストに関する情報を提供します。

Description

Host オブジェクトは、アプリを実行しているホスト デバイス、オペレーティング システム、プレーヤーに関する情報を提供します。 HostApp オブジェクト に似ており、すべてのアプリがこの情報にアクセスできます。

Host の最適な用途の 1 つは、特定のデバイスまたは特定のブラウザーで正常に動作しないアプリをデバッグすることです。 このオブジェクトのテキスト プロパティを使用して、Text label コントロールを使用してアプリの UI に情報を表示したり、情報をデータベース テーブルまたは Application Insights に記録します。

Host を使用して、アプリを特定のデバイスまたはブラウザーに合わせて調整することは魅力的です。 しかし、Power Apps が幅広いハードウェアおよびソフトウェア プラットフォームで実行できるように設計されており、Host ベースのロジックがそれらすべてを考慮できない可能性があり、時間の経過とともに変化するため、これは危険です。 より適切な方法は、より抽象化され、特定のハードウェアやソフトウェアに関連付けられていない情報を使用することです。 たとえば、Screen コントロールの Size プロパティを使用して、電話などの小型デバイスで実行しているときに、画面を調整して表示を減らすか、情報を再編成します。

Power Apps Studio で Host オブジェクトにアクセスするには、ツリー ビュー ペインの上部にある App オブジェクトを展開し、Host を選択します。 この例では、ホスト オブジェクトには数式を受け入れるプロパティがありません。

ツリー ビュー ペインのホスト オブジェクト。

注意

ホスト オブジェクトは現在、カスタム ページとキャンバス アプリでのみ使用できます。

BrowserUserAgent property

テキスト プロパティ BrowserUserAgent には、アプリの実行時にブラウザーが自身を識別するために使用する完全なユーザー エージェント文字列が含まれています。

たとえば、ブラウザのユーザー エージェント文字列は次のようになります。

  • Mozilla/5.0 (Windows NT 10.0; Win64; x64)
  • AppleWebKit/537.36 (KHTML, like Gecko)
  • Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78

注意

Power Apps ネイティブ アプリで実行している場合、または Power Apps の ラップ 機能 を使用している場合、アプリはユーザー エージェント文字列を提供するブラウザー コントロールを介してい表示されます。

OSType プロパティ

OSType プロパティは、アプリが実行されているオペレーティング システムの名前を提供します。 OSType は、ブラウザから Power Apps に送信されたユーザー エージェント文字列から決定されます。 以下は、OSType の値の一般的なパターンの例です。

価値
ウィンドウ
macOS
iOS
Android
Linux
...

注意

OSType を使用して、報告されたオペレーティング システムに基づいてアプリのエクスペリエンスや機能を変更しないでください。

OSType テキストは、ラベルのテキスト プロパティで表示するなど、任意の式で使用できます。

Label1.Text: "You're running " & Host.OSType

SessionID プロパティ

SessionID プロパティは、現在のセッションを識別する GUID を返します。 管理者に問題を報告する際には、この情報を含めてください。

注意

Power BI の Power Apps などの埋め込みシナリオでは、SessionID プロパティは、 Power Apps セッション ID ではなく、基になる Power BI セッション ID を返します。

Label1.Text: $"Provide session ID { Host.SessionID } to your administrator."

TenantID プロパティ

TenantID プロパティは、現在認証されているユーザーに関連付けられている Microsoft Entra テナントを指定するグローバル一意識別子 (GUID) を提供します。

注意

SessionID と同様に、Power BI の Power Apps などの埋め込みシナリオでは、テナント ID は Power Apps セッション認証のテナントです。

Label1.Text: Host.TenantID

Version プロパティ

Version プロパティは、Power Apps プレーヤーの識別子とバージョン番号を提供します。 BrowserUserAgent と同様に、スペースで区切って複数のバージョン番号を返すことができます。

注意

Version プロパティは、Power Apps Studio で作業する場合、常に空の文字列になります。

Label1.Text: Host.Version

使用例

  1. 新しいキャンバス アプリを作成します。
  2. Text label コントロールを追加し、Text プロパティを "Host.BrowserUserAgent: " & Host.BrowserUserAgent に設定します。
  3. Text label コントロールを追加し、Text プロパティを "Host.OSType: " & Host.OSType に設定します。
  4. Text label コントロールを追加し、Text プロパティを "Host.SessionID: " & Host.SessionID に設定します。
  5. Text label コントロールを追加し、Text プロパティを "Host.TenantID: " & Host.TenantID に設定します。
  6. Text label コントロールを追加し、Text プロパティを "Host.Version: " & Host.Version に設定します。

さまざまなデバイスとさまざまなブラウザーでアプリを実行すると、以下のような結果が表示されます。

Edge ブラウザーを搭載した Windows 上の Power Apps Studio

Host.Version は、Power Apps Studio で作業する場合、常に空白です。

Host.BrowserUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.76
Host.OSType: Windows
Host.SessionID: ee2eed1a-8455-4e68-a433-a709302d0c71
Host.TenantID: 5da56e5c-97b6-468f-a448-a6e432c48269
Host.Version: 

iOS 上の Power Apps ネイティブ モバイル プレーヤー

Host.BrowserUserAgent: Mozilla/5.0 (iPhone; CPU iPhone OS 16_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 PowerApps/e1c23ff9-4822-4e75-a003-01c91407a4d2
Host.OSType: Windows
Host.SessionID: 3ebec22f-ee2e-412a-b3eb-45d97db34863
Host.TenantID: 5da56e5c-97b6-468f-a448-a6e432c48269
Host.Version: PowerApps-Native/3.23084.8(iOS)

Firefox ブラウザーを搭載した Windows 上の Power Apps Web プレーヤー

Host.BrowserUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/117.0
Host.OSType: Windows
Host.SessionID: 283309a4-d88b-4b2a-88de-73b47d1b62d0
Host.TenantID: 5da56e5c-97b6-468f-a448-a6e432c48269
Host.Version: PowerApps-Web/3.23084.6(Windows)

Safari ブラウザーを搭載した iOS 上の Power Apps Web プレーヤー

Host.BrowserUserAgent: Mozilla/5.0 (iPhone; CPU iPhone OS 16_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1
Host.OSType: iOS
Host.SessionID: a09a946d-ce71-4c1f-bd35-519c79849c8d
Host.TenantID: 5da56e5c-97b6-468f-a448-a6e432c48269
Host.Version: PowerApps-Web/3.23084.6(iOS)