我发现了一种方法,它带来唯一的标识符,但它的deprecated。有没有其他方法可以使用单点触控软件来唯一识别iphone?如果是,苹果会接受使用推送通知进行授权吗?
我想过创建一个GUID并将其保存在手机上。这一点不太确定。
发布于 2012-01-10 21:18:41
使用MAC地址可能是最简单的选择。您可以使用以下命令列出它们:
foreach (var i in NetworkInterface.GetAllNetworkInterfaces ())
Console.WriteLine ("{0} {1}", i.Id, i.GetPhysicalAddress ());然而,需要注意的是,在读取MAC地址时,MonoTouch中有一个bug (已修复)。在发布应用程序之前,请确保您使用的版本具有该修复程序。
有关该主题的更多信息,请参阅此email thread。
发布于 2012-01-13 17:16:42
一个解决方案是添加您自己的GUID (唯一标识符)。首先,在某个位置创建一个类。我选择了一个名为Domain的文件夹。以下是代码
using System;
using MonoTouch.Foundation;
public class Settings
{
private static string KEY_DEVICEID = "anyNameDeviceId";
public static string DeviceId
{
get
{
string result = NSUserDefaults.StandardUserDefaults.StringForKey(KEY_DEVICEID);
if(string.IsNullOrEmpty(result))
{
result = Guid.NewGuid().ToString();
NSUserDefaults.StandardUserDefaults.SetString(result, KEY_DEVICEID);
NSUserDefaults.StandardUserDefaults.Synchronize();
}
return result;
}
}
}然后你只需要在你的视图中读出这段代码:
Console.WriteLine(Settings.DeviceId.toString()); https://stackoverflow.com/questions/8799629
复制相似问题