目录
此内容是否有帮助?

# Android SDK Weex フレームワークサポート

このガイドでは、Weex で Android SDK の機能を使用する方法について説明します。

最新バージョンバージョン: 2.0.0

更新時間は: 2020-06-06

# I.統合 SDK

# 1.1 統合 Android SDK と Weex サポートテキスト

Android SDK の統合 Android SDKAndroid SDK 使用ガイド

Android SDK の統合が完了したら、ここをクリックし (opens new window)Weex サポートテキストをダウンロードし、解凍してWeexThinkingDataAnalyticsModule.javaテキストをプロジェクトプロジェクトに追加

テキストの追加が完了したら、Application の onCreate メソッドに WeexThinkingDataAnalyticsModule モジュール

 try {
      WXSDKEngine.registerModule("WeexThinkingDataAnalyticsModule", WeexThinkingDataAnalyticsModule.class);
    } catch (WXException e) {
      e.printStackTrace();
    }

また、Android SDK はAndroidM変更することができ、通常、デフォルト設定を使用すればよい。Log 機能を開くことができます。

アップロードするネットワーク条件を設定します。デフォルトでは、SDK は 3G、4G、Wifi でデータをアップロードするネットワーク条件を設定しますsetNetworkType メソッドを使用してアップロードを許可するネットワーク条件を変更できます。

Android SDK v2.3.0 以降、SDK は自己ビザの本を設定することができます。

Android SDK は v2.3.0 以降、クライアント SDK は Debug モードをサポートしています。

Android SDK はバージョン 2.3.1 以降、デフォルトのタイムゾーンの設定をサポートしており、必要に応じて構成できます。

を参照してAndroid SDK 使用ガイド

# 1.2 JS テキストでのモジュールの取得

具体的に使用する JS テキストに以下のコードを追加してください:

var tamodal = weex.requireModule("WeexThinkingDataAnalyticsModule");

# 1.3 Weex での SDK 機能の使用

インポートが完了したら、RN で SDK 機能

# 二、ユーザー ID を設定する

# 2.1 ゲスト ID の設定(オプション)

アプリがユーザーごとに独自のゲスト ID 管理システムを持っている場合は、identifyを呼び出してゲスト ID を設定できます

tamodal.identify({
  appID: "YOUR_APPID",
  distinctId: "distinctId1"
});

# 2.2 アカウント ID の設定

ユーザーがログインすると、loginを呼び出してユーザーのアカウント ID を設定し、アカウント ID を設定した後、アカウント ID を識別 ID として設定し、設定したアカウント ID は logout を呼び出すlogoutまで保持します

tamodal.login({
  appID: "YOUR_APPID",
  loginId: "weex_textlogin"
});

loginは何度も呼び出すことができ、呼び出しのたびに、着信したアカウント ID が以前に保存した ID と一致するかどうかを判断し、一致する場合は呼び出しを無視し、一致しない場合は以前の ID を上書きします。

この方法では、ユーザーがログインしたイベントはアップロードされません

# 2.3 アカウント ID のクリア

ユーザーがログアウトした後、ログアウトてアカウント ID をクリアできます。次回ログインする前に、ゲスト ID を ID として使用します

tamodal.logout({ appID: "YOUR_APPID" });

ユーザーがアカウントをキャンセルした場合など、明示的なログアウトイベント時にログアウトログアウトを呼び出すことをお勧めします。

この方法では、ユーザーが登録したイベントはアップロードされません

# 三、事件を送る

# 3.1 送信イベント

を呼び出しtrackてイベントをアップロードできます。このインターフェイスは SDK のtrackインターフェイスを呼び出します。詳細な使用方法は SDK ドキュメントのtrackインターフェイスの紹介を参照してください

tamodal.track({
  appID: "YOUR_APPID",
  eventName: "track"
});

tamodal.track({
  appID: "YOUR_APPID",
  eventName: "rn_texttrack",
  properties: {
    KEY_NUMBER: 1.02,
    KEY_STRING: "name",
    KEY_LIST: [1, 2, 3],
    KEY_BOOL: true,
    KEY_DateTime: "2020-05-12 06:27:18.371"
  },
  time: new Date("May 17, 2020 03:24:00").getTime(),
  timeZone: "UTC"
});

eventNameはイベントのイベント名で、プロパティはイベントのすべての属性で、Android SDK v2.2.0 でイベントトリガー時間とタイムシフトを設定するメソッドオーバーロードが追加され、着信time型のパラメータをサポートしてイベントトリガー時間を設定し、timeZoneでタイムシフトを設定します。このパラメーターを渡さないと、track呼び出されたときのネイティブ時刻とオフセットがイベントトリガー時刻およびタイムゾーンオフセットとして取得されます。

注意:イベントはトリガー時間を設定できますが、受信側は次のような制限をして、相対サーバー時間の 10 日前から 3 日後までのデータしか受信しません。期限を超えたデータは異常データとみなされ、データ全体が入庫できません。

