iOS9的7个新增特性,你了解了吗?

IOS 9美国苹果公司于2015年9月16日正式推出的移动操作系统。

iOS 9系统iOS 8更稳定,功能更全面,而且还更加开放。iOS 9加入了更多的新功能,包括更加智能的Siri,新加入的省电模式。iOS 9为开发者提供5000个全新的API

备忘录

备忘录在iOS 9中可以轻松制作待办事项的核对清单,加入照片、地图或网址链接,甚至随手画个草图 。

地图

地图的 "公交" 视图,为你提供附带路线和方向指示的公共交通信息,当你在地图中进行搜索时,会看到包括餐饮、购物和娱乐等类别的列表。你可以逐项查看这些分类,了解周围都有哪些好去处。

iCloud Drive

全新 iCloud Drive app 内置于 iOS 9 中,让你能直接从主屏幕上,便捷访问 iCloud 里存储的任何文件。你可以在这个 app 中轻松搜索,从而找到想要的文件;可以按日期、名称或添加到 Mac 上的任何标签来浏览全部文件;还可以在这个 app 里预览和整理文件。

邮件

iOS 9 为邮件带来了全新的强大功能,因此,你可以在 iOS 设备上做到更多,甚至再随手来点创意。你可以使用标记功能来为附件中的照片和文件添加图画、评论或签名,还可以轻松将 iCloud Drive 中保存的文件添加为附件。

多任务处理

在iOS 9,你不必离开正在使用的 app,便可以打开另一个 app。这样,你就能快速浏览网页,回复文本信息,或是随手记下一条备忘,然后将它们滑向一边,回到之前使用的 app 中。

Siri

让 Siri 按日期、位置和相簿名称来搜索你的照片和视频,如果你正在查看Safari、邮件或备忘录等 app 中的内容,并且希望稍后继续,Siri 可以提醒你,你的搜索屏幕现已预先推荐了联系人、app、附近的地点等内容。此外,它方方面面都更加主动,让许多小事变得更轻松便捷。 

Universal link

Universal link是iOS9的一个新特性。以shareinstall为例,通过Universal link,App可以通过各种浏览器跳转到App(例如微信内可不通过safari,一键跳转到App),真正实现一键跳转到相应界面。 备注:iOS9以上推荐使用Universal link。

(1)配置developer.apple.com的相关信息

到苹果开发者中心,为当前的App ID开启Associated Domains服务: 

(2)配置Xcode

在Xcode中配置ShareInstall为当前应用生成的关联域名:Associated Domains 开关打开,添加 Domains:applinks:f6bkarebhf22eb.shareinstall.com 

在AppDelegate中的continueUserActivity方法中调用,用来处理Universal link。

//Universal Links 通用链接
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
{
    //判断是否通过ShareInstall Universal Links 唤起App
    if ([ShareInstallSDK continueUserActivity:userActivity]) {
        return YES ;
    }else{
        //其他代码
        return YES;
    }
}
(3)配置App的URL Scheme

iOS系统中App之间是相互隔离的,通过URL Scheme, App之间可以相互调用,并且可以传递参数。 备注:iOS9以下通过Url Scheme实现拉起。

(4) 在Xcode里选中Target—Info—URL Types, 配置shareInstall为当前应用生成的Url Scheme,如图所示:

identifier 配置为 com.ShareInstall,URL Schemes从shareInstall获取(dekf0466)。 注:identifier 一定要配置为com.ShareInstall 

(5)URL Scheme相关代码配置

注意:当需要在shareInstall这个方法中处理第三方回调的时候(比如支付宝、微信回调等),请注意区分。

//iOS9以下 URI Scheme
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{

    //判断是否通过ShareInstall URL Scheme 唤起App
    if ([ShareInstallSDK handLinkURL:url]) {
         return YES;
    }else{
        //其他代码
        return YES;
    }

    return YES;
}

//iOS9以上 URL Scheme
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(nonnull NSDictionary *)options
{
    //判断是否通过ShareInstall URL Scheme 唤起App
    if ([ShareInstallSDK handLinkURL:url]) {

        return YES;
    }else{
        //其他代码
        return YES;
    }

    return YES;
}
(6)获取唤醒参数,直达具体页

通过在url中附带具体的参数,唤醒app并跳转到具体页。

- (void)getWakeUpParamsFromSmartInstall: (id) params withError: (NSError *) error{
NSLog(@"唤醒参数params=%@",params);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"URL shceme 进来的" message:[self DataTOjsonString:params] delegate:nil cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
//弹出提示框(便于调试,调试完成后删除此代码)
[alert show];
}
(7) 其他代码配置

如果做测试,获取参数,则必须在Appdelegate.h加上如下测试代码。

#pragma mark 将oc数据类型转成NSString
-(NSString *)DataTOjsonString:(id)object
{
    if (!object) {
        return null;
    }

    NSString *jsonString = null;
    NSError *error;
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:object
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:&error];
    if (! jsonData) {
        NSLog(@"Got an error: %@", error);
    } else {
jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
    }
    return jsonString;
}

转载于:https://my.oschina.net/u/3914332/blog/1862512

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值