首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >openURL:options:completionHandler:一些问题

openURL:options:completionHandler:一些问题
EN

Stack Overflow用户
提问于 2018-09-12 12:04:13
回答 1查看 790关注 0票数 1

需要使用openURL:options:completionHandler:函数打开第三方apps (如qqmusic、网易、天猫等)。当我的应用程序在前台时,它可以工作,但当我的应用程序转到后台时,这个功能不起作用。有谁有解决方案吗?

这是我的代码:

代码语言:javascript
运行
复制
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"qqmusic://"]]){
    NSURL *url = [NSURL URLWithString:@"qqmusic://"];
    if (@available(iOS 10.0, *)) {
        [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:^(BOOL success) {}];
    } else {
        [[UIApplication sharedApplication] openURL:url];
    }
}
EN

回答 1

Stack Overflow用户

发布于 2018-09-12 19:18:43

有没有可能你接受的答案只是告诉你,你想做的事情是不可能的?因为这是不可能的。禁止这类事情是苹果深思熟虑的设计决定。

只有当你的应用程序在前台时,openURL才能工作。当该方法在后台时,您不能调用它。而且也没有其他API会有类似的效果。

我使用iPhone已经有很多年了,在后台我没有看到任何打开URL的应用程序。作为一名iPhone用户,我很高兴这不起作用。如果我只是在阅读电子邮件,这将是非常糟糕的,突然音乐应用程序出现,因为一些后台应用程序打开了它。我没有办法弄清楚是哪个应用程序做到了这一点。这不会发生,因为这样的事情是不可能的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52287335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档