2

我认为 OkCupid 的网站能够检测您是否安装了他们的 AppStore 应用程序,然后如果它确实存在于本地设备(例如 iPhone、iPad)上,则从他们的网站切换到该应用程序。有谁知道如何做到这一点?我知道如何检测网络应用程序何时以常规或独立模式运行,但我不知道如何检测/从常规浏览器会话切换。

4

3 回答 3

0

这可以很容易地完成,使用称为iOS URL Schemes的东西。

就是这样:

  1. 打开应用程序的Info.plist文件。
  2. 右键单击并添加以下行:“URL 类型”(或CFBundleURLTypes
  3. 展开“项目 1”并添加编辑 URL 名称作为应用程序的标识符。(即com.companyName.AppName
  4. 将第二行添加到“项目 1”,并将其称为“URL 方案”(或CFBundleURLSchemes
  5. 将 URL 方案编辑为您想要的任何内容。此 URL 将自动打开您的应用程序。(即,值appName将导致任何以开头的 URLappName://打开您的应用程序)

这就是实现此功能所必需的。但是,您可能希望使用此 URL 将信息传递给您的应用程序。在这种情况下,只需实现一个自定义处理程序,如下所示:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url 
{
    if (!url) {  
        return NO; 
    }

    NSString *URLString = [url absoluteString];
    // Do whatever you want with this string.

    return YES;
}

必须把它交给苹果,因为它让这个过程变得如此无缝。祝你的应用好运!

于 2012-07-20T17:36:31.657 回答
0

请阅读本文档,如果 OKCupid 有一个 URL Scheme 可以这样做。

与其他应用程序通信

于 2012-07-20T15:56:25.260 回答
0

自定义 URL 方案是一个应用程序加载另一个应用程序的方式。这里有一个来源位,有很多关于此的信息。

http://mobiledevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html

于 2012-07-20T15:59:08.017 回答