日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android获取设备唯一标识_数据埋点:用户唯一标识

發布時間:2025/3/20 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android获取设备唯一标识_数据埋点:用户唯一标识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

用戶唯一標識,是用戶唯一的身份ID,相同的身份ID,就會被當做是相同的一個用戶。

01 為什么要建設用戶唯一標識

如何區分某個用戶就是他這個用戶,而不是另一個用戶,在數據埋點中,是一個非常重要的事情。因為如果做不到用戶的唯一識別,那凡是涉及到用戶的數據都將是錯的(比如用戶量、新增用戶數、活躍用戶數等等)。所以建設用戶唯一標識,尤為重要。

02 基本概念

設計埋點字段的時候,有兩個字段是一定要包括的,即設備ID和用戶ID。這兩個字段應該納入通用字段,每個埋點的事件都必須要集成收集。

(1)設備ID

使用相應的算法,生成一個設備ID,以唯一識別用戶的終端設備。不同終端的設備ID,其生成算法規則不一樣,以下列舉不同終端的設備ID的生成規則:

AndroidApp

安卓系統歷經多次升級,對權限控制越來越嚴格,唯一識別手機的方法也在發生變化。下面整理一下安卓系統適合做設備唯一標識符的幾個標識符,以及其特性:

從表格中看出,IMEI是最適合做設備唯一標識的,奈何獲取IMEI需要授予權限且Android 10以后不再開放IMEI的權限。綜合起來,安卓系統中,應該按照IMEI ->OAID -> ANDROID_ID的順序生成設備ID。即先獲取IMEI號,獲取不到IMEI時獲取OAID,獲取不到OAID時,再獲取ANDROID_ID,然后使用相關算法生成設備ID。

IOS App

蘋果系統,可用于識別唯一設備的標識不多,如下圖。綜合起來,蘋果系統生成設備ID的標識符順序應該是IDFA -> IDFV ->UDID,即先獲取IDFA,獲取不到在獲取IDFV,獲取不到IDFV時,再獲取UDID,然后使用相關算法生成一個設備ID。

Web網站

Web網站,使用cookie_id作為設備ID,并存儲在瀏覽器的cookie中。

微信小程序

通常做法使用openid作為設備ID,當然也可以自己生產一個ID,作為設備ID。如果用過openid作為設備ID,需要注意微信小程序的冷啟動問題(獲取 openid 是一個異步的操作,所以會導致數據上報的時候,可能還沒獲取到openid,這就是導致設備ID為空)。

2)用戶ID

用戶ID,即用戶在業務產品注冊的用戶賬號。

收集到設備ID和用戶ID后,就要想辦法將設備ID和用戶ID關聯起來,也即用戶唯一標識建模,詳見下文。

03 用戶唯一標識建設

設計一個字段,比如就叫distinct_id(設備ID命名為device_id,用戶ID命名為user_id)這個字段用于識別唯一用戶。凡是統計用戶相關的數據時,都以distinct_id作為用戶的唯一區別標識。下面,以具體案例進行闡述。

步驟說明:

  • 小明在一部手機上啟動了app。該手機的device_id為x1,此時生成一個dsitinct_id為d1;
  • 小明在這個手機上用賬號u1進行登錄。此時device_id為x1,user_id為u1,dsitinct_id為d1;
  • 小明繼續在這手機上使用app。此時device_id為x1,user_id為u1,dsitinct_id為d1;
  • 小明退出自己的賬號,繼續使用app。此時仍然device_id為x1,user_id為u1,dsitinct_id為d1;
  • 小明把手機給了小花,小花用自己的賬號u2登錄app。此時u2去關聯x1,因為x1已經與u1關聯,故關聯失敗。所以重新生成一個distinct_id為d2來標識此用戶(u2);
  • 小花繼續使用app。此時device_id為x1,user_id為u2,dsitinct_id為d2;
  • 小明換了部新手機,使用app。此時device_id為一個新的x2,后臺生成一個新的dsitinct_id為d3;
  • 小明在新手機上,使用賬號u1登錄了app。此時u1去關聯x2,因為x2之前沒有與賬號關聯過,所以關聯成功,但是u1已經有一個dsitinct_id為d1,所以此時的dsitinct_id仍然為d1;
  • 小明繼續在新手機上使用app。此時device_id為x2,user_id為u1,dsitinct_id為d1。
  • 此時三個字段的映射關系為:

    (1)后續修復

    事件字段修復

    小明換新手機后,在登錄前,系統給分配的dsitinct_id為d3,不符合實際情況,故要將在新手機上登錄前的dsitinct_id修復為d1。如下:

    映射表修復

    1)刪除d3與x2的映射關系

    2)將x2添加到d1的device_id_list字段

    本文由 @如琴留音 原創發布于人人都是產品經理。未經許可,禁止轉載

    題圖來自Unsplash,基于CC0協議

    總結

    以上是生活随笔為你收集整理的android获取设备唯一标识_数据埋点:用户唯一标识的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。