URL Scheme可以启动相同的应用吗?

时间:2015-02-26 07:21:58

标签: ios objective-c url-scheme

我想在我的应用程序进入后台后启动它。我使用了以下代码:

NSString *customURL = @"TestApp://?caller=TestApp%3A%2F%2Fblabla";

if ([[UIApplication sharedApplication]
     canOpenURL:[NSURL URLWithString:customURL]])
{
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];
}

else
{
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"URL error"
                                                    message:[NSString stringWithFormat:
                                                             @"No custom URL defined for %@", customURL]
                                                   delegate:self cancelButtonTitle:@"Ok"
                                          otherButtonTitles:nil];
    [alert show];
}

但它在模拟器中工作正常,但它在iOS设备中不起作用:我已经在iPhone 5中测试了iOS 8.1.3

如果我们需要做任何额外的事情,请指导我。 这里TestApp是我放在info.plist文件中的URL Schemes。

3 个答案:

答案 0 :(得分:0)

不,您无法使用网址方案打开自己的应用。

答案 1 :(得分:0)

从iOS 8.x开始,从其他来源安装应用,例如从您公司的QA测试网站或其他地方,将显示警告"不受信任的应用程序开发人员"标识它来自不受信任的应用程序开发人员"

应用程序显示此消息,因为应用程序是通过尚未被用户信任的企业证书签名的。 Apple强制显示此提示,因为正在安装的应用程序尚未通过App Store审核流程,因此在技术上不受信任。 用户接受提示后,证书将被标记为受信任。 应用程序受信任后,您可以使用URL Scheme Launch打开您的应用程序。

答案 2 :(得分:-1)

如果您收到错误(:LaunchServices:应用程序启动失败 - 收到错误安全性)

试试这个 -

  1. 安装应用
  2. 通过普通应用程序快捷方式启动应用程序。
  3. 点击'信任'如果弹出窗口打开。
  4. 杀死进程
  5. 尝试通过网址/书签启动流程