Android SDK API リファレンス android-sdk-api-reference
概要 intro
このドキュメントでは、Adobe Pass認証バージョン 1.7 以降でサポートされる、Adobe Pass認証用Android SDK で公開されている方法とコールバックについて詳しく説明します。 ここで説明するメソッドとコールバック関数は、AccessEnabler.h および EntitlementDelegate.h ヘッダーファイルで定義されます。
最新のAndroid AccessEnabler SDK については、https://tve.zendesk.com/hc/en-us/articles/204963219-Android-Native-AccessEnabler-Library を参照してください。
注意: Adobe Pass Authentication チームでは、Adobe Pass Authentication パブリック API のみを使用することをお勧めします。
- パブリック API は、サポートされているすべてのクライアントタイプで利用可能 かつ完全にテスト済み です。 すべての公開機能で、各クライアントタイプに、関連するメソッドの対応するバージョンがあることを確認します。
- 公開 API は、後方互換性をサポートし、パートナー統合が損なわれないようにするために、できるだけ安定している必要があります。 ただし、非 公開 API の場合、当社は将来の時点で署名を変更する権利を留保します。 現在のパブリック Adobe Pass認証 API 呼び出しの組み合わせではサポートできない特定のフローが発生した場合は、お知らせいただくのが最善の方法です。 お客様のニーズを考慮して、公開 API を変更し、今後も安定したソリューションを提供できます。
ANDROID API api
- getInstance
- setOptions
- setRequestor
- setRequestorComplete
- checkAuthentication
- getAuthentication
- displayProviderDialog
- setSelectedProvider
- navigateToUrl
- getAuthenticationToken
- setAuthenticationStatus
- 事前認証
- checkAuthorization
- getAuthorization
- setToken
- tokenRequestFailed
- ログアウト
- getSelectedProvider
- selectedProvider
- getMetadata
- setMetadataStatus
- getVersion
Factory.getInstance getInstance
説明: Access Enabler オブジェクトをインスタンス化します。 アプリケーション・インスタンスごとに 1 つの Access Enabler インスタンスが必要です。
throws AccessEnablerException
public static AccessEnabler getInstance (Context appContext, String env_url, String softwareStatement, String redirectUrl)
throws AccessEnablerException
提供: v3.1.2 以降
パラメーター:
- appContext:Android アプリケーションコンテキスト。
- env_url: Adobeのステージング環境を使用してテストする場合は、env_url を「sp.auth-staging.adobe.com」に設定できます
非推奨:
public static AccessEnabler getInstance(Context appContext)
throws AccessEnablerException
setRequestor setRequestor
説明: プログラマーの ID を確立します。 各プログラマーには、Adobe Pass Authentication System のAdobeに登録すると、一意の ID が割り当てられます。 SSO およびリモート・トークンを処理する場合、アプリケーションがバックグラウンドにある場合に認証状態が変更される可能性があります。アプリケーションがフォアグラウンドになると、システム状態と同期するために setRequestor を再度呼び出すことができます(SSO が有効な場合はリモート・トークンを取得し、その間にログアウトが発生した場合はローカル・トークンを削除します)。
サーバー応答には、MVPD のリストと、プログラマーの ID に添付されたいくつかの設定情報が含まれています。 サーバ応答は、アクセス イネーブラ コードによって内部的に使用されます。 setRequestorComplete () コールバックを使用すると、操作のステータス(SUCCESS/FAIL)のみがアプリケーションに表示されます。
urls パラメーターを使用しない場合、生成されるネットワーク呼び出しは、デフォルトのサービスプロバイダー URL (Adobeリリース/実稼動環境)をターゲットにします。
urls パラメーターに値を指定すると、結果として得られるネットワーク呼び出しは、urls パラメーターで指定されるすべての URL をターゲットにします。 すべての設定要求が、別々のスレッドで同時にトリガーされます。 MVPD のリストをコンパイルする場合は、最初のレスポンダーが優先されます。 Access Enabler は、リスト内の各 MVPD に対して、関連するサービス プロバイダの URL を記憶します。 以降のすべての使用権限リクエストは、設定段階でターゲット MVPD とペアになったサービスプロバイダーに関連付けられた URL に送られます。
public void setRequestor(String requestorId)
提供: v3.0 以降
public void setRequestor(String requestorId, ArrayList<String> urls)
提供: v3.0 以降
パラメーター:
-
requestorID:プログラマーに関連付けられた一意の ID。 Adobe Pass Authentication サービスに初めて登録したときに、Adobeによって割り当てられた一意の ID をサイトに渡します。
-
signedRequestorID:秘密鍵でデジタル署名されたリクエスター ID のコピー。。
-
urls:オプションのパラメーターです。デフォルトでは、Adobe サービスプロバイダーが使用されます(http://sp.auth.adobe.com/)。 この配列を使用すると、Adobeが提供する認証サービスと承認サービスのエンドポイントを指定できます(デバッグ目的で別のインスタンスを使用することもできます)。 これを使用して、複数のAdobe Pass Authentication サービスプロバイダーインスタンスを指定できます。 その場合、MVPD リストはすべてのサービスプロバイダーのエンドポイントで構成されます。 各 MVPD は、最速のサービスプロバイダー、つまり、最初に応答し、その MVPD をサポートするプロバイダーに関連付けられます。
コールバックがトリガーされました: setRequestorComplete()
非推奨(廃止予定):
public void setRequestor (String requestorId, String signedRequestorId)
public void setRequestor (String requestorId, String signedRequestorId, ArrayList<String> url)
setRequestorComplete setRequestorComplete
説明: 構成フェーズが完了したことをアプリケーションに通知する Access Enabler によってトリガーされるコールバック。 これは、アプリが使用権限リクエストの発行を開始できることを示すシグナルです。 設定フェーズが完了するまで、アプリケーションが使用権限リクエストを発行することはできません。
提供: v1.0 以降
パラメーター:
-
ステータス:次のいずれかの値を取ることができます。
-
SDK >= 3.4.0
AccessEnablerConstants.ACCESS_ENABLER_STATUS_SUCCESS
– 構成フェーズが正常に完了しましたAccessEnablerConstants.ACCESS_ENABLER_STATUS_ERROR
– 構成フェーズが失敗しました
-
SDK < 3.4
AccessEnabler.ACCESS_ENABLER_STATUS_SUCCESS
– 構成フェーズが正常に完了しましたAccessEnabler.ACCESS_ENABLER_STATUS_ERROR
– 構成フェーズが失敗しました
-
Trigger by: setRequestor()
setOptions setOptions
説明: グローバル SDK オプションを設定します。 Map<String, String> を引数として受け入れます。 マップからの値は、SDK が行うすべてのネットワーク呼び出しと共にサーバーに渡されます。
これらの値は、現在のフロー(認証/承認)とは無関係にサーバーに渡されます。 値を変更する場合は、このメソッドをいつでも呼び出すことができます。
提供: v1.9.2 以降
パラメーター:
-
options:グローバル SDK オプションを含む Map<String, String>。 現在、次のオプションを使用できます。
- applicationProfile – この値に基づいてサーバーを設定するために使用できます。
- ap_vi - Experience Cloud ID (visitorID)。 この値は、後で高度な分析レポートに使用できます。
- ap_ai - Advertising ID
- device_info – ここで説明するクライアント情報: クライアント情報デバイス接続とアプリケーションを渡す。
checkAuthentication checkAuthN
説明: 認証ステータスを確認します。 これを行うには、ローカルトークンのストレージスペースで有効な認証トークンを検索します。 このメソッドはネットワーク呼び出しを実行しないので、メインスレッドで呼び出すことをお勧めします。 アプリケーションがユーザーの認証ステータスをクエリし、それに応じて UI を更新するために使用されます(例:ログイン/ログアウト UI を更新)。 認証状態は、setAuthenticationStatus () コールバックを介してアプリケーションに伝えられます。
MVPD が「Authentication per Requestor」機能をサポートしている場合、1 つのデバイスに複数の認証トークンを格納できます。 この機能について詳しくは、『Android技術概要』の キャッシュのガイドライン節を参照してください。
提供: v1.0 以降
パラメーター: なし
コールバックがトリガーされました: setAuthenticationStatus()
getAuthentication getAuthN
説明: 完全認証ワークフローを開始します。 まず、認証ステータスを確認します。 まだ認証されていない場合は、認証フロー state-machine が起動します。
- 最後の認証試行が成功した場合、MVPD 選択フェーズはスキップされ、navigateToUrl () コールバックがトリガーされます。 アプリケーションは、このコールバックを使用して、MVPD のログインページを持つユーザーを提示する WebView コントロールをインスタンス化します。
- 最後の認証の試行が失敗した場合、またはユーザーが明示的にログアウトした場合、displayProviderDialog () コールバックがトリガーされます。 アプリケーションは、このコールバックを使用して MVPD 選択 UI を表示します。 また、setSelectedProvider ()メソッドを使用して Access Enabler ライブラリにユーザーの MVPD 選択を通知することにより、認証フローを再開する必要があります。
ユーザーの資格情報は MVPD のログインページで検証されるため、ユーザーが MVPD のログインページで認証されている間に行われる複数のリダイレクト操作をアプリケーションで監視する必要があります。 正しい資格情報を入力すると、WebView コントロールは、AccessEnabler.ADOBEPASS_REDIRECT_URL 定数で定義されたカスタム URL にリダイレクトされます。 この URL は、WebView によって読み込まれることを意図していません。 アプリケーションはこの URL をインターセプトし、ログインフェーズが完了したことを示すシグナルとしてこのイベントを解釈する必要があります。 次に、認証フローを完了するために、アクセス イネーブラに制御を渡す必要があります(getAuthenticationToken () メソッドを呼び出します)。
MVPD が「要求者ごとの認証」機能をサポートしている場合、1 台のデバイスに複数の認証トークンを格納できます(プログラマごとに 1 つ)。 この機能について詳しくは、『Android技術概要』の キャッシュのガイドライン節を参照してください。
最後に、setAuthenticationStatus () コールバックを介して認証ステータスがアプリケーションに伝えられます。
提供: v1.0 以降
提供: v1.8 以降
パラメーター:
- forceAuthn:ユーザーが既に認証されているかどうかに関係なく、認証フローを開始する必要があるかどうかを指定するフラグ。
- data:有料テレビパスサービスに送信されるキーと値のペアで構成されるマップ。 Adobeはこのデータを使用して、SDK を変更せずに将来の機能を有効にできます。
コールバックがトリガーされました: setAuthenticationStatus(), displayProviderDialog(), navigateToUrl(), sendTrackingData()
displayProviderDialog displayProviderDialog
説明 アクセスイネーブラによってトリガーされるコールバック。これにより、ユーザーが目的の MVPD を選択できるように、適切な UI 要素をインスタンス化する必要があることがアプリケーションに通知されます。 コールバックは、MVPD オブジェクトのリストに、選択 UI パネルを正しく構築するのに役立つ追加情報(MVPD のロゴを指す URL、わかりやすい表示名など)を提供します。
ユーザーが目的の MVPD を選択したら、上位レイヤーのアプリケーションは setSelectedProvider ()を呼び出して ユーザーの選択に対応する MVPD の ID を渡すことによって、認証フローを再開する必要があります。
これは、ユーザーが「戻る」ボタンを押すことができる点であることに注意してください。これは、認証フローの中止に相当します。 このようなシナリオでは、アプリケーションで
setSelectedProvider()
メソッドを呼び出し、null をパラメータとして渡して、アクセス イネーブラに認証状態マシンをリセットする機会を与える必要があります。public void displayProviderDialog(ArrayList<Mvpd> mvpds)
提供: v1.0 以降
パラメーター:
- mvpds: MVPD 選択 UI 要素を構築するためにアプリケーションが使用できる、MVPD 関連の情報を保持する MVPD オブジェクトのリスト。
Trigger by: getAuthentication(), getAuthorization()
setSelectedProvider setSelectedProvider
説明: このメソッドは、ユーザーの MVPD 選択をアクセス イネーブラに通知するためにアプリケーションによって呼び出されます。 アプリケーションはこの方法を使用して、認証に使用するサービスプロバイダーを選択または変更できます。
選択した MVPD が TempPass MVPD の場合、後で getAuthentication ()を呼び出すことなく、その MVPD で自動的に認証されます。
getAuthentication () メソッドに追加のパラメーターが指定されている場合、プロモーションの一時パスでは使用できないことに注意してください。
パラメータとして null を渡した場合、アクセス イネーブラは、ユーザーが認証フローをキャンセルした([ 戻る ] ボタンを押した)ことを前提に、認証ステート マシンをリセットし、AccessEnablerConstants.PROVIDER_NOT_SELECTED_ERROR
エラーコードの setAuthenticationStatus () コールバックを呼び出して応答します。
提供: v1.0 以降
パラメーター: なし
コールバックがトリガーされました: setAuthenticationStatus(), sendTrackingData(), navigateToUrl()
navigateToUrl navigagteToUrl
非推奨: Android SDK 3.0 以降では、Chrome カスタムタブがデバイスに存在しない場合にのみ、navigateToUrl が使用されます
説明: アクセスイネーブラによってトリガーされるコールバック。資格情報を入力するために MVPD ログインページをユーザーに提示する必要があることをアプリケーションに通知します。 アクセス イネーブラは、MVPD ログイン ページの URL をパラメータとして渡します。 WebView コントロールをインスタンス化し、この URL にダイレクトするには、アプリケーションが必要です。 また、アプリケーションは、WebView コントロールによって読み込まれる URL を監視し、AccessEnabler.ADOBEPASS_REDIRECT_URL (deprecated)
定数によって定義されるカスタム URL をターゲットにするリダイレクト操作をインターセプトするために必要です。 このイベントが発生した場合、アプリケーションは getAuthenticationToken () メソッドを呼び出して、WebView コントロールを閉じるか非表示にし、アクセス イネーブラ ライブラリにコントロールを戻す必要があります。 Access Enabler は、バックエンド・サーバから認証トークンを取得し、そのトークンをトークン・ストレージにローカルに保存することによって、認証フローを完了します。
ユーザーが「戻る」ボタンを押せる点が、認証フローの中止と同じであることに注意してください。 このようなシナリオでは、null をパラメーターとして渡して setSelectedProvider () メソッドを呼び出し、アクセス イネーブラで認証状態マシンをリセットできるようにする必要があります。
提供: v1.0 以降
パラメーター:
- url:MVPD のログインページを指す URL
Trigger by: getAuthentication(), setSelectedProvider()
getAuthenticationToken getAuthNToken
非推奨: Android SDK 3.0 以降、Chromeの「カスタム」タブは認証に使用されるので、この方式はアプリケーションから使用されなくなりました。
説明: バックエンドサーバーに認証トークンをリクエストして、認証フローを完了します。 このメソッドは、MVPD ログインページをホストする WebView コントロールが AccessEnabler.ADOBEPASS_REDIRECT_URL
定数によって定義されるカスタム URL にリダイレクトされるイベントに対する応答としてのみ、アプリケーションで呼び出す必要があります。
提供: v1.0 以降
パラメーター:
- cookie:ターゲットドメインに設定される cookie (参照実装については、SDK のデモアプリケーションを参照してください)。
コールバックがトリガーされました: setAuthenticationStatus()
、sendTrackingData()
setAuthenticationStatus setAuthNStatus
説明: アクセス イネーブラによってトリガーされたコールバック。このコールバックは、
認証フローのステータスの適用。 多数あります
ユーザーの結果としてこの、このフローが失敗する可能性のある場所
インタラクションまたはその他の予期しないシナリオ(ネットワークなど)が原因
接続の問題など)。 このコールバックは、
認証フローの成功/失敗ステータス。
必要に応じて、エラー理由に関する追加情報を提供します。
提供: v1.0 以降
パラメーター:
-
ステータス:次のいずれかの値を取ることができます。
AccessEnablerConstants.ACCESS_ENABLER_STATUS_SUCCESS
– 認証フローが正常に完了しましたAccessEnablerConstants.ACCESS_ENABLER_STATUS_ERROR
– 認証フローが失敗しました
-
コード:失敗の理由。 status が
AccessEnablerConstants.ACCESS_ENABLER_STATUS_SUCCESS
の場合、code は空の文字列です(つまり、AccessEnablerConstants.USER_AUTHENTICATED
定数によって定義されます)。 エラーが発生した場合、このパラメーターには次のいずれかの値を指定できます。AccessEnablerConstants.USER_NOT_AUTHENTICATED_ERROR
- ユーザーが認証されていません。 ローカルトークンキャッシュに有効な認証トークンがない場合の checkAuthentication () メソッド呼び出しに応答して。AccessEnablerConstants.PROVIDER_NOT_SELECTED_ERROR
- AccessEnabler は、上位層アプリケーションがsetSelectedProvider()
に渡された null 後に認証ステート マシンをリセットして、認証フローを中止します。 ユーザーが認証フローをキャンセルした(つまり、「戻る」ボタンを押した)と考えられます。AccessEnablerConstants.GENERIC_AUTHENTICATION_ERROR
- ネットワークが利用できないか、ユーザーが認証フローを明示的に取り消したなどの理由により、認証フローが失敗しました。
Trigger by: checkAuthentication(), getAuthentication(), checkAuthorization()
checkPreauthorizedResources checkPreauth
非推奨: Android SDK 3.6 以降、事前に承認された API は checkPreauthorizedResources を置き換え、拡張エラーコードを提供します。
説明: このメソッドは、保護された特定のリソースを表示する権限がユーザーに既にあるかどうかを判断するためにアプリケーションで使用されます。 このメソッドの主な目的は、UI の修飾に使用する情報を取得することです(例えば、ロックアイコンとロック解除アイコンでアクセスステータスを示すなど)。
public void checkPreauthorizedResources(ArrayList<String> resources)
提供: v1.3 以降
Parameters: resources
パラメーターは、認証をチェックする必要があるリソースの配列です。 リストの各要素は、リソース ID を表す文字列である必要があります。 リソース ID には、getAuthorization()
呼び出しのリソース ID と同じ制限が適用されます。つまり、プログラマと MVPD またはメディア RSS フラグメントとの間で確立された合意値である必要があります。
コールバックがトリガーされました: preauthorizedResources()
checkPreauthorizedResources checkPreauth2
非推奨: Android SDK 3.6 以降、事前に承認された API は checkPreauthorizedResources を置き換え、拡張エラーコードを提供します。
説明: このメソッドは、保護された特定のリソースを表示する権限がユーザーに既にあるかどうかを判断するためにアプリケーションで使用されます。 このメソッドの主な目的は、UI の修飾に使用する情報を取得することです(例えば、ロックアイコンとロック解除アイコンでアクセスステータスを示すなど)。
public void checkPreauthorizedResources(ArrayList<String> resources, boolean cache)
提供: v3.1 以降
Parameters: resources
パラメーターは、認証をチェックする必要があるリソースの配列です。 リストの各要素は、リソース ID を表す文字列である必要があります。 リソース ID には、getAuthorization()
呼び出しのリソース ID と同じ制限が適用されます。つまり、プログラマと MVPD またはメディア RSS フラグメントとの間で確立された合意値である必要があります。
cache
パラメーターは、キャッシュされた事前認証応答を使用できるかどうかを指定します。 デフォルトのキャッシュは true で、利用可能な場合、SDK は以前にキャッシュされた応答を返します。
コールバックがトリガーされました: preauthorizedResources()
preauthorizedResources preauthResources
非推奨: Android SDK 3.6 以降、事前に承認された API は checkPreauthorizedResources を置き換え、拡張エラーコードを提供します。 preauthorizedResources コールバックは、新しい API では呼び出されません。
説明: checkPreauthorizedResources ()によってトリガーされるコールバック。 ユーザーが既に表示を許可されているリソースのリストを提供します。
public void checkPreauthorizedResources(ArrayList<String> resources)
提供: v1.3 以降
Parameters: resources
パラメーターは、ユーザーが既に表示を許可されているリソースの配列です。
Trigger by: checkPreauthorizedResources()
checkAuthorization
説明: このメソッドは、承認ステータスを確認するためにアプリケーションで使用されます。 まず、認証ステータスを最初に確認します。 認証されていない場合、setTokenRequestFailed () コールバックがトリガーされ、メソッドが終了します。 認証されたユーザーは、認証フローもトリガーします。 getAuthorization () メソッドの詳細を参照してください。
提供: v1.0 以降
提供: v1.8 以降
パラメーター:
- resourceId:ユーザーが認証をリクエストするリソースの ID。
- data:有料テレビパスサービスに送信されるキーと値のペアで構成されるマップ。 Adobeはこのデータを使用して、SDK を変更せずに将来の機能を有効にできます。
コールバックがトリガーされました: tokenRequestFailed(), setToken(),sendTrackingData(), setAuthenticationStatus()
getAuthorization
説明: このメソッドは、承認フローを開始するためにアプリケーションによって使用されます。 ユーザーがまだ認証されていない場合は、認証フローも開始します。 ユーザーが認証されると、アクセス イネーブラは認証トークンの要求(有効な認証トークンがローカル トークン キャッシュに存在しない場合)と短期間有効なメディア トークンの要求を発行します。 短いメディアトークンが取得されると、認証フローは完了と見なされます。 setToken () コールバックがトリガーされ、短いメディアトークンがパラメーターとしてアプリケーションに配信されます。 何らかの理由で認証が失敗した場合、tokenRequestFailed () コールバックがトリガーされ、エラーコードと詳細が提供されます。
提供: v1.0 以降
提供: v1.8 以降
パラメーター:
- resourceId:ユーザーが認証をリクエストするリソースの ID。
- data:有料テレビパスサービスに送信されるキーと値のペアで構成されるマップ。 Adobeはこのデータを使用して、SDK を変更せずに将来の機能を有効にできます。
コールバックがトリガーされました: tokenRequestFailed(), setToken(), sendTrackingData()
このメソッドは、次のコールバックもトリガーできます(フローも開始される場合)。setAuthenticationStatus ()、displayProviderDialog ()、navigateToUrl ()
注意:可能な限り、getAuthorization ()の代わりに checkAuthorization ()を使用してください。 getAuthorization () メソッドは完全な認証フローを開始します(ユーザーが認証されていない場合)。これにより、プログラマ側の実装が複雑になる可能性があります。
setToken setToken
説明: 認証フローが正常に完了したことをアプリケーションに通知する、アクセス イネーブラによってトリガーされたコールバック。 短時間のみ有効なメディアトークンもパラメーターとして配信されます。
提供: v1.0 以降
パラメーター:
- token:短時間のみ有効なメディアトークン
- resourceId:認証が取得されたリソース
Trigger by: checkAuthorization()
, getAuthorization()
tokenRequestFailed tokenRequestFailed
説明: 認証フローが失敗したことを上位層アプリケーションに通知するアクセス イネーブラによってトリガーされたコールバック。
String errorCode, String errorDescription)
提供: v1.0 以降
パラメーター:
-
resourceId:認証が取得されたリソース
-
errorCode:失敗シナリオに関連付けられたエラーコード。 使用可能な値:
AccessEnablerConstants.USER_NOT_AUTHORIZED_ERROR
– 指定されたリソースをユーザーが承認できませんでした
-
errorDescription:失敗シナリオに関する追加の詳細。 何らかの理由でこの記述文字列が使用できない場合、Adobe Pass認証は空の文字列 (") を送信します。
この文字列は、MVPD がカスタム エラーメッセージやセールス関連のメッセージを渡すために使用できます。 例えば、サブスクライバーがリソースの認証を拒否された場合、MVPD は次のようなメッセージを送信する場合があります。「現在、パッケージ内のこのチャネルにはアクセスできません。 パッケージをアップグレードする場合は、ここをクリックしてください。」です。 メッセージは、このコールバックを通じてAdobe Pass認証によってプログラマーに渡され、プログラマーは表示または無視のオプションを持ちます。 Adobe Pass認証では、このパラメーターを使用して、エラーを引き起こした可能性のある条件の通知を提供することもできます。 例えば、「プロバイダーの認証サービスと通信する際にネットワークエラーが発生しました」などです。
Trigger by: checkAuthorization(), getAuthorization()
ログアウト logout
説明: このメソッドを使用して、ログアウトフローを開始します。 ログアウトは、ユーザーがAdobe Pass認証サーバーと MVPD の両方のサーバーからログアウトする必要があるために、一連の HTTP リダイレクト操作の結果です。 その結果、このフローは、Access Enabler ライブラリから発行された単純な HTTP リクエストでは完了できません。 Chrome カスタムタブは、HTTP リダイレクト操作を実行するために SDK で使用されます。 このフローは、ユーザーに表示され、完了すると閉じられます
提供: v1.0 以降
パラメーター: なし
トリガーされたコールバック:
- 3.0 より前の SDK バージョンの
navigateToUrl()
setAuthenticationStatus()
for SDK バージョン > 3.0
getSelectedProvider getSelectedProvider
説明: このメソッドを使用して、現在選択されているプロバイダを確認します。
提供: v1.0 以降
パラメーター: なし
コールバックがトリガーされました: selectedProvider()
selectedProvider
説明: 現在選択されている MVPD に関する情報をアプリケーションに提供するアクセス イネーブラによってトリガーされたコールバック。
提供: v1.0 以降
パラメーター:
- mvpd:現在選択されている MVPD に関する情報を含むオブジェクト
Trigger by: getSelectedProvider()
getMetadata getMetadata
説明: このメソッドを使用して、Access Enabler ライブラリによってメタデータとして公開された情報を取得します。 アプリケーションは、複合 MetadataKey オブジェクトを提供することでこの情報にアクセスできます。
public void getMetadata(MetadataKey metadataKey)
提供: v1.0 以降
プログラマーが使用できるメタデータには次の 2 種類があります。
- 静的メタデータ(認証トークン TTL、認証トークン TTL およびデバイス ID)
- ユーザーメタデータ(ユーザー ID や郵便番号など、ユーザー固有の情報。認証フローや承認フローの実行中に MVPD からユーザーのデバイスに渡される)
パラメーター:
-
metadataKey:キーと args 変数をカプセル化したデータ構造。意味は次のとおりです。
-
キーが
METADATA_KEY_USER_META
で、引数に name =METADATA_ARG_USER_META
、value =[metadata_name]
の SerializableNameValuePair オブジェクトが含まれる場合、ユーザーメタデータに対するクエリが実行されます。 使用可能なユーザーメタデータタイプの現在のリスト:-
zip
– 郵便番号 -
householdID
– 世帯の識別子。 MVPD がサブアカウントをサポートしていない場合、これはuserID
と同じです。 -
maxRating
- ユーザーの保護者による制限の上限 -
userID
- ユーザー ID。 MVPD がサブアカウントをサポートし、ユーザーがメインアカウントでない場合、userID
はhouseholdID
とは異なります。 -
channelID
- ユーザーが表示できるチャネルのリスト
-
-
キーが
METADATA_KEY_DEVICE_ID
の場合、現在のデバイス ID を取得するためにクエリが実行されます。 この機能はデフォルトで無効になっており、プログラマーはイネーブルメントと料金についてAdobeに問い合わせる必要があります。 -
キーが
METADATA_KEY_TTL_AUTHZ
で、引数に name =METADATA_ARG_RESOURCE_ID
、value =[resource_id]
の SerializableNameValuePair オブジェクトが含まれる場合、クエリは、指定されたリソースに関連付けられた認証トークンの有効期限を取得するために実行されます。 -
キーが
METADATA_KEY_TTL_AUTHN
の場合、クエリが実行されて認証トークンの有効期限が取得されます。
-
METADATA_KEY_USER_META, METADATA_KEY_DEVICE_ID, METADATA_KEY_TTL_AUTHZ, METADATA_KEY_TTL_AUTHN
com.adobe.adobepass.accessenabler.api.profile.UserProfileService から入手できます。コールバックがトリガーされました: setMetadataStatus()
詳細情報: ユーザーメタデータ
setMetadataStatus setMetadaStatus
説明: getMetadata () 呼び出しを介して要求されたメタデータを配信するアクセス イネーブラによってトリガーされたコールバック。
public void setMetadataStatus(MetadataKey key, MetadataStatus result)
提供: v1.0 以降
パラメーター:
-
key:メタデータ値がリクエストされるキーと関連パラメーターを含む MetadataKey オブジェクト(参照実装についてはデモアプリケーションを参照してください)。
-
result:リクエストされたメタデータを含む複合オブジェクト。 オブジェクトには次のフィールドがあります。
-
simpleResult:認証 TTL、認証 TTL、デバイス ID のいずれかに対してリクエストが行われたときのメタデータ値を表す文字列。 ユーザーメタデータに対してリクエストが行われた場合、この値は null です。
-
userMetadataResult:JSON ユーザーメタデータペイロードの Java 表現を含むオブジェクト。
例:
-
'{
"street": "Main Avenue",
"buildings": ["150", "320"]
}'
は、次のように Java に翻訳されます。
Map("street" -> "Main Avenue", "buildings" -> List("150", "320")))
ユーザーメタデータオブジェクトの実際の構造は、次のようになります。
{
updated: 1334243471,
encrypted: ["encryptedProp"],
data: {
zip: ["12345", "34567"],
maxRating: {
"MPAA": "PG-13",
"VCHIP": "TV-Y",
"URL": "http://exam.pl/e/manage/ratings"
},
householdID: "3456",
userID: "BgSdasfsdk23/dsaf3+saASesadgfsShggssd=",
channelID: ["channel-1", "channel-2"]
}
}
単純なメタデータ(認証 TTL、承認 TTL またはデバイス ID)に対してリクエストが行われた場合、この値は null になります。
- encrypted:取得したメタデータを暗号化するかどうかを指定するブール値。 このパラメーターは、ユーザーメタデータリクエストでのみ重要で、常に暗号化されずに受信される静的メタデータ(例:認証 TTL)には意味を持ちません。 このパラメーターを True に設定した場合、許可リスト登録済みの秘密鍵(
setRequestor
呼び出しのリクエスター ID の署名に使用されるのと同じ秘密鍵)を使用して RSA 復号化を実行し、暗号化されていないユーザーメタデータ値を取得するかどうかは、プログラマー次第です。
Trigger by: getMetadata()
詳細情報: ユーザーメタデータ
getVersion getVersion
説明: このメソッドを使用すると、AccessEnabler ライブラリのバージョンを取得できます。
public static String getVersion()
追跡イベント tracking
Access Enabler は、エンタイトルメント フローに必ずしも関連しない追加のコールバックをトリガーします。 sendTrackingData () という名前のイベントトラッキングコールバック関数の実装はオプションですが、アプリケーションは特定のイベントを追跡し、認証/承認の成功/失敗の試行回数などの統計をコンパイルすることができます。 sendTrackingData () コールバックの仕様を以下に示します。
sendTrackingData sendTrackingData
説明: アクセス イネーブラによってトリガーされたコールバックは、認証/承認フローの完了/失敗など、さまざまなイベントの発生をアプリケーションに通知します。 デバイスの種類、Access Enabler クライアントの種類、およびオペレーティング システムも sendTrackingData ()によって報告されます。
-
デバイスタイプに指定可能な値:
computer
tablet
mobile
gameconsole
unknown
-
Access Enabler クライアント・タイプに指定可能な値:
flash
html5
ios
android
public void sendTrackingData(Event event, ArrayList<String> data)
提供: v1.0 以降
パラメーター:
-
event:トラッキングされるイベント。 次の 3 つのトラッキングイベントタイプが考えられます。
- authorizationDetection: 認証トークンリクエストが返されるたびに発生します(イベントタイプは
EVENT_AUTHZ_DETECTION
)。 - authenticationDetection: 認証チェックが発生するたびに(イベントタイプが
EVENT_AUTHN_DETECTION
) - mvpdSelection: ユーザーが MVPD 選択フォームで MVPD を選択したとき(イベントタイプは
EVENT_MVPD_SELECTION
)
- authorizationDetection: 認証トークンリクエストが返されるたびに発生します(イベントタイプは
-
data:レポートされたイベントに関連付けられている追加データ。 このデータは、値のリストの形式で表示されます。
data の値を解釈する手順を次に示します
配列:
-
イベントタイプが
EVENT_AUTHN_DETECTION
の場合:- 0 - トークンリクエストが成功したかどうか(true/false)と、上記が true の場合:
- 1 - MVPD ID 文字列
- 2 - GUID (md5 ハッシュ化)
- 3 - トークンは既にキャッシュにあります(true/false)
- 4 - デバイスタイプ
- 5:Access Enabler クライアント・タイプ
- 6 - オペレーティングシステムの種類
-
イベントタイプ
EVENT_AUTHZ_DETECTION
の場合- 0 - トークンリクエストが成功したかどうか(true/false)と成功した場合は次の値:
- 1 - MVPD ID
- 2 - GUID (md5 ハッシュ化)
- 3 - トークンは既にキャッシュにあります(true/false)
- 4 - エラー
- 5 – 詳細
- 6 - デバイスタイプ
- 7:Access Enabler クライアント・タイプ
- 8 - オペレーティングシステムの種類
-
イベントタイプ
EVENT_MVPD_SELECTION
の場合- 0 – 現在選択されている MVPD の ID
- 1 - デバイスタイプ
- 2:Access Enabler クライアント・タイプ
- 3 - オペレーティングシステムの種類
トリガー: checkAuthentication()
、getAuthentication()
、checkAuthorization()
、getAuthorization()
、setSelectedProvider()