开发技巧:简述iOS应用间的互相跳转

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

1. 应用场景1) 使用第三方用户登录,需要用户授权,还需要"返回到调用的程序,同时返回授权的用户名"

2) 应用程序推广,网易彩票,设置-推荐应用-有很多应用程序图标

- 如果本机已经安装过,会直接跳转到另外一个应用程序

- 软件的广告,推广结果,后续会有一些列的金钱上的结算

3) 支付宝,第三方支付,淘宝,电话费充值。。。

2. 要打开本机上的其他应用程序,需要设置schemes,自定义的协议头,可以打开其他的应用程序跳转的代码如下:

- (IBAction)openWangyi:(id)sender

{

// 跳转到其他应用程序

// schemes: 网易的scheme wangyi

NSURL *url = [NSURL URLWithString:@"wangyi://view?newsid=201410130001"];

// 判断本机是否安装了目标程序

if ([[UIapplicationsharedApplication] canOpenURL:url]) {

[[UIApplication sharedApplication] openURL:url];

} else {

NSLog(@"没有安装,可以再给定下载地址,前往");

}

}

3. 新浪微博的授权界面说明:1> 在新浪微博中,本身不能直接跳转到该界面

2> 用其他应用程序打开时,如果scheme时weibo://oauth,直接进入此界面

3> 如果直接点击,返回,返回调用放应用程序

4> 如果点击表格行中的用户名,直接返回用户信息给调用应用程序

4. 如果要返回调用的应用程序,需要知道调用我们的应用程序的scheme// 只要是由其他应用程序打开的,就会调用此方法

/// URL 就是其他应用程序,打开当前程序使用的URL

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

// openURL 是打开当前应用程序的url

// sourceApplication 是当开当前应用程序的源程序的BundleId

// 提示:一旦重写了新方法,旧方法就不再被执行

// 但是:很多第三方框架,都建议两个方法全都写

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航