如何在C#中获取iOS设备的广告ID?
答
你不能用C#单独获得它,但你可以写一个超级简单的插件来做到这一点。
创建一个名为getVendorId.mm文件(或任何你想将它命名),并把这个代码在它:
#import <AdSupport/ASIdentifierManager.h>
extern "C"
{
char* _getDeviceVendorId()
{
NSUUID *adId = [[ASIdentifierManager sharedManager] advertisingIdentifier];
NSString *udid = [adId UUIDString];
const char *converted = [udid UTF8String];
char* res = (char*)malloc(strlen(converted) + 1);
strcpy(res, converted);
return res;
}
}
然后把你的资产>插件>的iOS文件夹中的文件。
您要在使用id的C#脚本然后,首先声明exturn方法,像这样:
#if UNITY_IPHONE
[DllImport("__Internal")]
private static extern string _getDeviceVendorId();
#endif
然后,你可以调用该方法的任何地方在脚本像这样:
string AdvertisingId = _getDeviceVendorId();