【问题标题】:Launch iPhone Application with Identifier使用标识符启动 iPhone 应用程序
【发布时间】:2011-11-14 12:42:42
【问题描述】:

我正在尝试在我的应用程序中启动一个应用程序。
例如:如果我在我的 testApp1 中按下一个按钮,它应该打开 testApp2。
有什么方法可以用 App Identifier 做到这一点?

我听说了一个名为 launchApplicationWithIdentifier: suspend: 的未记录方法,但这对我不起作用,或者我使用错误。
我试过这个:
[UIApplication launchApplicationWithIdentifier:@"com.test.testApp2" suspend:NO]
但它没有用。

【问题讨论】:

  • 您确定 com.test.testApp2 对应于应用程序的 Info.plist 文件的 CFBundleIdentifier 键中的值吗??
  • 是的,我是,但它仍然无法正常工作。 :(

标签: iphone objective-c xcode4


【解决方案1】:

最好使用[[UIApplication sharedApplication] openUrl:]。为此,您需要在第二个应用程序中设置自定义 URL 方案。检查this tutorial 或简单地使用“iphone 自定义 URL 方案”进行搜索。有很多很好的教程。

【讨论】:

  • 我已经考虑过了,但是如果我想启动一个没有自定义 URL 方案的应用程序,例如 Alredy 安装的应用程序,我该怎么办??
  • 如果它是一个不是你开发的应用程序,你必须寻找它的 URL 方案,例如,要启动 twitter,URL 看起来像:twitter:// 这里是一个列表third-party schemes
  • 但是你仍然不能打开你想要的每个应用程序,因为我不认为每个应用程序都有自己的 URL 方案。例如,如果我想在我的 iPhone 上打开“iPod”应用程序,我应该怎么做??
  • 这就是重点,你不能在 iOS 上启动每个应用程序。您所能做的就是检查每个应用程序是否可以使用 URL 方案打开。
  • 所以绝对没有机会用它的标识符打开一个??因为我搜索了谷歌,发现一些论坛中的帖子是人们说你可以使用[UIApplication launchapplicationwithidentifier: suspend: ]启动任何带有标识符的应用程序@
【解决方案2】:

我不确定,但我猜 launchApplication 用于 mac 应用程序,这就是它显示警告的原因。我会建议您创建一个自定义 URL 并将其添加到 plist 文件中,然后您可以使用该 URL 启动您的应用程序。

【讨论】:

  • 是的,如果我要启动的应用程序是我自己的应用程序,我可以这样做,但是如果应用程序没有自定义 URL 方案(Alredy 安装的应用程序),我该怎么办??
猜你喜欢
  • 2010-09-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多