iOS实现app间跳转功能

本文为大家分享了iOS实现app间跳转功能的具体代码,供大家参考,具体内容如下

我们通过系统的openURL方法,可以从当前的app跳转到其他任意app去,包括系统自带的、以及我们开发的app。

本文模拟A app跳转到 B app

A app代码:

// A app
// ViewController.m
// 程序跳转
//
// Created by hhg on 15/10/23.
// Copyright (c) 2015年 hhg. All rights reserved.
//

#import "ViewController.h"
@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
  [super viewDidLoad];
}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
  // 为我们的程序设置一个唯一的标识,那么其他软件就可以使用openURL方法通过唯一标识来打开我们的程序
  [[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"zapp:"]];
}

- (void)didReceiveMemoryWarning {
  [super didReceiveMemoryWarning];
}
@end

B app代码:

// B app
// AppDelegate.m
// MyApp
//
// Created by hhg on 15/10/23.
// Copyright (c) 2015年 hhg. All rights reserved.
//

#import "AppDelegate.h"
@interface AppDelegate ()
@end
@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  return YES;
}

// 当其他程序通过openURL打开该程序的时候,会触发这个方法
// URL ,就是其他程序打开时候的URL
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
  UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"跳转成功!" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles: nil];
  [alertView show];
  return YES;
}

- (void)applicationWillResignActive:(UIApplication *)application {
}
- (void)applicationDidEnterBackground:(UIApplication *)application {
}

- (void)applicationWillEnterForeground:(UIApplication *)application {
}

- (void)applicationDidBecomeActive:(UIApplication *)application {
}

- (void)applicationWillTerminate:(UIApplication *)application {
}
@end

B app 在info.plist 文件里面需要设置:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
  <dict>
    <key>CFBundleURLName</key>
    <string></string>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>zapp</string>
    </array>
  </dict>
</array>
</plist>

如图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。