基本的な統合
1. ドメイン設定
事前初期化の前に、setTrackDomain API を呼び出して、プライベート環境のデータ収集ドメインを設定します。この API は、他の SDK API よりも前に呼び出してください。
import { setTrackDomain } from '@quicktracking/analytics';
/**
* アナリティクスログをアップロードするためのプライマリドメインとスタンバイドメインを設定します。
* SDK はまずプライマリドメインへのデータ送信を試みます。失敗した場合は、スタンバイドメインで再試行します。
* primaryDomain は null または空文字列にできません。null または空文字列の場合、SDK は次のエラーをログに記録します: "Data collection domain cannot be empty. Check your domain settings!"
* スタンバイドメインは null または空文字列にできます。この場合、SDK はプライマリドメインと同一として扱います。データアップロードが失敗した場合、SDK はプライマリドメインへのデータ送信を再試行します。
* ドメインパラメーターには、"https://" プレフィックスを含める必要があります。
*/
function setTrackDomain(primaryDomain: string, standbyDomain?: string)
|
パラメーター |
説明 |
|
primaryDomain |
ログアップロード用のプライマリドメインです。 |
|
standbyDomain |
ログアップロード用のスタンバイドメインです。 |
注: HTTP および HTTPS プロトコルプレフィックスのみがサポートされています。プロトコルプレフィックスを指定しない場合、SDK はデフォルトで HTTPS を使用します。
2. 準拠した初期化
データプライバシー規制に準拠するため、ユーザーがプライバシーポリシーに同意するまで、アプリケーションは個人情報を収集してはなりません。QuickTracking SDK for HarmonyOS NEXT は、初期化を 事前初期化 と 初期化 の 2 つのステップに分けています。準拠した初期化を実現するには、次の手順に従ってください。
-
アプリケーションの初回起動時に、プライバシーポリシーを表示し、ユーザーの同意を取得します。
-
プライバシーポリシーには、QuickTracking SDK を使用してデータ収集を行うことを明記する必要があります。次の条項を追加することを推奨します:「本製品は QuickTracking SDK を統合しており、統計分析サービスを提供するために、お客様の OAID、Huawei AAID、SIM カード IMSI、ハードウェアシリアル番号、MCC、および MNC を収集します。」
-
ユーザーがプライバシーポリシーに同意した後にのみ、QuickTracking SDK を初期化してください。
2.1. 事前初期化 API
事前初期化 API を呼び出してください。この呼び出しでは、デバイス情報の収集や QuickTracking サービスへのデータ送信は行われません。
2.1.1. API
import { preInit } from '@quicktracking/analytics';
function preInit(cfg: UMConfig):void
2.1.2. パラメーター
|
パラメーター |
型 |
説明 |
必須 |
|
context |
common.ApplicationContext |
アプリケーションコンテキストです。 |
はい |
|
appKey |
文字列 |
一意のアプリケーション識別子です。QuickTracking バックエンドで設定された appKey と一致する必要があります。 SDK は、すべてのイベントログと共にこのキーを送信し、アプリケーションを識別します。 |
はい |
|
plugins |
BasePlugin | BasePlugin[] |
有効にするプラグインまたはプラグインの配列です。 |
はい |
|
channel |
文字列 |
アプリケーションの配布チャネルです。この値は、QuickTracking アナリティクスプラットフォームの「システムプロパティ」セクションにある「アップグレードチャネル」フィールドに対応します。 |
いいえ |
|
enableLog |
ブール値 |
デバッグログを有効にするかどうかを指定します。デフォルトは |
いいえ |
|
enableJSBridge |
ブール値 |
H5 ブリッジ機能を有効にするかどうかを指定します。デフォルトは |
いいえ |
|
enableAutoTrackApplication |
ブール値 |
アプリケーションライフサイクルの自動追跡を有効にするかどうかを指定します。デフォルトは |
いいえ |
|
enableAutoTrackPage |
ブール値 |
ページの自動追跡を有効にするかどうかを指定します。デフォルトは |
いいえ |
|
deviceManufacturer |
文字列 |
カスタムのデバイス製造元です。 |
いいえ |
|
deviceBrand |
文字列 |
カスタムのデバイスブランドです。 |
いいえ |
|
marketName |
文字列 |
カスタムのマーケット名です。 |
いいえ |
|
deviceName |
文字列 |
カスタムのデバイス名です。 |
いいえ |
|
hardwareModel |
文字列 |
カスタムのハードウェアモデルです。 |
いいえ |
|
CPU |
文字列 |
カスタムの CPU タイプです。 |
いいえ |
|
deviceType |
文字列 |
カスタムのデバイスタイプです。 |
いいえ |
|
screenResolution |
文字列 |
カスタムの画面解像度です。 |
いいえ |
|
OSVersion |
文字列 |
カスタムの OS バージョンです。 |
いいえ |
|
customAAID |
文字列 |
カスタムの AAID です。 |
いいえ |
|
customODID |
文字列 |
カスタムの ODID です。 |
いいえ |
|
customOAID |
文字列 |
カスタムの OAID です。 |
いいえ |
特定のデバイス識別子の収集を制御する (収集を無効にする、または独自の実装を提供するなど) には、事前初期化時にカスタム値を渡してください。
preInit({
appKey: 'YOUR_APP_KEY'
context: this.context.getApplicationContext(),
enableJSBridge: true,
enableAutoTrackApplication: true,
enableAutoTrackPage: true,
plugins: [new InternalPlugin()],
customAAID: "", // AAID の収集を無効にします
customODID: "YOUR_CUSTOM_ODID",
customOAID: "YOUR_CUSTOM_OAID",
});
重要: カスタム収集メソッドの実装には十分注意してください。識別子にカスタム実装を提供する場合、その収集に対する全責任を負うことになり、SDK はそれ以降その識別子の収集を試みません。SDK がアクセスできる識別子を制限すると、アナリティクスデータの精度と安定性に悪影響を及ぼします。
2.2. 初期化 API
ユーザーがプライバシーポリシーに同意した後、init API を呼び出してログの収集と送信を開始してください。
2.2.1. API
import { init } from '@quicktracking/analytics';
function init():Promise<void>
2.3. 初期化 API の呼び出し
アプリケーションモジュールディレクトリに、entry/src/main/ets/abilityStage/MyAbilityStage.ets などの AbilityStage ファイルを追加してください。次の画像はファイルの場所を示しています。

