获取Android App中的许可设备信息(Xamarin)

时间:2015-04-22 06:20:28

标签: android xamarin xamarin.android

我正在使用Xamarin MonoTouch开发APP,此应用程序需要我们提供的自定义许可证密钥。为了识别每个安装,我们必须存储某种设备信息以控制App的滥用。

在尝试各种方法后,现在的问题是:

设备ID或Android ID:每次设备恢复出厂设置或格式化时都会更改。

Settings.System.GetString(this.ContentResolver, Settings.Secure.AndroidId);

IMEI号码:没有SIM卡片没有。双SIM卡手机没有固定插槽智能imei并随机发送一个。

var telephonyManager = (TelephonyManager)GetSystemService(TelephonyService);
string imei = telephonyManager.DeviceId;

WIFI Mac地址:好的方法但有些像HTC和中国的那些设置在检索mac地址时抛出异常,但是工作了一段时间。因此,每次应用程序启动时都无法获取修复ID。

WifiManager wm = (WifiManager)GetSystemService(WifiService);
string macid = wm.ConnectionInfo.MacAddress;

因此,每当上述任何一个ID失败时,用户需要一次又一次地重新注册应用程序。我们有这样做的任何万无一失的方法吗?

1 个答案:

答案 0 :(得分:0)

好吧,根据Matt的评论,因为没有从Android设备获取唯一ID的万无一失的方法。所以我已经提供了针对WIFI Mac ID和Android ID的验证安装。如果发现其中任何一个匹配,则安装是真实的或欺骗。