iOS-打开外部应用、Safari、邮箱等
2017-11-08 11:44
537 查看
1:打开Safari
2:打电话
提示:上面代码触发后,系统会提示用户是否真的要打电话, 电话结束后,会返回至应用程序,
如果将telprompt修改为:tel 后,点击可直接拨打电话, 但电话结束后,不会返回至应用程序
3:打开Mail
4:打开Messages
5:打开App Store 某个应用的评价系统
6:打开App Store 中的某个应用 途中经过Safari
7:打开App Store 中的某个应用 直接跳转
8:打开谷歌Maps进行搜索
9:利用OpenUrl打开第三方应用程序
本文释权了打开的方式,很详细.. 地址如下:
http://blog.cnrainbird.com/index.php/2012/06/04/tong_guo_openurl_qi_dong_di_san_fang_app_bing_chuan_can_shu/
这里简单描述一下注意点,
1: A工程 需要打开 B 工程 那么B工程需要在plist文件中 进行UrlType的注册
2:在启动其他第三方应用程序之前,可以通过如下代码判断,应用程序是否已经安装在iPhone中.
3: B工程被打开时,请使用如下委托处理打开的消息
下面这个委托,也就是微文中提到的委托,已经被苹果弃用
注: sourceApplication 表示 App plist文件中标明的 Bundle identifier
至于返回YES,还是返回NO,似乎没有发生任何事情,待继续考证.
10:为应用设置首选项功能
创建:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.baidu.com"]];
2:打电话
NSString *num = @"110"; //number为号码字符串 NSString *mobileNumber = [NSString stringWithFormat:@"telprompt://%@", num]; NSLog(@"call phone %@;", mobileNumber); [[UIApplication sharedApplication] openURL:[NSURL URLWithString:mobileNumber]];
提示:上面代码触发后,系统会提示用户是否真的要打电话, 电话结束后,会返回至应用程序,
如果将telprompt修改为:tel 后,点击可直接拨打电话, 但电话结束后,不会返回至应用程序
3:打开Mail
NSString *recipients = @"mailto:ysy@flyrise.cn?subject=Hello from California!"; NSString *body = @"&body=It is raining in sunny California!"; NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body]; email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
4:打开Messages
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];
5:打开App Store 某个应用的评价系统
NSLog(@"%@",[[[SystemGlobalInfo defaultInstance] deviceInfo] applicationId]); NSString *str = [NSString stringWithFormat: @"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%@",[[[SystemGlobalInfo defaultInstance] deviceInfo] applicationId]]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
6:打开App Store 中的某个应用 途中经过Safari
NSString *appID = @"291586600"; NSString *appUrl = [NSString stringWithFormat:@"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=%@&mt=8",appID]; NSURL *appStoreUrl = [NSURL URLWithString:appUrl]; [[UIApplication sharedApplication] openURL:appStoreUrl];
7:打开App Store 中的某个应用 直接跳转
NSString *urlString = @"http://itunes.apple.com/us/app/ye-wu-xie-zuo-ping-tai/id507704613?mt=8&uo=4"; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]] ;
8:打开谷歌Maps进行搜索
NSString* searchQuery = @"珠海"; searchQuery = [searchQuery stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]; NSString* urlString = [NSString stringWithFormat:@"http://maps.google.com/maps?q=%@", searchQuery]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];
9:利用OpenUrl打开第三方应用程序
本文释权了打开的方式,很详细.. 地址如下:
http://blog.cnrainbird.com/index.php/2012/06/04/tong_guo_openurl_qi_dong_di_san_fang_app_bing_chuan_can_shu/
这里简单描述一下注意点,
1: A工程 需要打开 B 工程 那么B工程需要在plist文件中 进行UrlType的注册
2:在启动其他第三方应用程序之前,可以通过如下代码判断,应用程序是否已经安装在iPhone中.
NSURL *url = [NSURL URLWithString:@"AppMessageDemo:11"]; if ([[UIApplication sharedApplication] canOpenURL:url]) { [[UIApplication sharedApplication] openURL:url]; }else { [ShareCode Msg:@"没安装"]; }
3: B工程被打开时,请使用如下委托处理打开的消息
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { NSLog(@"%@",[url path]); NSLog(@"%@",sourceApplication); NSLog(@"%@",annotation); return NO; }
下面这个委托,也就是微文中提到的委托,已经被苹果弃用
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { NSLog(@"123"); return [WXApi handleOpenURL:url delegate:self]; }
注: sourceApplication 表示 App plist文件中标明的 Bundle identifier
至于返回YES,还是返回NO,似乎没有发生任何事情,待继续考证.
10:为应用设置首选项功能
创建:
相关文章推荐
- iOS打开外部应用、浏览器
- iOS 6苹果地图应用(MapKit)-打开外部应用
- iOS 6苹果地图应用(MapKit)-打开外部应用(导航)
- IOS 应用中 打开 电话, 邮箱, 网站等URL
- iOS 6苹果地图应用(MapKit)-打开外部应用
- iOS开发-- 开发细节(打开电话,safari,地图,导航,短信,邮箱)
- 从web页面打开iOS应用
- iOS 第三方应用调用safari
- iOS打开应用提示未受信任的企业级开发者
- IOS判断应用是否第一次打开&UIScrollView实现新应用第一打开欢迎介绍页面
- 通过手机浏览器,打开ios设备上应用/通过url schema打开本地应用
- iOS 第三方应用中打开自己的文件(UIDocumentInteractionController)
- Android&iOS:如何在外部启动app(若有安裝APP, 则自动启动app(使用 URL Schema), 若没有安装, 则询问是不是到应用市场下载)
- 浏览器中打开IOS应用并传参
- Unity3D-应用内打开AppStore某个应用详情方法(iOS应用内下载、应用内评星)
- 【IOS】在SDK中打开其他接入应用的解决方案
- 用HTML5写的视频,在IOS应应用中可以打开,在安卓应用中打不开。
- ios系统通过safari添加到主屏幕后,打开子链接还会跳转到safari
- iOS 微信打开第三方应用(微信跳转第三方app)(Universal Links)