1.Game Center
增加了GameKit.framework,跟iOS中的GameKit.framework是大同小异,这一点官方文档中的对比就可以看出。
2.iCloud 的增强
如果你的应用是基于NSDocument的,那么你就可以利用以下这此(可以参照OSX自带的文件编辑器):
- 打开窗口上添加了iCloud的选项,让用户可以选择打开iCloud文件;
- 在菜单中添加了一些与iCloud相关的菜单项
- 打用户打开的文件在其它设备上面已经修改的文件,会弹出窗口让用户解决冲突
3.消息中心
这个也是从iOS的消息演变而来,增加了NSUserNotification和 NSUserNotificationCenter两个类,你可以配置显示给用户的通知项目(通知递交的样式,时间:deliveryDate,递交循环的通知:deliveryRepeatInterval…等等),也可以管理已经递交的通知列表(deliveredNotifications),然后可以清理等等操作。
4.分享服务
以前我们要在软件中加入分享功能,就得引入不同的分享SDK,比如facebook,twitter,以及像weibo,10.8增加了NSSharingService,可以快速的构建主流的分享服务,也可以通过NSSharingServicePicker选择用户想要的分享服务,让分享变得非常的方便。
5.Gatekeeper
在10.8中,用户可以通过开启Gatekeeper,让用户决定是否运行不同来源的应用程序,比如只允许来自于Mac App Store的应用、允许Store和被认可的开发者(默认选项)、任何来源。当用户开启Gatekeeper,并没有选择任何来源,那么未签名的软件就不被允许了。
6.Objective-C 增强
- 默认合成了属性访问器,也就是如果想使用默认的属性访问器(@synthesize)就可以省去写了。
- 对象文本为 NSArray、 NSDictionary、 NSNumber的写法:
- NSArray Literals
Previously:array = [NSArray arrayWithObjects:a, b, c, nil];
Now:array = @[ a, b, c ];
- NSDictionary Literals
Previously:dict = [NSDictionary dictionaryWithObjects:@[o1, o2, o3]
forKeys:@[k1, k2, k3]];
Now:dict = @{ k1 : o1, k2 : o2, k3 : o3 }; - NSNumber Literals
Previously:NSNumber number;
number = [NSNumber numberWithChar:’X’];
number = [NSNumber numberWithInt:12345];
number = [NSNumber numberWithUnsignedLong:12345ul];
number = [NSNumber numberWithLongLong:12345ll];
number = [NSNumber numberWithFloat:123.45f];
number = [NSNumber numberWithDouble:123.45];
number = [NSNumber numberWithBool:YES];
Now:NSNumber number;
number = @’X’;
number = @12345;
number = @12345ul;
number = @12345ll;
number = @123.45f;
number = @123.45;
number = @YES;
- 精简的对象下标:
7.64位兼容性
10.8需要64位内核的MAC,不再支持32位的内核扩展(KEXTs),兼容32/64的应用程序可以运行在10.8之上。
以上为老谭翻参考苹果官方文档:https://developer.apple.com/library/mac///releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_8.html,英文翻译水平有限,多多包涵,如转载请保留链接!
