App SDK 預設事件和預設屬性
預設事件
事件英文變數名 | 事件顯示名 | 屬性英文變數名 | 事件屬性顯示名 | 屬性質類型 | 屬性質範例或說明 | 觸發時機 | 備註 |
---|---|---|---|---|---|---|---|
$AppStart | App 啟動 | $預設屬性 | 啟動 App 或從後台切换進入 App 時觸發 | Android/iOS SDK通用性採集,開啟 AutoTrack 介面將自動開啟,文件請參考 全埋點(Android) | |||
$is_first_time | 是否首次 | 布林值 | 表示是否是首次啟動 App,可參考文件新增用戶及首日首次標記 | ||||
$resume_from_background | 是否從後台喚醒 | 布林值 | |||||
$screen_name | 頁面名稱 | 字串 | Activity 的包名.類名(僅 Android 端有,iOS 端的啟動邏輯並不需要跳轉到某個頁面即可判斷是否啟動,因此 iOS 端啟動時採集不到頁面名稱) | ||||
$title | 頁面標題 | 字串 | Activity 的標題(僅 Android 端有,iOS 端的啟動邏輯並不需要跳轉到某個頁面即可判斷是否啟動,因此 iOS 端啟動時採集不到頁面標題) | ||||
$AppEnd | App 退出 | $ 預設屬性 | 退出 App 或 App 進入後台時觸發 | ||||
$event_duration | 停留時長 | 數值 | 本次 App 啟動到 App 退出的時長,單位為「秒」 | ||||
$screen_name | 頁面名稱 | 字串 | Activity 的包名.類名(僅 Android 端有,iOS 端的退出邏輯並不需要跳轉到某個頁面即可判斷是否啟動,因此 iOS 端退出時採集不到頁面標題) | ||||
$title | 頁面標題 | 字串 | Activity 的標題(僅 Android 端有,iOS 端的退出邏輯並不需要跳轉到某個頁面即可判斷是否啟動,因此 iOS 端退出時採集不到頁面標題) | ||||
$AppViewScreen | App 瀏覽頁面 | $預設屬性 | 打開一個 Activity / ViewController 頁面時觸發(對於Android Fragment 預設不會觸發瀏覽頁面事件,如果採集,需要單獨開啟) | ||||
$screen_name | 頁面名稱 | 字串 | Activity 的包名.類名(Android 端) / ViewController 的類名(iOS 端);可手動設定該屬性的值 | ||||
$title | 頁面標題 | 字串 | Activity 的標題(Android 端)/ViewController 的標題(iOS 端) | ||||
$url | 頁面網址 | 字串 | 自動採集的版本 Android:3.2.8,iOS:1.11.5 | ||||
$referrer | 參照位址 | 字串 | 自動採集的版本 Android:3.2.8,iOS:1.11.5 | ||||
$AppClick | App 元素點擊 | $預設屬性 | 點擊控制元件時觸發 可採集大部分控制元件,如:CheckBox、RadioButton、button、SwitchCompat、Spinner、TextView、ImageView、ImageButton、SeekBar、RatingBar、RadioGroup、Menultem、ExpandableListView、Dialog、ListView、GridView、TabHost等 | ||||
$screen_name | 頁面名稱 | 字串 | Activity 的包名.類名(Android 端) / ViewController 的類名(iOS 端);可手動設定該屬性的值 | ||||
$title | 頁面標題 | 字串 | Activity 的標題(Android 端)/ViewController 的標題(iOS 端) | ||||
$element_position | 元素位置 | 字串 | 元素在模組中的位置,從 0 開始。 只有特殊控制元件下,該屬性才會採集到值(比如 iOS 端的 UITableView 和 UICollectionView 等,Android 端的 ListView 等。對於採集不到該屬性值的控制元件,該屬性值在神策分析頁面展示為「未知」。 | ||||
$element_id | 元素ID | 字串 | Android 端預設會取得; iOS 端每個控制元件一般不會設定 ID,因此 iOS 端預設會不取得。可手動設定 | ||||
$element_content | 元素内容 | 字串 | 控制元件程式碼内設定的元素内容,如果一個控制元件中沒有設定元素内容,或者控制元件類型為圖片,則該屬性採集不到值,在神策事件分析頁面展示為 「未知」。因此如果發現某個按鈕的内容採集不到值,需要和客戶的研發同學確認這個按鈕控制元件的類型,以及是否有在程式碼中設定元素内容。 | ||||
$element_type | 元素類型 | 字串 | 控制元件的類型,例如 Button | ||||
$element_selector | 元素選擇器 | 字串 | 該屬性主要記錄一個按鈕在 App 中的位置,神策的 App 點擊圖展示時會使用到此屬性,業務人員不需關注此屬性的取值邏輯。 | ||||
$element_path | 元素路徑 | 字串 | 可視化全埋點功能會採集該屬性的值,需要手動程式碼開啟 | ||||
AppInstall / $AppInstall | App 啟動 | $預設屬性 | 需要呼叫 trackInstallation 介面採集採集該事件,且 App 安装後首次打開才會觸發,第二次打開不會再觸發。 | ||||
$browser | 瀏覽器名 | 字串 | 透過 UA 解析出來的值 | ||||
$utm_source | 廣告系列來源 | 字串 | 需要使用神策 App 管道追蹤方法,管道匹配成功之後,AppInstall 事件才會有 $utm 相關的屬性,具體可參考神策的 App 管道追蹤。 | ||||
$utm_medium | 廣告系列媒介 | 字串 | |||||
$utm_term | 廣告系列字词 | 字串 | |||||
$utm_content | 廣告系列内容 | 字串 | |||||
$utm_campaign | 廣告系列名稱 | 字串 | |||||
$ios_install_source | / | 字串 | 記錄 App 精準比對時的匹配欄位,比如 IMEI、Android ID、Mac 網址、IDFA。在 App 端採集數據時,會上傳此欄位,但是在 extractor 模組會將該欄位去掉不入庫。因此該屬性不會入庫。 | ||||
$utm_matching_type | 管道追蹤匹配模式 | 字串 | 在 App 端採集事件時預設沒有該屬性,而是在 extractor 模組增加,是 App 管道追蹤匹配成功時,記錄管道匹配成功的模式,比如裝置指紋模糊比對,裝置標識精準比對,如果沒有匹配成功,該屬性值在事件分析頁面展示為「未知」。 | ||||
$matched_key | 管道匹配關鍵字 | 字串 | 在 App 端採集事件時預設沒有該屬性,而是在 extractor 模組增加,是 App 管道追蹤匹配成功時,記錄匹配關鍵欄位,比如是用 IMEI 匹配成功的,則記錄 MD5 後的 IMEI,如果是用 IP_UA 的方式匹配成功的,則記錄為 IP_UA。如果沒有匹配成功,該屬性值在事件分析頁面展示為「未知」。 | ||||
$matching_key_list | 管道匹配關鍵字列表 | 字串 | SA 1.14 版本後支援;在 App 端採集事件時預設沒有該屬性,而是在 extractor 模組增加,是記錄該啟動事件所有可匹配的關鍵字,比如 MD5 後的 IMEI,Android ID,OAID ,IP_UA 等。在匹配的時候,會按照這些關鍵字的優先級,和點擊廣告時記錄的關鍵字進行匹配。 | ||||
AppCrashed | App 閃退 | $ 預設屬性 | 只有在開啟閃退採集時才會採集 | App 閃退 | |||
app_crashed_reason | 閃退原因 | 字串 | |||||
$AppStartPassively | App 被動啟動 | $ 預設屬性 | iOS App 被系統喚醒 | iOS 端有此事件,Android 端沒有。 | |||
$app_state | App 狀態 | 字串 | iOS 端會預設取得,Android 端不會取得 |
所有事件都有的預設屬性
屬性名 | 屬性型別 | 預設顯示名 | 說明 | 備註 |
---|---|---|---|---|
$app_id | 字串 | 應用程式唯一標識 | App 的唯一標識 | Android SDK 4.1.0 版本支援 iOS SDK 2.0.9 版本支援 |
$app_name | 字串 | 應用程式名稱 | 應用程式的名稱 | Android SDK v4.2.8 版本支援 iOS SDK 2.1.8 版本支援 |
$app_version | 字串 | App 的應用程式版本 | ||
$lib | 字串 | SDK 類型 | SDK 類型,比如 Android/iOS | |
$lib_version | 字串 | SDK 版本 | SDK 版本 | |
$manufacturer | 字串 | 裝置製造商 | 裝置製造商 | |
$model | 字串 | 裝置型號 | 裝置型號 | |
$os | 字串 | 作業系統 | 作業系統 | |
$os_version | 字串 | 作業系統版本 | 作業系統版本 | |
$screen_height | 數值 | 螢幕高度 | 螢幕高度(iOS 端是邏輯分辨率,開發中的點像素;Android 採集的是物理像素點,例如 Android 手機分辨率是 1920 x 1080,採集到的就是這個值。) | |
$screen_width | 數值 | 螢幕寬度 | 螢幕寬度(iOS 端是邏輯分辨率,開發中的點像素;Android 採集的是物理像素點,例如 Android 手機分辨率是 1920 x 1080,採集到的就是這個值。) | |
$wifi | 布林值 | 是否 WiFi | 事件觸發時是否為 WiFi | |
$carrier | 字串 | 營運商名稱 | 事件觸發時裝置 SIM 卡的營運商名稱,如果 Android 沒有取得 READ_PHONE_STATE 權限,或者未插卡,則無法取得營運商名稱;如果 iOS 未插卡,則無法取得營運商名稱 | |
$network_type | 字串 | 網路類型 | 事件觸發時的網路類型,如果 SDK 沒有取得網路類型的權限,或者手機為飛航模式、未插卡且沒有連接 WiFi等情况,對應的網路類型為 NULL。 | |
$timezone_offset | 數值 | 時區偏移量 | App 或系統的時區 | Android SDK 4.1.0 版本支援 iOS SDK 2.0.9 版本支援 |
$is_first_day | 布林值 | 是否首日連接 | 表示是否是首日觸發事件,此屬性可用於篩選新老用戶,具體取值邏輯可參考文件 新增用戶及首日首次標記 | Android SDK 1.6.27 版本支援 iOS SDK 1.6.29 版本支援 |
$is_login_id | 布林值 | 是否登入 ID | 數據入庫時判斷增加 | |
$ip | 字串 | IP | 後端透過解析 HTTP 請求而得到 | |
$country | 字串 | 國家 | 由 IP 解析得到 | |
$province | 字串 | 省份 | ||
$city | 字串 | 城市 | ||
$device_id | 字串 | 裝置ID | Android 端主要取 Android ID ,iOS 端先嘗試取得 IDFA,如果取得不到,則取 IDFV,具體取值邏輯可參考文件 如何準確的標識用戶 | Android SDK 1.7.1 版本支援 iOS SDK 1.10.18 版本支援 |
$screen_orientation | 字串 | 螢幕方向 | 只有在開啟 enableTrackScreenOrientation: 時才會採集 | Android/iOS 1.10.1 版本支援 |
$latitude | 數值 | GPS資訊 | 纬度*106 只有在開啟 enableTrackGPSLocation: 時才會採集 | Android/iOS 1.10.1 版本支援 Android 端需要手動傳入 |
$longitude | 數值 | GPS資訊 | 經度*106 只有在開啟 enableTrackGPSLocation: 時才會採集 | Android/iOS 1.10.1 版本支援 Android 端需要手動傳入 |
追蹤並進行管道匹配和回傳時的預設事件屬性
屬性名 | 屬性型別 | 預設顯示名 | 說明 | 備註 |
---|---|---|---|---|
$channel_device_info | 字串 | 是否不進行追蹤回呼 | App 管道追蹤自定義事件時進行管道匹配,可以呼叫 - | SA 1.15+ 版本後支援 |
$is_channel_callback_event | 布林值 | 是否進行管道匹配回呼 | App 管道追蹤自定義事件時進行管道匹配,可以呼叫 - trackChannelEvent:properties: 對待匹配的事件進行追蹤,後台匹配到管道資訊後會將结果回傳到管道商。具體使用,可以參考 SDK 的高級功能模組。 | SA 1.15+ 版本支援; 預設只有第一次觸發管道追蹤自定義事件時,該屬性的值為 ture,表示匹配成功會,會給廣告商回呼管道數據。後續再次觸發該事件時,該屬性值為 false。 |
預設用戶屬性
屬性名 | 屬性型別 | 預設顯示名 | 說明 | 備註 |
---|---|---|---|---|
$first_visit_time | Datetime(時間) | 首次連接時間 | 呼叫 trackInstallation 介面後,新用戶首次啟動 App, 會給此屬性賦值 | 該屬性是在呼叫 trackInstallation 介面時設定的, 一般標記在匿名 ID (Android ID/IDFA)的用戶身上,如果登入 ID 和匿名 ID 沒有關聯成功,則登入 ID 用戶的該屬性值 沒值。 |
$utm_source | 字串 | 首次廣告系列來源 | 這些屬性是依賴於呼叫 trackInstallation / trackAppInstall 介面,且使用 APP 管道追蹤,在比對成功後,管道連結中包含的對應管道資訊( utm_ 參數)會被寫入用戶表,管道追蹤匹配模式和管道匹配關鍵字則記錄比對的管道方式,以及透過哪個關鍵字比對上的 | |
$utm_medium | 字串 | 首次廣告系列媒介 | ||
$utm_term | 字串 | 首次廣告系列字词 | ||
$utm_content | 字串 | 首次廣告系列内容 | ||
$utm_campaign | 字串 | 首次廣告系列名稱 | ||
$utm_matching_type | 字串 | 管道追蹤匹配模式 | ||
$matched_key | 字串 | 管道匹配關鍵字 | ||
$matching_key_list | 字串 | 管道匹配關鍵字列表 | 管道匹配關鍵字列表,包含所有可能用管道匹配的 key | 同上,且 SA 1.14+ 版本支援,管道匹配關鍵字列表,包含所有可能用於管道匹配的 關鍵字 |
其他
屬性名 | 屬性型別 | 預設顯示名 | 說明 | 備註 |
---|---|---|---|---|
$lib_plugin_version | List | SDK 外掛程式版本 | 該屬性是用於記錄神策分析各外掛程式的版本,例如: Android 外掛程式;採集範例:$lib_plugin_version:["android_plugin:4.2"] | Android SDK v4.3.5+,Android 外掛程式 v3.2.14+,才會採集該屬性; |