コンテンツにスキップ

ショートカットとApp Intents

昨日のヘルスデータをエクスポート

パラメータなしのショートカットです。「昨日のデータだけをすぐにエクスポートする」ための最短手段で、手動エクスポートと同じエンジンを使用します。 オプションのプロファイルパラメータ(エクスポートプロファイルを参照)。

指定日のヘルスデータをエクスポート

日付パラメータが1つあります。時刻は無視されます。カレンダーを起点とするオートメーションに便利です。 オプションのプロファイルパラメータ。

指定期間のヘルスデータをエクスポート

開始日終了日のパラメータがあり、両端の日付を含みます。バックフィルに使用します。 オプションのプロファイルパラメータ。

過去N日間のヘルスデータをエクスポート

日数パラメータ(1~366)があります。期間は昨日までで、デフォルトは7です。「毎週日曜日に過去7日間をエクスポートする」といったオートメーションに適しています。 オプションのプロファイルパラメータ。

指定日のヘルスサマリーを取得

Vaultに何も書き込まず、歩数、アクティブカロリー、睡眠、心拍数を含む構造化スナップショットを返します。ショートカット内で値をほかのアプリへ渡す場合に使用します。

最後のエクスポート状況を取得

直近に記録されたエクスポートのタイムスタンプ、成功状態、日数、失敗理由を返します。ロック中のデバイスで行われた要求は再試行されるまで保留となるため、保留中は現在の状況として返されません。

スケジュールされたエクスポートをオン/オフ

真偽値パラメータです。たとえば休暇の集中モード中にスケジュールを停止し、後で再開できます。

Health.md の iPhone 版または Android 版で、保存済みエクスポートプロファイルを作成・管理できます。Apple プラットフォームでは、プロファイル管理は現在 iPhone 向けにのみ文書化されており、iPad または macOS での利用可能性は表明していません。

4つのエクスポートインテントはすべて、オプションのプロファイルパラメータを受け付けます。プロファイルが存在する場合、空のままにするとアクティブなプロファイルを使用し、プロファイルがないレガシーモードではアプリの現在のエクスポート設定を使用します。保存されたプロファイル名を渡すと、アプリの現在の表示に関係なく、そのプロファイルの凍結された設定(メトリック選択・フォーマット・保存先)で実行します。

パラメータなしの既存ショートカットをお使いの方へ。

アプリで最初のエクスポートプロファイルを作成すると、プロファイル未設定のショートカットは、アプリのライブ設定ではなくアクティブなプロファイルの保存済み設定でエクスポートします。従来の動作に依存している場合は、ショートカットを特定のプロファイルに固定する(またはプロファイルをゼロのままにする)ことで明示的にできます。存在しないプロファイル名は、誤ったエクスポートではなく明確なエラーで失敗します。

## 見つける方法

iOSまたはmacOSでショートカットアプリを開きます。ボタンをタップして新しいショートカットを作成し、「Health.md」または上記いずれかのインテント名を検索します。これらはヘルスケアカテゴリにあります。

ほとんどのインテントではopenAppWhenRun = falseのため、アプリを起動せず、UIを表示することなく実行されます。オートメーション、集中モードフィルタ、Hey Siriのハンドオフ、アクションボタンから利用できます。

ロック中の実行ではHealthKitのロックは解除されません

AppleはiPhoneのロック中にHealthKitデータを保護し、ロックから約10分後にアプリからのアクセスを遮断しますロック中の実行を許可にするとショートカットはアクションを開始できますが、HealthKitのデータ保護を回避することはできません。ショートカットのHealth.mdアプリコンテンツ権限でも、この制限は回避できません。

HealthKitを利用できない場合、Health.mdは要求された日付を保留中として保持し、ヘルスエクスポートに対応が必要ですという通知を送信します。iPhoneのロックを解除してから、通知をタップするかHealth.mdを開いて再試行してください。iPhoneがロックされたままでは、完全に無人のエクスポートを保証できません。

レシピ:確認付きの日次エクスポート

Section titled “レシピ:確認付きの日次エクスポート”
  1. 個人用オートメーション時刻 → 午前8:00など、普段iPhoneのロックを解除して使用している時刻を選択します。
  2. 昨日のヘルスデータをエクスポートインテント。
  3. 最後のエクスポート状況を取得インテント。
  4. 結果を使って通知を表示します。

保留状況に関する注意:最後のエクスポート状況を取得は、エクスポート履歴に直近で記録されたエントリを読み取ります。今回の実行でロック中のHealthKitデータに遭遇した場合、保留中の要求を再試行するまでは以前のエクスポートが表示されることがあります。保留中の処理については、Health.md自身の復旧通知が正確な状態を示します。

レシピ:一度だけバックフィルする

Section titled “レシピ:一度だけバックフィルする”
  1. ショートカットを作成します。
  2. 指定期間のヘルスデータをエクスポートで、start = 2024-01-01、end = 2024-12-31を設定します。
  3. ショートカットから実行します。1年分を処理し、1日につき1ファイルを書き込みます。1年分すべてでは数分かかる場合があります。

レシピ:休暇中にスケジュールを一時停止する

Section titled “レシピ:休暇中にスケジュールを一時停止する”
  1. 集中モードフィルタ休暇の集中モードがオンになったら、Enabled = falseでスケジュールされたエクスポートをオン/オフを実行します。
  2. 集中モードがオフになったら、Enabled = trueでもう一度実行します。
権限の設定が必要です

インテントは、アプリ内のHealthKit権限とVaultの選択を引き継ぎます。このデバイスでアプリを一度も開いて設定していない場合は、明確なエラーを表示して失敗します。