Android SDK v2.3.1 以降、SDK のデフォルトのタイムゾーンを設定することで、複数のタイムゾーンでのイベント時間を揃えることができます。Android SDK 使用ガイド設定してください。Android SDK v2.5.0 以降では、SDK タイムインターフェイスのキャリブレーションを使用して、サービス側の時間を使用してデータ収集を一元的に完了できますキャリブレーションタイムのセクション

# 3.2 パブリックイベントプロパティの設定

ユーザーのメンバーシップレベル、ソースチャネルなどの重要なプロパティは、イベントごとに設定する必要があります。共通イベントプロパティとは、各イベントに含まれるプロパティのことです。setSuperProperties を呼び出し共通イベントプロパティを設定できます。イベントを送信する前に、共通イベントプロパティを設定することをお勧めします。

パブリックイベントプロパティのフォーマット要件は、イベントプロパティと一致します。

tamodal.setSuperProperties({
  appID: "YOUR_APPID",
  properties: { superKey: 1, superKey2: "value" }
});

必要がある場合は、unsetSuperProperty``呼び出して指定されたパブリックイベントプロパティをクリアできます

tamodal.unsetSuperProperty({
  appID: "YOUR_APPID",
  properties: "superKey"
});

tamodal.clearSuperProperties({ appID: "YOUR_APPID" });

# 3.3 記録された事件の長さ

を呼び出してtimeEventタイミングを開始し、タイミングを設定するイベント名を設定します。イベントをアップロードすると、自動的にイベントプロパティに#durationを追加して、レコードの長さを秒で表します。

tamodal.timeEvent({
  appID: "YOUR_APPID",
  eventName: "rn_texttrack"
});

渡されたパラメータは、時間を記録する必要があるイベントのイベント名で、イベントがトリガーされるとタイミングが停止し、#durationというタイミング属性がイベントに記録され

RN に設定されたタイミングで Android SDK がアップロードした対応イベントを記録でき、同様に Android SDK に設定されたタイミングで RN にアップロードした対応イベント

# 四、ユーザー属性

TA プラットフォームで現在サポートされているユーザープロパティ設定インターフェイスはuserSetuserSetOnceuserAdduserUnsetuserDeluserAppendです

# 4.1 ユーザーセット

一般的なユーザープロパティの場合は、userSetを呼び出して設定できます。このインターフェイスを使用してアップロードされたプロパティは、元のプロパティ値を上書きします。以前にユーザープロパティが存在しなかった場合は、新しいユーザープロパティが作成されます。ユーザー名の設定の例として、受信プロパティのタイプと一致します。

tamodal.userSet({
  appID: "YOUR_APPID",
  properties: { usersetkey: 2, usersetkey2: "usersetvalue" }
});

userSet 設定のユーザープロパティ形式は、イベントプロパティと一致する必要があります。

# 4.2 ユーザー SetOnce

アップロードするユーザープロパティが一度設定されている場合は、userSetOnce を呼び出し設定することができます。このプロパティに以前に値がある場合、この情報は無視されます。たとえば、最初の支払い時間を設定します

tamodal.userSetOnce({
  appID: "YOUR_APPID",
  properties: { name: "yea" }
});

userSetOnce 設定のユーザープロパティの書式設定は、イベントプロパティと一致する必要があります。

# 4.3 userAdd

数値型のプロパティをアップロードするときは、userAdd を呼び出しuserAddて、プロパティを累積的に操作できます。プロパティが設定されていない場合は、0 を割り当ててから計算します。負の値を渡すことができます。減算操作と同じです。ここでは累積支払い額を例にとる

tamodal.userAdd({
  appID: "YOUR_APPID",
  properties: { age: 1 }
});

userAdd 設定のプロパティの型と Key 値の制限は userSet と一致しますが、Value では Number 型のみが許可されます。

# 4.4 userUnset

ユーザーのユーザープロパティ値を空にする場合は、userUnsetを呼び出して指定されたプロパティを空にすることができ 作成されません

tamodal.userUnset({
  appID: "YOUR_APPID",
  properties: "usersetkey"
});

userUnset 渡されたパラメーターはユーザープロパティのプロパティ名で、型は文字列または文字列の配列で、可変長パラメーターの形式をサポートします。

# 4.5 ユーザーデル

を削除する場合は、userDel を呼び出しuserDelて削除できます。ユーザーのユーザー属性を照会することはできませんが、ユーザーが生成したイベントを照会することはできます。

tamodal.userDel({ appID: "YOUR_APPID" });

# 4.6 ユーザー追加

Android SDK v2.4.0 から userAppend を呼び出しArray タイプのユーザープロパティを追加できます。

tamodal.userAppend({
  appID: "YOUR_APPID",
  properties: { keyArr: ["age", "2"] }
});

# V.自動収集イベント

自動取得機能を使用するには、自動取得機能の関連する依存関係を統合し、依存コードを追加

自動収集イベントの具体的な使い方については、Android SDK 自動収集ガイド章を参照してください。

RN の呼び出し方法は次のとおりです。

