We use a lot of third-party SDKs from ad providers, and since Apple will not allow UDID access after May 1st, I want to check which SDKs use the UDID function. Is there a simple way or tool to do that?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
One simple and naïve method is to run strings
and grep
on the library files. i.e.
strings libSomething.a | grep uniqueIdentifier
If you see any line that prints exactly uniqueIdentifier
there is a risk they call it. This method is not 100% bullet proof. But I'd expect Apple doing a similar check in their automatic validation.
回答2:
You could set a symbolic breakpoint for -[UIDevice uniqueIdentifier]
回答3:
Why don't you try secureudid (secureudid.org)?
回答4:
NSString *uuid = nil;
CFUUIDRef theUUID = CFUUIDCreate(kCFAllocatorDefault);
if (theUUID) {
uuid = NSMakeCollectable(CFUUIDCreateString(kCFAllocatorDefault, theUUID));
[uuid autorelease];
CFRelease(theUUID);
}
try this