簡體   English   中英

Android-應用程式安裝專用的ID

[英]Android - ID unique to the installation of an app

是否有可用的ID對於應用程序的安裝是唯一的?

我的意思是跨設備唯一,因此,如果同一應用程序安裝在10個不同的設備上,則會有10個不同的ID。 同一台設備上的兩個不同應用必須提供兩個不同的ID。

需要在應用程序更新后保持不變,並且如果您卸載並重新安裝了該應用程序,則最好更改。

出於安全原因,我不想生成UUID並將其寫入應用程序專用存儲中的文件。

我的解決方案是利用Android SharedPreferencesBackupHelper類和BackupAgentHelper。 無需將您的UUID存儲在應用程序專用存儲中的文件中(盡管我不確定您的安全限制是什么,因此使用SharedPreferences數據庫可能不會更好)。 該解決方案允許您擁有唯一的設備/安裝ID,並且可以通過應用程序的卸載和安裝(我通常認為這是一件好事)而幸免於難。 如果您讓應用程序在運行時確定是否已重新安裝,則該應用程序可以在那時生成新的UUID。

一種方法是在應用程序的已安裝資源包中查找一個指示器文件,該指示器文件是.apk的一部分。 如果應用程序看到此文件,則表示它是新安裝的:生成/存儲UUID,然后刪除該文件(或更改其內容)。 隨后的執行將發現這一點,並意識到這不是新安裝。

滿足您的需求嗎?

Google提供廣告ID作為所有設備/用戶的唯一標識符,並且可以在所有Google Play設備API 9或更高版本中使用。

還有許多其他機制,例如使用此(廣告前ID)博客文章中詳細介紹的Settings.SECURE.ANDROID_ID 但是請注意博客文章中有關ANDROID_ID的評論:

有缺點:首先,它在2.2之前的Android版本(“ Froyo”)上並非100%可靠。 而且,在一家主要制造商的流行手機中,至少有一個廣為人知的錯誤,其中每個實例都具有相同的ANDROID_ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM