我已阅读此问题的答案Identify new iPhone model on xcode (5, 5c, 5s),并希望将此NSString
添加到我的MFMailCompose
。我尝试过使用这种方法,但没有运气。有人请帮帮我。
抱歉,我是Xcode的新手。
NSString *iOS = [[UIDevice currentDevice] systemVersion];
NSString *model = [[UIDevice currentDevice] model];
NSString *appVersionString = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
NSString *name = [[UIDevice currentDevice] name];
NSString *appID=@" ";
NSString *appStoreURL =[NSString stringWithFormat:@"https://itunes.apple.com/us/app/scanmarks/id926114469?ls=1&mt=8", appID];
NSString *body = [NSString stringWithFormat:@"I need help with\n\n\n----------\n Name: %@\nDevice: %@ (%@)\n Scanmarks Version: %@\n",name,model,iOS,appVersionString];
目前显示:
我希望它能像Tweetbot那样显示iPhone设备模型
我添加了建议,现在有:
答案 0 :(得分:0)
哈维,
我构建了一个开源工具,可以完全满足您的需求。随意使用它或浏览代码,看看我是如何完成你所要求的。
https://github.com/michaelpatzer/MPFeedbackMailComposeViewController
答案 1 :(得分:0)
使用您在问题中提到的链接,如果您只是想要说出iPhone平台,那么您只需使用这部分答案:
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *machine = malloc(size);
sysctlbyname("hw.machine", machine, &size, NULL, 0);
NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
free(machine);
这将转换为iPhone7,2等,只需将NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
字符串'平台'传递到您的邮件正文
如果您希望将其转换为您想要的任何字符串,那么当其他部分发挥作用时。这是您在答案中使用其他部分和所有转换的唯一时间:
NSString *convertPlatformToString = [self platformType:platform]);
放入邮件的示例:
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *machine = malloc(size);
sysctlbyname("hw.machine", machine, &size, NULL, 0);
NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
free(machine);
NSString *body = [NSString stringWithFormat:@"Platform is %@", platform];