H5唤醒App的实现

用户点击分享的内容, 如果该用户已经安装则在App中打开, 这是一个很常见的需求

1.设置URLSchemes

在Info.plist中添加

2.测试是否可用

在浏览器中输入设置好的URL Schemes, 如果设置的 opentestApp 就输入 opentestApp:// ,如果有拼接参数的需求可以拼接写成 opentestApp://userid=124343

输入内容

3.代码中的处理

相关处理可以在AppDelegate.m中处理,我们通过这中方式启动或者从后台唤醒App都会走这个方法

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

可以通过判断前缀来区分处理

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
    if ([url.description hasPrefix:@"openTestapp://"]) {   
        //在这里可以对拼接的字段等做处理, 以及做跳转等等
        return YES;
    }else {
        BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
        if (result == NO) {   
        //调用其他SDK,例如支付宝SDK等
        }
        return result;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,268评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,229评论 4 61
  • 介绍 : JLRoutes是一个调用极少代码 , 可以很方便的处理不同URL schemes以及解析它们的参数,并...
    CoderLF阅读 1,656评论 0 3
  • *感恩上天,感恩大地,讓我們生活在这美 好的世界~ *感恩父親,母親帶我来到这个世界,感恩 他們的教悔~ ...
    Fen1232阅读 105评论 0 1