0

在 iOS6 中,当用户访问您的网站并使用 iOS 设备时,有一种简单的方法可以让用户选择下载您的应用程序。

(我知道如何检测用户代理,编写 js 等等。只是想看看是否有人为此编写了一个快速的不错的库。)

但是,既然这还不可用,有没有什么好的解决方案可以让我们的用户知道我们有一个应用程序,并让他们下载它?但是,如果他们已经下载了消息,或者关闭了该对话框,就再也不要显示消息了吗?

编辑: 这是我过去使用过的,但删除它是因为我觉得它对用户来说很烦人。只是寻找轻量级的例子。

/**
 * Checks if this device is an iphone
 *
 * @version $Revision: 0.1
 */
puc.isIphone = function(){
    return (
        (navigator.platform.indexOf("iPhone") != -1) ||
        (navigator.platform.indexOf("iPod") != -1)
    );
}//end


/**
 * Checks if this device is an ipad
 *
 * @version $Revision: 0.1
 */
puc.isIpad = function(){
    return (navigator.platform.indexOf("iPad") != -1);
}//end

/**
* Function that checks if we are using a mobile browser and presents an option to view a differnt site
*
* @access public
*/
puc.mobile = function() {

    if (puc.isIphone() || puc.isIpad()) {

        // Add link to remove cookie
        $('#copyright').append('<p><a id="remove-iphone-cookie">Reset Mobile Preferences</a></p>');

        // Allow Deleting of the cookie
        $('#remove-iphone-cookie').click(function() {
            $.cookie('use_mobile', null);
            alert('Preferences have been reset.');
            return false;
        });

        if ($.cookie('use_mobile') == null) {

            var conf = confirm('Would you like to download the PUC Mobile iOS app?');
            if (conf) {
                document.location = 'http://itunes.apple.com/us/app/puc/id424617272?mt=8&ls=1';
                $.cookie('use_mobile', 'true');
            } else {
                // Never ask them again, unless they empty their cookies
                $.cookie('use_mobile', 'false');    
            }

        }//end

    }//end if mobile

}//end mobile
4

3 回答 3

1

您问题的第一部分很简单,您可以检测浏览器上的用户代理(iPhone、iPod、iPad 等的搜索...更多信息:http: //p2p.wrox.com/content/articles/identifying -iphone-safari-user-agent )

你问题的第二部分是你会在哪里出现不足。您将无法确定用户是否安装了该应用程序,因为 Apple 不会在其生态系统之外(尤其是通过网络)共享任何用户信息。因此,您需要至少在第一次向所有用户显示信息。然后,您可以设置一个 cookie 来跟踪他们看到的信息,但不能保证该 cookie 存在多长时间。

祝你好运!

于 2012-08-10T20:10:29.617 回答
0

好吧,您可以找出是否安装了应用程序。

如果应用程序侦听自定义 url 方案,您只需尝试使用它打开一个 url,如果浏览器在设置的超时后仍位于页面上,则未安装。这是您实现打开应用程序或应用程序商店的链接。

这很棘手,因为如果确实安装了该应用程序,您将无法取消,该链接将始终打开您的应用程序。

于 2012-08-10T23:53:31.717 回答
0

一旦检测到 iOS 设备,例如此处的第二个示例 (http://www.w3schools.com/js/js_popup.asp),您始终可以使用 JavaScript 发送确认警报,而不是“您按下确定”重定向到AppStore URL,它将自动在 AppStore 中打开

于 2012-08-10T22:28:09.057 回答