如何使用 macruby 进行 SCNetworkReachabilityCreateWithName

发布于 2024-11-29 05:02:20 字数 656 浏览 0 评论 0原文

我真的不知道如何将苹果提供的示例转换为宏代码,因为地址是一个字符指针,irghhh:

SCNetworkReachabilityRef target;
SCNetworkConnectionFlags flags = 0;
Boolean ok;

target = SCNetworkReachabilityCreateWithAddress(NULL, address);
ok = SCNetworkReachabilityGetFlags(target, &flags);

CFRelease(target);

这是 Objective-C 中的示例实现:

确定 iPhone 上的互联网可用性?

更新:

我刚刚意识到,我可以用macruby本身很快地做到这一点,但我仍然对如何用macruby做到这一点感兴趣。

def network_available?
  Socket.getaddrinfo('example.com', nil)
rescue
  false
end

i really don't know how to convert the example provided by apple into macruby code, since address is a char pointer, irghhh:

SCNetworkReachabilityRef target;
SCNetworkConnectionFlags flags = 0;
Boolean ok;

target = SCNetworkReachabilityCreateWithAddress(NULL, address);
ok = SCNetworkReachabilityGetFlags(target, &flags);

CFRelease(target);

here is an example implementation in Objective-C:

Determining Internet Availability on iPhone?

UPDATE:

i just realized, that i can do it very quickly with macruby itself, but i am stil interested in how you would do this with macruby.

def network_available?
  Socket.getaddrinfo('example.com', nil)
rescue
  false
end

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

醉殇 2024-12-06 05:02:20

您应该简单地获取 MacRuby NSString 实例的指针:

address = "example.com".pointer
...
target = SCNetworkReachabilityCreateWithAddress(NULL, address)

You should simply get the pointer of your MacRuby NSString instance:

address = "example.com".pointer
...
target = SCNetworkReachabilityCreateWithAddress(NULL, address)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文