【问题标题】:Can I launch one app from other app on iPhone我可以从 iPhone 上的其他应用程序启动一个应用程序吗
【发布时间】:2012-04-26 07:22:46
【问题描述】:

我想创建一个必须启动另一个应用程序并在最后运行一些功能的应用程序。

我的意思是我的应用 A 调用应用 B 并在 B 中运行一些方法。

我可以这样做吗?

我知道我想使用 URL 方案,但我可以在另一个应用程序中运行某些方法吗?

谢谢!

【问题讨论】:

    标签: ios launch url-scheme


    【解决方案1】:

    是的,您可以使用自定义 URL 方案实现此目的。见Communicating with Other Apps

    应用 B 需要注册一个自定义 URL 方案,应用 A 使用该方案来启动 B 并向其传递命令。

    以下代码片段说明了一个应用程序如何请求另一个应用程序的服务。本例中的“todolist”是 App B 注册的假设自定义方案。

    NSURL *myURL = [NSURL URLWithString:@"todolist://www.acme.com?Quarterly%20Report#200806231300"];
    [[UIApplication sharedApplication] openURL:myURL];
    

    【讨论】:

    • 根据 Apple Appstore 审核指南,此类应用应被拒绝。参考:hhttps://developer.apple.com/app-store/review/guidelines/ 安装或启动其他可执行代码的应用将被拒绝
    • 不,这是 Apple API 的一部分,并且是跨应用切换的常见场所。它不会使一个应用程序安装其他应用程序或执行外部代码。将其视为与其他应用程序的深度链接并传递参数,就像网站上的 url 链接到另一个网站一样。
    【解决方案2】:

    No..apple 对这种事情非常严格。 ios沙箱设计无论如何都不允许这样做。我能想到的唯一方法是弹出一个警报视图并很好地要求用户这样做:) ....要么这样做,要么调用服务器并做你的该服务器上的方法,但从一个应用程序触发方法到另一个应用程序是肯定的。该死……你甚至无法检测到用户安装了哪些应用程序……

    【讨论】:

    • 感谢您的回复!我们有能力从另一个应用程序启动一个应用程序。请在我的帖子中查看答案,也许这对您将来有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多