获取iOS设备的Android标识符(C#)
Posted
技术标签:
【中文标题】获取iOS设备的Android标识符(C#)【英文标题】:Get Indentifier of Android of iOS device (C#) 【发布时间】:2017-10-06 12:24:02 【问题描述】:我已经编写了一个函数,它应该给我一个 ios 设备的标识符......但现在我必须为 android 做同样的事情......
两台设备上都有 Id 女巫吗?
其实我在使用 AdvertisingIdentifier。
private static string GetIdentifier()
if (ASIdentifierManager.SharedManager.IsAdvertisingTrackingEnabled)
return ASIdentifierManager.SharedManager.AdvertisingIdentifier.ToString();
return null;
【问题讨论】:
你想获取android设备的UUID? @GraceFeng-MSFT 如果可能的话,是的。 【参考方案1】:由于我不知道你到底想要哪个ID,所以我写了三个代码块如下:
//get unique number through TelephonyManager
//use this method, we need to add android.permission.READ_PHONE_STATE permission
var telephonymanager = this.GetSystemService(Context.TelephonyService) as TelephonyManager;
var imsid = telephonymanager.SubscriberId;
System.Diagnostics.Debug.WriteLine("imsid: " + imsid);
//get mac address through WifiManager
//use this method, we need to add android.permission.ACCESS_WIFI_STATE permission
var wifimanager = this.GetSystemService(Context.WifiService) as WifiManager;
var info = wifimanager.ConnectionInfo;
var macaddress = info.MacAddress;
System.Diagnostics.Debug.WriteLine("mac address: " + macaddress);
//get Android_ID use Android Provider
var deviceid = Android.Provider.Settings.Secure.GetString(this.ContentResolver,
Android.Provider.Settings.Secure.AndroidId);
System.Diagnostics.Debug.WriteLine("device id: " + deviceid);
第一个是获取手机的 IMEI、MEID、ESN 和 IMSI,这是该硬件独有的。第二个是获取设备的mac地址,最后一个是获取设备ID。
所有这些都可以用来识别设备,您可以根据自己的场景选择合适的设备。顺便说一句,对于所需的权限,我已经在代码块中注释了。
【讨论】:
以上是关于获取iOS设备的Android标识符(C#)的主要内容,如果未能解决你的问题,请参考以下文章