开发总结collect

iOS 实现桌面快捷方式-快速打开App功能页

2018-06-04  本文已影响2人  mengjz

实现原理:iOS中无法像安卓一样通过发送通知生成桌面快捷方式,为了实现该功能,需要借助系统浏览器。为了保障创建过程体验,实现从App获取数据(指引页面,桌面图标,跳转URL页面)。

实现过程:

1.基于URLRoute,方便浏览器唤醒App,方便定位到具体页面;

2.App提供浏览器的本地请求服务(从浏览器获取App内数据);

3.App内包装浏览器需要的数据;

4.App保障后台运行中服务的稳定性;

5.系统浏览器内按照指引操作。

具体实现举例:

1.我们要跳转的页面:

iwangzhe.app://universal/h5?url=https%3a%2f%2fdev.pydp888.com%2fk

2.启动服务


3.包装返回数据

4.后台中服务保障

5.App跳转到浏览器,请求数据

NSString * deviceIPAddres = @"127.0.0.1";    

                                                              NSString * openUrl = [NSString stringWithFormat:@"http://%@:%@",deviceIPAddres,[findDict objectForKey:@"port"]];

                                                              [[UIApplication sharedApplication] openURL:[NSURL URLWithString:openUrl]];

注意事项:

1.请求地址固定为:127.0.0.1(识别到为该地址,不请求网络,走本地;这里有个问题如果走网络当非Wifi下会请求失败)

2.端口号应该不占用一些默认端口,并且小于65535

3.HttpServer 实现请参考http://www.cocoawithlove.com/2009/07/simple-extensible-http-server-in-cocoa.html

上一篇下一篇

猜你喜欢

热点阅读