提问者:小点点

PHP中的Android WebView检测


我做了一个简单的Android应用程序与本地菜单和一个网页视图与我的网站内容。我需要检测我的网站是否包含在网页视图中,以隐藏菜单栏。

经过长时间的研究,我发现:

if($_SERVER['HTTP_X_REQUESTED_WITH'] == "myAppPackage"){
    //the site is included in webview
}

这个解决方案对很多设备都有好处,但是对于银河S4迷你(Android4.2.2)来说,这个变量是空白的!

其他htp头变量:

  • 路径/usr/local/bin:/usr/bin:/bin

共1个答案

匿名用户

多亏了绿色应用的想法,这是最终的解决方案。

Android应用程序主活动:

public View onCreateView
....

WebView webView = (WebView) rootView.findViewById(R.id.my_webview);


String agentModified = webView.getSettings().getUserAgentString().concat(" MobileApplication(mypackage)");
webView.getSettings().setUserAgentString(agentModified);

网站:

if(strpos($_SERVER['HTTP_USER_AGENT'], 'com.vivicrema.android') !== false)
    $isMobileApp = true;

它就像一个符咒!