menu
Is this helpful?

# プリセットプロパティ

# 全てのイベントが付帯するプリセットプロパティ

以下のプリセットプロパティはAndroid SDK 中で全てのイベント(自動収集イベント含め)が付帯するプリセットプロパティとなります。

プロパティ名 名称

タイプ

収集タイミング 説明
#ip IP アドレス

文字列

サーバー側で収集 ユーザのIPアドレス、TAはユーザの地理的位置情報
#country

文字列

サーバー側で収集 ユーザーの国または地域は、IPアドレスに基づいて生成
#country_code 国コード

文字列

サーバー側で収集 ユーザーの所在する国または地域の国別地域コード(ISO 3166-1 alpha-2、つまり2大文字英字)は、IPアドレスに基づいて生成
#province

文字列

サーバー側で収集 ユーザーの州、IPアドレスに基づいて生成
#city 都市

文字列

サーバー側で収集 ユーザーの都市は、IPアドレスに基づいて生成
#os_version OSバージョン

文字列

初期化時に1回収集 iOS 11.2.2、Android 8.0.0等
#manufacturer デバイスメーカー

文字列

初期化時に1回収集 Appleなどのユーザーデバイスのメーカー
#os OS

文字列

初期化時に1回収集 Android、iOSなど
#device_id デバイス ID

文字列

初期化時に1回収集 ユーザーのデバイスID、iOSはユーザーのIDFVやUUID、AndroidはAndroidIDを取得
#screen_height スクリーン高さ

数値

初期化時に1回収集 ユーザーデバイスのスクリーンの高さ、1920など
#screen_width スクリーン長さ

数値

初期化時に1回収集 ユーザーデバイスのスクリーンの長さ、1080など
#device_model デバイスモデル

文字列

初期化時に1回収集 iPhone 8などのユーザーデバイスのモデル
#device_type デバイスタイプ

文字列

初期化時に1回収集 デバイスタイプ:"Tablet"、"Phone"など
#app_version APPバージョン

文字列

初期化時に1回収集 APPバージョン
#bundle_id アプリパッケージ名(ユニーク)

文字列

初期化時に1回収集 APPパッケージ名もしくはプロセス名
#lib SDK タイプ

文字列

初期化時に1回収集 SDKのタイプ:Android,iOSなど
#lib_version SDK バージョン

文字列

初期化時に1回収集 SDKのバージョン
#network_type ネットワークタイプ

文字列

初期化時に1回収集し、ネットワーク状態の変化時に収集 データ送信時のネットワーク状態:WIFI、4G、5Gなど
#carrier キャリア

文字列

初期化時に1回収集 ユーザーデバイスのキャリア:Docomo、Softbankなど
#zone_offset タイムゾーン

数値

イベント発生時に収集 データ時間UTC時間との偏位時間数
#install_time インストール時間

時間

初期化時に1回収集 APPのインストール時間
#simulator シミュレーター

数値

初期化時に1回収集 デバイスはシミュレーター true/false
#ram デバイスのram状態

文字列

イベント発生時に収集 ユーザーデバイスの現在残りramと総ram、単位はGB、1.4/2.4
#disk デバイスのストレージ状態

文字列

イベント発生時に収集 ユーザーデバイスの現在残りストレージと総ストレージ、単位はGB 30/200
#fps デバイスのフレームレート

数値

イベント発生時に収集 ユーザーデバイスの現在画面のフレームレート:60
#system_language システム言語

文字列

初期化時に1回収集 ユーザーデバイスのシステム言語(ISO 639-1)jp, enなど

# 自動収集イベントのプリセットプロパティ

以下のプリセットプロパティは、自動収集イベントの中で特有のプリセットプロパティとなります。

  • APP 起動イベント(ta_app_start)のプリセットプロパティ
プロパティ名 名称 タイプ 説明
#resume_from_background バックグラウンドから再開かどうか

文字列

APPの起動は直接起動なのか、バックグラウンドから再開なのか。trueはバックグラウンドから再開で、falseは直接起動となります。
#start_reason アプリケーションの起動元

文字列

JSON文字列です。アプリがURLまたはIntentを使用して開かれる場合、URLの内容とIntentのデータを自動的に記録します。例:{url:"thinkingdata://","data":{}}
#background_duration バックグラウンド滞在時間

数値

startイベントが2回発生した間隔内で、アプリがバックグラウンドにある時間、 単位:秒
- APP クローズイベント(ta_app_end)的预置属性
プロパティ名 名称 タイプ 説明
#duration イベント時間経過 数値 APP起動からの時間経過(起動からクローズ)、単位は秒
- APP 閲覧ページイベント(ta_app_view)のプリセットプロパティ
プロパティ名 名称 タイプ 説明
#title ページタイトル 文字列 viewが属しているActivityのタイトルで、Activitytitleプロパティで値を付与されます
#screen_name ページ名称 文字列 viewが属しているActivityのパッケージ名、カテゴリ名
#url ページURL 文字列 現在ページのURL、getScreenUrlを呼び出してURLの設定を行う必要があります。
#referrer リファラー 文字列 本ページに移動する前のURLで、getScreenUrlを呼び出して設定が必要です。
- APP viewクリックイベント(ta_app_click)のプリセットプロパティ
プロパティ名 名称 タイプ 説明
#title ページタイトル 文字列 viewが属しているActivityのタイトルで、Activitytitleプロパティで値を付与されます
#screen_name ページ名称 文字列 viewが属しているActivityのパッケージ名、カテゴリ名
#element_id エレメント ID 文字列 viewのID、デフォルトでandroid:idを使用、setViewIDを呼び出しして設定可能です。
#element_type エレメントタイプ 文字列 viewのタイプ
#element_selector エレメントセレクター 文字列 viewのviewPathのスプライシング
#element_position エレメント位置 文字列 viewの位置情報、viewがpositionプロパティが存在する時に送信されます
#element_content エレメント内容 文字列 view上の内容
- APP のクラッシュイベント(ta_app_crash)のプリセットプロパティ
プロパティ名 名称 タイプ 説明
#app_crashed_reason 異常情報 文字列 クラッシュ発生時のスタックトレースを記録されます