tamodal.enableAutoTrack({
  appID: "YOUR_APPID",
  autoTrackType: {
    appStart: true,
    appEnd: true,
    appCrash: true,
    appInstall: true
  }
});

# VI。SDK 構成

# 6.1 データ報告の一時停止/停止

Android SDK v2.1.0 では、SDK インスタンスの報告を停止する機能が追加され、SDK インスタンスの報告を停止するインターフェイスが 2 種類あります

# 6.1.1 SDK 報告の一時停止

ユーザーがテスト環境にいる場合や、ユーザーがテストアカウントにログインしている場合など、データ収集と報告を一時的に停止したい場合は、次のインターフェイスを呼び出して SDK インスタンスの報告を一時的に停止できます。

を呼び出すとEnableTrackingfalseを呼び出すと、SDK インスタンスの#distinct_id#account_id、パブリックプロパティなどが保持されます設定された共通属性とデバイス ID、ゲスト ID、アカウント ID などの情報。

インスタンスの停止状態はローカルキャッシュに保存され、enableTracking が呼び出されるまで、true、SDK インスタンスはデータ収集と報告を再開します。ライトインスタンスはキャッシュされないため、アプリを開くたびにライトインスタンスの一時停止状態は保持されず、報告を再開します。

// 暂停上报
tamodal.enableTracking({
  appID: "YOUR_APPID",
  enableTracking: false
});

// 恢复上报
tamodal.enableTracking({
  appID: "YOUR_APPID",
  enableTracking: true
});

# 6.1.2 SDK 報告の停止(optOutTracking)

たとえば、GDPR が適用される地域でユーザーがデータ収集権限を提供しないことを選択した場合、次のインターフェイスを呼び出して SDK インスタンスを完全にシャットダウンできます。

optOutTrackingメインインスタンスからのみ呼び出すことができ、enableTrackingとの最大の違いは、インスタンスのゲスト ID、アカウント ID、パブリックプロパティ、レポートされていないデータキューなど、インスタンスのローカルキャッシュを空にすることです。その後、このインスタンスの取得と報告機能をオフにします。

tamodal.optOutTracking({ appID: "YOUR_APPID" });

SDK 機能をオフにしている間に TA クラスタ内のユーザーデータを削除する場合は、optOutTrackingAndDeleteUserを呼び出して、SDK インスタンスの機能を停止する前にuserDelデータを報告してユーザーデータを削除します。

tamodal.optOutTrackingAndDeleteUser({ appID: "YOUR_APPID" });

インスタンスの停止状態もローカルキャッシュに保存され、optInTracking が呼び出されるまで、その後も報告を続けることができますが、この時点では新しいインスタンス

tamodal.optInTracking({ appID: "YOUR_APPID" });

# 6.2 キャリブレーション時間

SDK はデフォルトでイベント発生時刻としてネイティブ時刻を使用し、ユーザーが手動でデバイス時刻を変更するとビジネス分析に影響する場合、Android SDK v2.5.0 以降、サービス側から取得した現在のタイムスタンプを使用して SDK の時刻を校正できます。その後、イベントデータやユーザー属性設定操作など、指定されていない時間の呼び出しはすべて、キャリブレーション後の時間を発生時間として使用します。

// 1585633785954 为当前 unix 时间戳,单位为毫秒,对应北京时间 2020-03-31 13:49:45
tamodal.calibrateTime({ timeStampMillis: 1585633785954 });

NTP から時間を取得して SDK を校正する機能も提供しています。ユーザーがアクセスできる NTP サーバーアドレスを渡す必要があります。その後、SDK は着信 NTP サービスアドレスから現在の時刻を取得し、SDK 時刻をキャリブレーションします。デフォルトのタイムアウト時間(3 秒)以内に正しい結果が得られない場合、その後、ローカル時間を使用してデータを報告します。

// 使用苹果公司 NTP 服务对时间进行校准
tamodal.calibrateTimeWithNtp({ ntpServer: "time.apple.com" });

注意:

  • NTP サーバーアドレスを慎重に選択して、ネットワーク状態が良好な場合、ユーザーデバイスがサーバーに到着する時間をすぐに取得できるようにします。
  • NTP サービスを使用した時間キャリブレーションには不確実性があります。

上記のキャリブレーションタイムインターフェイスに加えて、Android SDK v2.5.0 では、すべてのユーザープロパティインターフェイスのタイム関数オーバーロードが提供されています。ユーザープロパティ関連インターフェイスを呼び出すと、Date オブジェクトが渡され、渡された Date オブジェクトを使用してデータの##timeフィールドを設定できます。

# チェンジログ

# v2.0.0 2020/06/06

  • 新しい API インターフェース
  • マルチインスタンスのサポート
  • 自動収集イベントのサポート(新しい APP インストールイベント、起動イベント、クローズイベント、クラッシュイベント)
  • クライアント SDK のタイムキャリブレーション機能をサポート
  • 新しい optOutTracking/optInTracking インターフェイス
  • enableTracking インターフェイスを追加し、インスタンスの報告機能
  • サポートイベントとユーザー属性データの報告
  • パブリックイベントプロパティのサポート