需要帮忙。 Apple 的带有地址的可达性类不起作用

Posted

技术标签:

【中文标题】需要帮忙。 Apple 的带有地址的可达性类不起作用【英文标题】:Need help. Apple's Reachability class with address does not work 【发布时间】:2012-08-29 09:05:15 【问题描述】:

我想检查我的相机是否已连接,但我似乎无法让它工作。 我添加了可达性 .h 和 .m。感谢您对我的学校项目的所有帮助!

- (void)viewDidAppear:(BOOL)animated 

Reachability *reachabilityForCam = [Reachability reachabilityWithAddress:struct sockaddr_in callAddress; 
                                     callAddress.sin_len = sizeof(callAddress); 
                                     callAddress.sin_family = AF_INET; 
                                     callAddress.sin_port = htons(80); 
                                     callAddress.sin_addr.s_addr = inet_addr("X.X.X.X")];     
                                     if ([reachabilityForCam currentReachabilityStatus] == NotReachable) 
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Cam is not reachable" delegate:nil cancelButtonTitle:@"Close" otherButtonTitles:nil];
    [alertView show];
    [self dismissModalViewControllerAnimated:YES];
    

【问题讨论】:

这是一个在同一个 wifi 网络上的相机还是什么? 也许让你更清楚你想要做什么,你已经尝试过什么,以及你遇到了什么错误。 好吧,我只是想检查一下我的相机是否已连接。它通过以太网电缆连接到 LAN 集线器。到目前为止,我所做的是输入苹果提供的可达性类。我已经创造了上述的空白。显示的错误是“'struct'之前的预期表达式”我什至不知道我到目前为止所做的是否正确。非常感谢您的帮助 嗯,这是不正确的,因为您试图在方法调用中间声明和填充结构。你读过 Apple Reachability 项目的代码了吗? 是的,我已经读过了。我尝试了不同的方法。虽然不能让它工作。也试过这种方式,Reachability*reachabilityForCam = [[Reachability reachabilityWithAddress:@"X.X.X.X"]retain]; NetworkStatus netStatus = [reachabilityForCam currentReachabilityStatus]; if ([reachabilityForCam currentReachabilityStatus] == NotReachable) UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Cam is not reachable" delegate:nil cancelButtonTitle:@"Close" otherButtonTitles:nil]; [警报视图显示]; [selfdismissModalViewControllerAnimated:YES]; 【参考方案1】:

感谢您为您的学校项目开发 ios 项目。但是要检查相机是否可用,您应该使用UIImagePickerController 类 API 而不是 Rechability。

请检查如下。 if ([UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerSourceTypeCamera])

希望对你有帮助。

【讨论】:

感谢您的回复。那么,我使用这种方法而不是可达性? 如果对您有帮助,请不要介意正确回答。 :) 我想简单检查一下安全摄像头是否已连接。如果不是,请制作一个简单的警报视图。很抱歉,我没有得到 UIImagePickerViewController。在这方面我是个大菜鸟。 安全摄像头是什么意思?你说的是 iOS 设备摄像头吗? 不。我的学校为我提供了一台带有 IP 地址的相机。:)

以上是关于需要帮忙。 Apple 的带有地址的可达性类不起作用的主要内容,如果未能解决你的问题,请参考以下文章

从 Android 中的 Async 类调用 Async 类不起作用?

使用 SWIFT 检查 IP 地址可达性

在 p:tabmenu 中隐藏 p:menuItem

链接列表中的类不起作用

Symfony SerializerInterface 将 json 反序列化为类不起作用

Apple 分发证书在带有 Xcode 11.3.1 的 macOS 10.14.6 中不起作用