设为首页 加入收藏

TOP

App间相互跳转及图片分享(一)
2019-08-31 01:04:54 】 浏览:87
Tags:App 相互 图片 分享

A-app:

Info--URL Types--URL Schemes:A-app(一个标识,允许别的app调用本App)

info.plist 添加白名单:

LSApplicationQueriesSchemes(Array)

B-app(String)

 

//使用

- (void)jumpToBapp {

    

    UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];

    pasteboard.image = [UIImage imageNamed:@"qq"];

 

//    NSData *imageDataa = UIImageJPEGRepresentation([UIImage imageNamed:@"qq"], 1);

//    [pasteboard setData:imageDataa forPasteboardType:@"shareImageLE"];

    

    NSString *stra = [NSString stringWithFormat:@"B-app://Page2?A-app"];

    NSURL *appUrla = [NSURL URLWithString:stra];

    

    if ([[UIApplication sharedApplication] canOpenURL:appUrla]) {

        [[UIApplication sharedApplication] openURL:appUrla];

    } else {

        NSLog(@"=====can not OpenURL");

    }

}

 

 

 

 

B-app:

Info--URL Types--URL Schemes:B-app(一个标识,允许别的app调用本App)

info.plist 添加白名单:

LSApplicationQueriesSchemes(Array)

A-app(String)

 

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {

    // 1.获取导航栏控制器

    UINavigationController *rootNav = (UINavigationController *)self.window.rootViewController;

    // 2.获得主控制器

//    ViewController *mainVc = [rootNav.childViewControllers firstObject];

    // 3.每次跳转前必须是在跟控制器(细节)

//    [rootNav popToRootViewControllerAnimated:NO];

    

    // 4.根据字符串关键字来跳转到不同页面

    if ([url.absoluteString containsString:@"Page1"]) {

        [rootNav pushViewController:[ViewController new] animated:NO];

 

    } else if ([url.absoluteString containsString:@"Page2"]) {

        MJViewController *mvc = [MJViewController new];

        mvc.urlString = url.absoluteString;

        [rootNav pushViewController:mvc animated:NO];

        //        [mainVc performSegueWithIdentifier:@"homeToPage2" sender:nil];

    }

    

    return YES;

}

 

 

//MJViewController.m

if (self.urlString) {       

        UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];

        self.imageV.image = pasteboard.image;

 

  //      NSData *data = [pasteboard dataForPasteboardType:@"shareImageLE"];

  //      self.imageV.image = [UIImage imageWithData:data];

        

        self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"关闭" style:UIBarButtonItemStyleDone target:self action:@selector(backToApp)];

    }

 

/*

    关于UIPasteboard,如果直接使用pasteboard.string/ pasteboard.URL /pasteboard.image等,一次只能使用一个,且用系统的话,都可以被使用(- (void)setXXX:(id)data forPasteboardType:

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇iOS之禁止所有输入法的表情 下一篇《看书总结》

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目