UIDevice属性和NSLog的问题

Sid*_*Sid 1 iphone properties nslog uidevice

我一直在尝试使用[[UIDevice currentDevice] ...]和NSLog来记录设备参数.尽管尝试了不同的方法,我总是得到同样的警告.

我得到的警告是:

Passing argument 1 of 'NSLog' from incompatible pointer type
Run Code Online (Sandbox Code Playgroud)

以下是我的所有尝试:

1:

NSString *UDID = [[UIDevice currentDevice] uniqueIdentifier];
    NSString *deviceName = [[UIDevice currentDevice] name];
    NSString *deviceModel = [[UIDevice currentDevice] model];

    NSLog("\nDevice UDID: %@\nDevice Name: %@\nDevice Mode:%@\n",UDID, deviceName, deviceModel);
Run Code Online (Sandbox Code Playgroud)

2:

NSString *UDID = (NSString*)[[UIDevice currentDevice] uniqueIdentifier];
    NSString *deviceName = (NSString*)[[UIDevice currentDevice] name];
    NSString *deviceModel = (NSString*)[[UIDevice currentDevice] model];

    NSLog("\nDevice UDID: %@\nDevice Name: %@\nDevice Mode:%@\n",UDID, deviceName, deviceModel);
Run Code Online (Sandbox Code Playgroud)

3:

NSString *UDID = [NSString stringWithFormat:[[UIDevice currentDevice] uniqueIdentifier]];
    NSString *deviceName = [NSString stringWithFormat:[[UIDevice currentDevice] name]];
    NSString *deviceModel = [NSString stringWithFormat:[[UIDevice currentDevice] model]];

    NSLog("\nDevice UDID: %@\nDevice Name: %@\nDevice Mode:%@\n",UDID, deviceName, deviceModel);
Run Code Online (Sandbox Code Playgroud)

4:

NSLog("\nDevice UDID: %@\nDevice Name: %@\nDevice Mode:%@\n",[[UIDevice currentDevice] uniqueIdentifier], [[UIDevice currentDevice] name], [[UIDevice currentDevice] model]);
Run Code Online (Sandbox Code Playgroud)

谁能帮我吗?谢谢!

arc*_*ght 6

您需要使用NSString作为NSLog的第一个参数.例如

NSLog(@"\nDevice UDID: %@\nDevice Name: %@\nDevice Mode:%@\n",UDID, deviceName, deviceModel);
Run Code Online (Sandbox Code Playgroud)

注意字符串开头之前的'@'