objective-c - 简单的Objective-C脚本打开一个URL

标签 objective-c ios

我试图用对象c打开一个URL,我的代码如下

#include <stdio.h>
int main()
{
[[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://www.ithinksw.com/"]];
return 0;
}

但是当我尝试编译它时,出现这些错误
hello.c: In function 'main':
hello.c:4: error: expected expression before '[' token
hello.c:4: error: 'NSWorkspace' undeclared (first use in this function)
hello.c:4: error: (Each undeclared identifier is reported only once
hello.c:4: error: for each function it appears in.)
hello.c:4: error: expected ']' before 'openURL'
hello.c:4: error: stray '@' in program

即时通讯这是个新手,所以任何帮助都会很棒的:)

最佳答案

似乎您定位到iPhone,因此必须使用[[UIApplication sharedApplication] openURL]而不是NSWorkspace。

#import <Foundation/Foundation.h>

#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
#endif

// ...

#if TARGET_OS_IPHONE
    [[UIApplication sharedApplication] openURL:url];
#elif TARGET_OS_MAC
    [[NSWorkspace sharedWorkspace] openURL:url];
#endif

并且不要忘记添加Foundation框架以包含和链接部分。

关于objective-c - 简单的Objective-C脚本打开一个URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8679423/

相关文章:

ios - 在输入另一个单元格后,如何在单元格中启用禁用的文本字段?

ios - iOS9 中的 UIDatePicker 问题

javascript - 在 iOS 设备上滚动或触​​摸移动事件期间不透明度不会动画

ios - 为 UITableViewCell 创建了图像缓存,但只显示一张图像

php - 使用 AfNetworking 2 将数据发布到 PHP 时,带有 NSArray 的 NSDictionary 正在转换为元素数组

ios - 为什么我不能使用 prepareForSegue 传递值?

ios - self.navigationController.interactivePopGestureRecognizer.enabled = NO;不适用于 iOS 8

objective-c - TableView 不显示来自 Parse.com 的数据

ios - 子对象上的 NSDictionary 谓词过滤器

ios - 正在对常规 Parse 函数发出警告的主线程上执行长时间运行的操作