ios原生app启动原生app

一、创建两个ios工程

与创建一般的工程没有区别分别创建两个ios工程app_a与app_b

 

二、App_A的URL schemes的时设置

1)  app_a的配置文件的info目录

2)  在url types的目录的urlschemes起个名字这样第一个就完成了

三、App_B的按钮的实现

在初始加载的时候生成按钮的方法

- (void)viewDidLoad {

   [super viewDidLoad];

   UIButton *App_B_Button = [UIButton buttonWithType:UIButtonTypeCustom];

   App_B_Button.frame = CGRectMake(100, 100,100, 50);

   App_B_Button.backgroundColor = [UIColor purpleColor];

   [App_B_Button setTitle:@"App_B" forState:UIControlStateNormal];

   [App_B_Button addTarget:self action:@selector(app_B:)forControlEvents:UIControlEventTouchUpInside];

   [self.view addSubview:App_B_Button];

}

 

然后定义按钮的点击

-(void)app_B:(UIButton *)buttonB
{
    NSURL *url = [NSURL URLWithString:@"appA://"];
    [[UIApplication sharedApplication] openURL:url];
}

如果涉及到app启动的时候要传递参数在url中则要在application的代理实现方法中

//当应用程序被其他程序打开的时候会调用这个方法,在该方法中可以实现两个应用程序间的数据局传递
//通过这个代理方法可以拦截url

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    NSString *urlStr = [url absoluteString];
    if ([urlStr hasPrefix:@"AppA://"]) {
        urlStr = [urlStr stringByReplacingOccurrencesOfString:@"AppA://" withString:@""];//参数就在url,传值也在里面  
          
    }
     return NO;
}

 

你可能感兴趣的:(ios开发小点积累)