【问题标题】:How to detect if the user has the mobile application from a website and open the app如何检测用户是否拥有来自网站的移动应用程序并打开应用程序
【发布时间】:2019-08-14 05:58:04
【问题描述】:

我的网站不支持移动响应,但我有一个适用于 AndroidiOS 的移动应用。当人们使用这两个平台之一访问我的网站时,我希望将他们引导至我的移动应用。

如果他们已经拥有我的移动应用程序,我希望它自动打开该应用程序,否则我希望此人被重定向到 Google Play 商店或 Apple AppStore 以下载移动应用程序。

我不知道该怎么做。请帮助我提供有关如何执行此操作的提示。

<?php
class UserInfo{

    private static function get_user_agent() {
        return  $_SERVER['HTTP_USER_AGENT'];
    }

    public static function get_os() {

        $user_agent = self::get_user_agent();
        $os_platform    =   "Unknown OS Platform";
        $os_array       =   array(
            '/windows nt 10/i'      =>  'Windows 10',
            '/windows nt 6.3/i'     =>  'Windows 8.1',
            '/windows nt 6.2/i'     =>  'Windows 8',
            '/windows nt 6.1/i'     =>  'Windows 7',
            '/windows nt 6.0/i'     =>  'Windows Vista',
            '/windows nt 5.2/i'     =>  'Windows Server 2003/XP x64',
            '/windows nt 5.1/i'     =>  'Windows XP',
            '/windows xp/i'         =>  'Windows XP',
            '/windows nt 5.0/i'     =>  'Windows 2000',
            '/windows me/i'         =>  'Windows ME',
            '/win98/i'              =>  'Windows 98',
            '/win95/i'              =>  'Windows 95',
            '/win16/i'              =>  'Windows 3.11',
            '/macintosh|mac os x/i' =>  'Mac OS X',
            '/mac_powerpc/i'        =>  'Mac OS 9',
            '/linux/i'              =>  'Linux',
            '/ubuntu/i'             =>  'Ubuntu',
            '/iphone/i'             =>  'iPhone',
            '/ipod/i'               =>  'iPod',
            '/ipad/i'               =>  'iPad',
            '/android/i'            =>  'Android',
            '/blackberry/i'         =>  'BlackBerry',
            '/webos/i'              =>  'Mobile'
        );

        foreach ($os_array as $regex => $value) {
            if (preg_match($regex, $user_agent)) {
                $os_platform    =   $value;
            }
        }   
        return $os_platform;
    }
?>

【问题讨论】:

  • 有像 branch.io 这样的服务可以为你做这件事。我建议使用它们,实际上自己很难做到。

标签: javascript php android jquery ios


【解决方案1】:

在 Android 上,您可以将app links 用于您的域。在 iOS 上,您有类似的技术,universal links。在您的移动应用程序中设置这些并将用户重定向到此类深层链接以打开您的应用程序内的内容。如果安装了应用程序,它会抓住该重定向并可以继续与用户交互。如果没有,则打开链接上托管的网页。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多