gpt4 book ai didi

ios - 无法将设备检测为 iPad

转载 作者:行者123 更新时间:2023-11-29 02:35:34 27 4
gpt4 key购买 nike

我正在制作一个使用 HealthKit 的应用程序。该应用程序不能在 iPad 上运行,因此我的 viewDidLoad 方法包含一个 if/then/else 语句来向 iPad 用户显示警报。这是我的代码:

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0") && [HKHealthStore isHealthDataAvailable] == 1) {
...
}
else {
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Whoops!" message:@"Looks like your device doesn't support HealthKit :(" preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:alertController animated:1 completion:^(){
NSLog(@"Showed error alert because of unsupported device.");
}];
}

SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0") 位来自 this gist .

当设备是 iPad、未运行 iOS 8.0+ 或只是(由于某些其他原因)无法使用 HealthKit 时,UIAlertController 应显示。理论上这一切都很好,但是当我在运行 iOS 8 的 iPad 2 模拟器上运行该应用程序时,该应用程序正常启动并且不显示警报。根据记录,我知道警报没有按钮,但我不希望它消失。它应该只在 iPad 或低于 iOS 8 的设备上显示,因此在显示时不需要消失。

那么为什么我的应用程序没有在 iPad 上显示警报 View ?控制台没有显示任何错误。

编辑:没有按钮的通知不会出现在最终产品中,只是在测试中。然而,这一点仍然存在,因为警报应该仍然显示。

最佳答案

您是否检查过设备系列是否设置为通用?如果它设置为 iPhone only,则用户惯用语永远不会是 iPad。使该应用程序通用似乎解决了此 question 中提出的类似问题。

PS,很抱歉我的第一个回答没有正确阅读问题。

关于ios - 无法将设备检测为 iPad,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26414349/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com