アドインで機能の一部に特定の機能拡張機能を使用しているが、機能拡張機能を必要としないその他の便利な機能がある場合は、拡張機能機能をサポートしていないプラットフォームと Office のバージョンの組み合わせにインストールできるようにアドインを設計する必要があります。 これらの組み合わせに関する貴重な、減少したエクスペリエンスを提供できます。
2 つのエクスペリエンスの違いが、マニフェストで構成されている機能ではなく、呼び出される Office JavaScript ライブラリ API の違いで完全に構成されている場合は、実行時にテストして、ユーザーの Office クライアントが API 要件セットをサポートしているかどうかを検出します。 また、セットに含まれていない API がサポートされているかどうかを実行時にテストすることもできます。
注:
マニフェスト構成を必要とする機能で代替エクスペリエンスを提供するには、「 統合マニフェストで Office ホストと API 要件を指定 する」または「 アドインのみのマニフェストで Office アプリケーションと API 要件を指定する」のガイダンスに従います。
要件セットのサポートを確認する
isSetSupported メソッドは、要件セットのサポートをチェックするために使用されます。 要件セットの名前と最小バージョンをパラメーターとして渡します。 要件セットがサポートされている場合、 isSetSupported は trueを返します。 次のコードは一例です。
if (Office.context.requirements.isSetSupported("WordApi", "1.2")) {
// Code that uses API members from the WordApi 1.2 requirement set.
} else {
// Provide diminished experience here.
// For example, run alternate code when the user's Word is
// volume-licensed perpetual Word 2016 (which doesn't support WordApi 1.2).
}
このコードについては、以下の点に注意してください。
- 最初のパラメーターが必要です。 これは、要件セットの名前を表す文字列です。 利用できる要件セットの詳細については、「Office アドインの要件セット」を参照してください。
- 2 番目のパラメーターは省略可能です。 これは、
ifステートメント内のコードを実行するために Office アプリケーションがサポートする必要がある最小要件セット のバージョンを指定する文字列です (例: "1.9")。 使用しない場合は、バージョン "1.1" が想定されます。
警告
isSetSupported メソッドを呼び出す場合、2 番目のパラメーターの値 (指定した場合) は数値ではなく文字列にする必要があります。 JavaScript パーサーは、1.1 や 1.10 などの数値を区別できません。一方、"1.1" や "1.10" などの文字列値の場合は区別できません。
次の表は、アプリケーション固有の API モデルの要件セット名を示しています。
| Office アプリケーション | RequirementSetName |
|---|---|
| Excel | ExcelApi |
| OneNote | OneNoteApi |
| Outlook | Mailbox |
| PowerPoint | PowerPointApi |
| Word | WordApi |
次に、共通 API モデル要件セットのいずれかで メソッドを使用する例を示します。
if (Office.context.requirements.isSetSupported('CustomXmlParts')) {
// Run code that uses API members from the CustomXmlParts requirement set.
} else {
// Run alternate code when the user's Office application doesn't support the CustomXmlParts requirement set.
}
注:
これらのアプリケーションの isSetSupported メソッドと要件セットは、CDN 上の最新の Office.js ファイルで使用できます。 CDN から Office.js を使用しない場合、 isSetSupported が未定義の古いバージョンのライブラリを使用している場合、アドインによって例外が生成される可能性があります。 詳細については、「 最新の Office JavaScript API ライブラリを使用する」を参照してください。
セットレス API のサポートを確認する
アドインが要件セットの一部ではないメソッド (セットレス API と呼ばれる) に依存している場合は、ランタイム チェックを使用して、次のコード例に示すように、メソッドが Office アプリケーションでサポートされているかどうかを判断します。 要件セットに属さないメソッドの詳細な一覧については、「Office アドインの要件セット」を参照してください。
注:
アドインのコードでのこの種のランタイム チェックは、限定的に使用することをお勧めします。
次のコード例では、Office アプリケーションが document.setSelectedDataAsyncをサポートしているかどうかを確認します。
if (Office.context.document.setSelectedDataAsync) {
// Run code that uses `document.setSelectedDataAsync`.
}
関連項目
Office Add-ins