モジュールの module.json5 ファイルに、srcEntry を追加し、AbilityStage ファイルパスを指定してください。

2.3.1. 完全な例
import AbilityStage from '@ohos.app.ability.AbilityStage';
import { preInit, InternalPlugin, setLogEnabled, init, setTrackDomain } from '@quicktracking/analytics';
// デバッグログを有効にします。
setLogEnabled(true);
// データ収集ドメインを設定します。
setTrackDomain("YOUR_PRIMARY_DOMAIN", "YOUR_STANDBY_DOMAIN");
export default class MyAbilityStage extends AbilityStage {
onCreate() {
preInit({
appKey: 'YOUR_APP_KEY'
context: this.context.getApplicationContext(),
enableJSBridge: true,
enableAutoTrackApplication: true,
enableAutoTrackPage: true,
plugins: [new InternalPlugin()]
});
init();
}
}
重要: init() メソッドは、ユーザーがプライバシーポリシーに同意した後にのみ呼び出してください。この呼び出しは、preInit() メソッドの後に呼び出す必要があります。データの収集と送信は、init() が呼び出されるまで開始されません。
3. ログ出力
setLogEnabled API を呼び出して、SDK ログメッセージを有効または無効に設定します。
import { setLogEnabled } from '@quicktracking/analytics';
function setLogEnabled(enable: boolean):void
|
パラメーター |
説明 |
|
enable |
SDK ログメッセージを有効または無効にするかを指定します。デフォルトは |
注:
-
初期化ログを表示するには、初期化メソッドを呼び出す前にログを有効にしてください。
-
ログは 3 つのレベルに分類されます:
-
error: SDK の統合または実行時の問題に関連するエラーメッセージです。 -
warn: SDK の警告メッセージです。 -
info: SDK の情報メッセージです。