![](/img/trans.png)
[英]Android app with react-native works on emulator but doesn't on physical device
[英]Android device id doesn't match on Physical Device & Emulator
我找到了一個應用程序,他們使用設備標識作為用戶登錄。 卸載並安裝后顯示相同的 DeviceID。 當我在我的 android 設備上測試這個應用程序時。 設備標識與此字符串不匹配。
String android_id = Settings.Secure.getString(this.getContentResolver(),
Settings.Secure.ANDROID_ID);
但是當我在與該應用程序設備 ID 匹配的 android 模擬器字符串上嘗試此操作時。 但是在我的物理設備中......
在該應用程序上顯示: 93edad60438f8004
獲取字符串設備 ID: 5f1cf6393c37ae96
如何獲取該應用程序的設備 ID?
截至 Android 26,出於隱私原因,設備上的每個應用程序都會被告知不同的 Android ID。 這可以防止公司僅通過關聯設備 ID 就可以在未經用戶許可的情況下共享用戶數據。
此外,設備 ID 永遠不應用作登錄憑據。 我可以獲得一個版本 Android,它允許我通過快速重新編譯 AOSP 在模擬器上聲明我想要的任何 ID。 它很容易被欺騙。 如果您需要能夠登錄設備,請使用從您的服務器隨機生成的密鑰,並使用存儲在密鑰庫中的密鑰對其進行加密。 不要指望硬件標識符。 它們可以被欺騙,同樣重要的是,您不能在不破壞用戶使用您的應用程序的情況下撤銷它們。 使用隨機生成的令牌,您可以使其在服務器端無效,用戶只需重新登錄即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.