Вы можете сделать это в полной мере, и на developer.android.com вы можете это предложить, когда они говорят о WebView, особенно если вы хотите создать веб-приложение для вашего веб-представления.Ссылка здесь: http://developer.android.com/guide/webapps/webview.html
Id предлагает не только сохранять ссылку на приложение в вашем User Agent, но также отслеживать версию.
В любом случае, я хотел изменитьи мой UA, и обсуждения здесь, и побуждающие меня сделать это.
Вот моя реализация:
На вашем Android-приложении:
String versionName="";
int versionCode=0;
try {
versionName = getBaseContext().getPackageManager().getPackageInfo(getBaseContext().getPackageName(), 0 ).versionName;
versionCode = getBaseContext().getPackageManager().getPackageInfo(getBaseContext().getPackageName(), 0 ).versionCode;
} catch (NameNotFoundException e) {
e.printStackTrace();
}
Если вы хотите автоматически увеличить номер сборки, иначе.versionCode, вы также можете взглянуть на этот другой пост Переполнение стека , решение C #.
После этого вы просто меняете User Agent.
WebView mywebview = (WebView)findViewById(R.id.webView);
String myUserAgent = " MyFancyAPPName V."+versionName+"."+versionCode;
mywebview.getSettings().setUserAgentString(mywebview.getSettings().getUserAgentString()+myUserAgent);
В вашем веб-приложении: в PHP
<?php
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
if(stripos($ua,'MyFancyAPPName') !== false){
//do whatever you wish here
}
?>
или в JavaScript
var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("MyFancyAPPName") > -1;
if(isAndroid) {
//do whatever you wish here
}
Или вы можете непосредственно обнаружить его с помощью .htaccess файл:
RewriteCond %{HTTP_USER_AGENT} ^.*MyFancyAPPName.*$
RewriteRule ^(.*)$ http://www.MyWebSite/MyFancyAPPName [R=301]