应用间的跳转

作者: coderWen | 来源:发表于2016-03-18 17:40 被阅读221次

应用程序互相跳转

  • 应用场景
  • 使用第三方用户登录,需要用户授权,还需要"返回到调用的程序, 同时返回授权的用户名"
  • 应用程序推广,网易彩票,设置-推荐应用-有很多应用程序图标
    • 如果本机已经安装过,会直接跳转到另外一个应用程序
    • 软件的广告,推广结果,后续会有一些列的金钱上的结算
  • 支付宝,第三方支付,淘宝,电话费充值。。。

要打开本机上的其他应用程序,需要设置schemes(),自定义的协议头,可以打开其他的应用程序

跳转的代码如下

- (IBAction)openWangyi:(id)sender
{
    //跳转到其他app程序appstore下载界面
    //NSURL *url = [NSURL URLWithString:@"http://itunes.apple.com/app/id425349261?mt=8"];
    
    //直接跳转到app,注意格式要正确以及名字(newsapp://)(网易新闻)
    NSURL *url = [self getUrl:@"newsapp"];
    
    // 判断本机是否安装了目标程序
    if ([[UIApplication sharedApplication] canOpenURL:url]) {
        [[UIApplication sharedApplication] openURL:url];
    } else {
        NSLog(@"没有安装,可以再给定下载地址,前往");
    }
}

- (NSURL *)getUrl:(NSString *)url
{
    NSString *urlStr = [NSString stringWithFormat:@"%@://", url];
    return [NSURL URLWithString:urlStr];
}

注意:如何获得app的下载地址以及名字是个问题

NSDictionary* infoDict =[[NSBundle mainBundle] infoDictionary];
NSString* versionNum =[infoDict objectForKey:@"CFBundleVersion"];
NSString*appName =[infoDict objectForKey:@"CFBundleDisplayName"];
NSString*text =[NSString stringWithFormat:@"%@ %@",appName,versionNum];

新浪微博的授权界面说明:

  • 在新浪微博中,本身不能直接跳转到该界面
  • 用其他应用程序打开时,如果scheme时weibo://oaauth,直接进入此界面
  • 如果直接点击,返回,返回调用放应用程序
  • 如果点击表格行中的用户名,直接返回用户信息给调用应用程序
  1. 如果要返回调用的应用程序,需要知道调用我们的应用程序的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

相关文章

  • 应用程序间跳转

    应用程序间跳转 1. 什么是应用间跳转,有什么作用? 2. 应用程序间跳转实现? 直接打开对应APP的scheme...

  • 应用间跳转(Swift)

    一.应用跳转的介绍 1.应用间跳转即从一个应用程序跳转到另一个应用程序 2.应用间跳转的应用:1.应用推荐2.支付...

  • 应用程序间跳转和社交分享

    一. 应用程序间跳转 1. 什么是应用间跳转,有什么作用? 2. 应用程序间跳转实现? 直接打开对应APP的sch...

  • 应用间跳转

    iOS 9.0之后 应用程序跳转 需要设置白名单info.plist 增加 LSApplicationQueri...

  • 应用间跳转

    应用间跳转 应用场景使用第三方用户登录,需要用户授权,还需要“返回到调用的程序,同事返回授权的用户名”应用程序推广...

  • 应用间跳转

  • 应用间跳转

    本文简单介绍iOS应用程序互相跳转的方法 2.要打开本机上的其他应用程序,需要设置schemes,自定义的协议头,...

  • 应用间跳转

    实现应用间的跳转 从demo1到demo2,首先设置demo2 的 URL schme:设置路径 tagert -...

  • 应用间跳转

    // 1.获取到对应应用程序的URL NSURL *wechatURL = [NSURL URLWithStrin...

  • 应用间的跳转

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

网友评论

    本文标题:应用间的跳转

    本文链接:https://www.haomeiwen.com/subject/xffhlttx.html