# その他プリセットプロパティ

上記以外のプリセットプロパティとして、一部呼び出ししてから記録されるプリセットプロパティ:

プロパティ名 名称 タイプ 説明
#duration 経過時間 数値 時間経過機能timeEventを呼び出して、イベントの経過時間を記録される。単位は秒
#background_duration バックグラウンドの経過時間 数値 時間経過機能timeEventを呼び出して、イベントの経過時間を記録される。単位は秒

# プリセットプロパティを取得

v2.7.0とそれ以降のバージョンはgetPresetProperties()を呼び出ししてプリセットプロパティを取得できます。

以下の方法でサーバのトラッキングはApp側の一部プリセットプロパティを取得し、サーバ側に転送できます。

   //get property objects
   TDPresetProperties presetProperties = instance.getPresetProperties();

   //Preset properties of Event
   JSONObject properties = presetProperties.toEventPresetProperties();
   /*
   {
        "#carrier": "T-Mobile",
        "#os": "Android",
        "#device_id": "dd4a508df0dbff08",
        "#screen_height": 2560,
        "#bundle_id": "cn.thinkingdata.android.demo",
        "#device_model": "sdk_gphone64_arm64",
        "#screen_width": 1440,
        "#system_language": "en",
        "#install_time": "2022-08-19 17:31:52.398",
        "#simulator": true,
        "#manufacturer": "Google",
        "#os_version": "12",
        "#app_version": "1.0",
        "#network_type": "3G",
        "#zone_offset": 8,
        "#ram": "0.8\/1.9",
        "#disk": "0.1\/0.8",
        "#fps": 60
    }
   */

    //get a certain preset properties
    String bundle_id = presetProperties.bundle_id;//package name
    String os =  presetProperties.os;//os type, e.g., Android
    String system_language = presetProperties.system_language;//type of mobile phone system language
    int screen_width = presetProperties.screen_width;//screen width
    int screen_height = presetProperties.screen_height;//screen height
    String device_model = presetProperties.device_model;//device model
    String device_id = presetProperties.device_id;//unique identifier of device
    String carrier = presetProperties.carrier;//information about operator of the SIM card. Operation information of the primary card should be get under dual-card dual-standby mode 
    String manufacture = presetProperties.manufacture;//mobile phone manufacturer, e.g., HuaWei
    String network_type = presetProperties.network_type;//network type
    String os_version = presetProperties.os_version;//system version number
    String app_version = presetProperties.app_version;//app version number
    double zone_offset = presetProperties.zone_offset;//timezone offset value
    String ram = presetProperties.ram;//storage usage
    String disk = presetProperties.disk;//disk usage
    int fps = presetProperties.fps;//fps
    String installTime = presetProperties.installTime;//app installation time
    boolean isSimulator = presetProperties.isSimulator;//the device is a simulator or not
    

IP、国都市の情報はサーバ側で解析して生成され、クライアントからの呼び出しが提供されていません。

# プリセットプロパティ収集を禁止

特定の場合で、プリセットプロパティ収集を禁止したい場合、プロジェクトカテゴリのres/valuesの目次でta_public_config.xmlのファイルを追加し、禁止設定できます。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- ThinkingAnalytics DisablePresetProperties start -->
    <string-array name="TDDisPresetProperties">
<!--        <item>#disk</item>-->
<!--        <item>#fps</item>-->
<!--        <item>#ram</item>-->
<!--        <item>#app_version</item>-->
<!--        <item>#os_version</item>-->
<!--        <item>#manufacturer</item>-->
<!--        <item>#device_model</item>-->
<!--        <item>#screen_height</item>-->
<!--        <item>#screen_width</item>-->
<!--        <item>#carrier</item>-->
<!--        <item>#device_id</item>-->
<!--        <item>#system_language</item>-->
<!--        <item>#lib</item>-->
<!--        <item>#lib_version</item>-->
<!--        <item>#os</item>-->
<!--        <item>#bundle_id</item>-->
<!--        <item>#install_time</item>-->
<!--        <item>#start_reason</item>-->
<!--        <item>#simulator</item>-->
<!--        <item>#network_type</item>-->
<!--        <item>#zone_offset</item>-->
<!--        <item>#start_reason</item>-->
<!--        <item>#resume_from_background</item>-->
<!--        <item>#title</item>-->
<!--        <item>#screen_name</item>-->
<!--        <item>#url</item>-->
<!--        <item>#referrer</item>-->
<!--        <item>#element_type</item>-->
<!--        <item>#element_id</item>-->
<!--        <item>#element_position</item>-->
<!--        <item>#element_content</item>-->
<!--        <item>#element_selector</item>-->
<!--        <item>#app_crashed_reason</item>-->
<!--        <item>#background_duration</item>-->
<!--        <item>#duration</item>-->
    </string-array>
    <!-- ThinkingAnalytics DisablePresetProperties end -->
</resources>

Android IDプロパティについて、TE側はコードレベルでの完全隔離が対応できます。隔離された後で、APP内ではプロパティを取得するコードは一切なくなります。詳しくは自動収集にて参照ください。