androidagent
Ⅰ 請問大家,要怎麼分辨Android 的user-agent 是屬於「手機」還是「平板 電腦
判斷user-agent中是否含有Mobile字元串,如果沒有則是平板,包含即為手機
Ⅱ 如何修改Android自帶瀏覽器的User Agent
樓上說的都不對,想讓網站在PC、iPhone、iPad、Android設備上打開同一域名然後顯示不同,原理上是通過網頁程序首先識別設備,然後再根據不同設備,跳轉到不同的二級域名或鏈接。其中,跳轉二級域名這種方式是最常見的。 我以Php和javascript代碼,簡單給出檢測設備的代碼,具體實現的代碼恕不奉上: Php檢測iPhone、iPad、Android設備: $iPhone = strstr($_SERVER['HTTP_USER_AGENT'],'iPhone'); $iPod = strstr($_SERVER['HTTP_USER_AGENT'],'iPod'); $Android = stripos($_SERVER['HTTP_USER_AGENT'],'Android') !== false; Javascript檢測iPhone、iPad、Android設備: var iPhone = (navigator.userAgent.match(/iPhone/i)); var iPod = navigator.userAgent.match(/iPod/i); var Android = navigator.userAgent.match(/Android/i); 有了這些設備檢測代碼,就可以實現判斷和域名跳轉了。 另外,現在有些在不同客戶端查看網站的工具,我不好發鏈接,自己輸入關鍵字:Screenfly 可以用來測試不同不同顯示器或者移動設備下網站顯示狀況的工具,並且支持最流行的平板電腦或者移動設備。
Ⅲ 如何修改Android自帶瀏覽器的User Agent
你好,你可以在安卓系統里安裝別的瀏覽器,用別的瀏覽器就會改變。
Ⅳ android/Agent.xua是病毒還是木馬
是病毒,趕緊安裝個騰訊手機管家殺毒,管家可以智能的掃描所有病毒,進行全方面查殺;並且與卡巴斯基合作提供雙核殺毒功能;它可以自動更新病毒資料庫,讓你放心安全的查殺所有病毒,不用擔心新型病毒的危害,全面的查殺病毒程序和惡意插件。
Ⅳ 如何在Android應用里對HTTP請求頭部添加適當的User-Agent欄位
目前android提供的工具沒事,我們寫工程都是自己寫http請求,每次請求的時候打Log,記錄請求的url和參數。請求回來了,打log,記錄回來的數據,記錄數據的狀態,數據的內容。 目前只能這樣。如果用模擬器的話,可以用vnStat或者CommView之類的監控電腦網卡的請求,間接的監控手機。一般開發用手機測試,這樣就不行了。只能打log了
Ⅵ 如何獲得Android的USER Agent-Android開發問答
OPHONE的UA存放位置:
1)OPHONE 1.0和1.5 存放於/opl/etc/properties.xml
1)OPHONE 2.0 存放於/opl/etc/proct_properties.xml
大家可以通過下面的步驟自己查看:
1),連上手機,或者模擬器。
2),輸入 adb shell
3),輸入 cd opl
4),輸入 cd etc
5),輸入 cat properties.xml (或者cat proct_properties.xml 【OPHONE2.0】)
結果如下圖:
ophone.png (6 KB)
ophone ua
2010-08-24 14:09
以上就是properties.xml的內容,接下來就是獲得這個UA,加到自己的聯網請求里去。
我自己寫了一個,適用於目前3個版本的OPHONE。
AndroidPlatform.java
package com.***.****;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
public class AndroidPlatform {
public static final String KEYSTRING_USER_AGENT = "user_agent_key";
public static String getUAFromProperties()
{
try {
FileInputStream is = getPropertyStream();
ByteArrayOutputStream bytearrayoutputstream = new ByteArrayOutputStream();
byte buf[] = new byte[1024];
for(int k = 0; -1 != (k = is.read(buf));)
bytearrayoutputstream.write(buf, 0, k);
String fileString = new String(bytearrayoutputstream.toByteArray(), "UTF-8");
return getProperties(KEYSTRING_USER_AGENT, fileString);
//System.out.println("IS FILE Android Platform " + bytearrayoutputstream.size() + " "+());
} catch (Exception e) {
// TODO: handle exception
System.out.println("IS FILE erororo");
e.printStackTrace();
}
return null;
}
public static FileInputStream getPropertyStream()
{
try {
File property = new java.io.File("/opl/etc/properties.xml");
if(property.exists())
{
return new FileInputStream(new java.io.File("/opl/etc/properties.xml"));
}
else
{
property = new java.io.File("/opl/etc/proct_properties.xml");
if(property.exists())
{
return new FileInputStream(new java.io.File("/opl/etc/proct_properties.xml"));
}
else
{
return null;
}
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return null;
}
public static String getProperties(String key, String content)
{
String STARTKEY = "<"+key+">";
String ENDKEY = "</"+key+">";
content = content.replace("\r", "");
content = content.replace("\n", "");
int startIndex = content.indexOf(STARTKEY) + STARTKEY.length();
int endIndex = content.indexOf(ENDKEY);
if(startIndex > -1 && endIndex > -1)
{
return content.substring(startIndex, endIndex);
}
else
return null;
}
}
聯網請求時,加入UA即可,這樣就做到了自動適配了。具體如下:
private int CountMoneyCMWAPNEWWAY(String urlstr)
{
String strHead = "";
try{
if(!GameLet._self.isNetworkCMWAPAvailable())
{
GameLet._self.ActiveNetWorkByMode("wap");
Thread.sleep(5000);
}
int splashIndex = urlstr.indexOf("/", 7);
String hosturl = urlstr.substring(7, splashIndex);
String hostfile = urlstr.substring(splashIndex);
HttpHost proxy = new HttpHost( "10.0.0.172", 80, "http");
HttpHost target = new HttpHost(hosturl, 80, "http");
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, 20 * 1000);
HttpConnectionParams.setSoTimeout(httpParams, 20 * 1000);
HttpConnectionParams.setSocketBufferSize(httpParams, 8192);
HttpClientParams.setRedirecting(httpParams, true);
String userAgent = AndroidPlatform.getUAFromProperties();
HttpProtocolParams.setUserAgent(httpParams, userAgent);
DefaultHttpClient httpclient = new DefaultHttpClient(httpParams);
httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
HttpGet req = new HttpGet(hostfile);
HttpResponse rsp = httpclient.execute(target, req);
HttpEntity entity = rsp.getEntity();
InputStream inputstream = entity.getContent();
ByteArrayOutputStream bytearrayoutputstream = new ByteArrayOutputStream();
byte abyte1[] = new byte[1024];
for(int k = 0; -1 != (k = inputstream.read(abyte1));)
bytearrayoutputstream.write(abyte1, 0, k);
strHead = new String(bytearrayoutputstream.toByteArray(), "UTF-8");
httpclient.getConnectionManager().shutdown();
}
catch (Exception e) {
return 2;
}
if(strHead.indexOf("status=1301") > -1 || strHead.indexOf("status=1300") > -1)
{
return 1;
}
else
{
return 0;
}
}
Ⅶ 手機上的androidagent是幹嘛用的求高手解答。
額~~~我手機上沒有這個,不過,按照一貫的認知,只要是和「android"掛鉤的,應該都是系統自帶的,樓主小心為妙。
Ⅷ 如何修改Android自帶瀏覽器的User Agent
最近在研究Android自帶的Chrome Lite瀏覽器,想修改下它的UserAgent,跟蹤了下Android2.2的源代碼,發現主要要修改如下幾個地方:
1.platform/packages/apps/Browser/src/com/android/browser/BrowserSettings.java
2.platform/packages/apps/Browser/res/values/strings.xml
在strings.xml中找到這一段:
view plain to clipboardprint?
<!-- Do not tranlsate. Development option -->
<string-array name="pref_development_ua_choices" translatable="false">
<item>Android</item>
<item>Desktop</item>
<item>iPhone</item>
</string-array>
<!-- Do not tranlsate. Development option -->
<string-array name="pref_development_ua_values" translatable="false">
<item>0</item>
<item>1</item>
<item>2</item>
</string-array>
這一段中pref_development_ua_choices對應的是Browser的debug模式下選擇UserAgent時選項的名字,pref_development_ua_values對應的是不同的UserAgent,一會會講到這些數字分別對應的是什麼UserAgent。
在BrowserSettings.java中找到這兩段:
view plain to clipboardprint?
private static final String DESKTOP_USERAGENT = "Mozilla/5.0 (Macintosh; " +
"U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.17 (KHTML, " +
"like Gecko) Version/4.0 Safari/530.17";
private static final String IPHONE_USERAGENT = "Mozilla/5.0 (iPhone; U; " +
"CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 " +
"(KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16";
view plain to clipboardprint?
public void update(Observable o, Object arg) {
BrowserSettings b = (BrowserSettings)o;
WebSettings s = mSettings;
s.setLayoutAlgorithm(b.layoutAlgorithm);
if (b.userAgent == 0) {
// use the default ua string
s.setUserAgentString(null);
} else if (b.userAgent == 1) {
s.setUserAgentString(DESKTOP_USERAGENT);
} else if (b.userAgent == 2) {
s.setUserAgentString(IPHONE_USERAGENT);
}
由此可以看出第一段Java代碼是不同的UserAgent字元串,從第二段代碼中可以看出strings.xml中那個整數的數組和不同UserAgent的對應關系,0對應默認的UserAgent,即Android
Chrome Lite自己的UserAgent,1對應的是Mac OS的UserAgent,2對應的是IPhone OS的UserAgent。
有了上述信息,添加一個自己的UserAgent就不是什麼難事了,首先在strings.xml中添加一個UserAgent選項的名字,然後添加一個序號,然後在BrowserSettings.java中添加一個自己的UserAgent字元串,然後在最後一個if後面寫一個
view plain to clipboardprint?
else if (b.userAgent == 3) {
s.setUserAgentString(YOUR_OWN_USERAGENT);
}
然後就大功告成了!
Ⅸ 如何修改Android自帶瀏覽器的User Agent
最近在研究Android自帶的Chrome Lite瀏覽器,想修改下它的UserAgent,跟蹤了下Android2.2的源代碼,發現主要要修改如下幾個地方:
1.platform/packages/apps/Browser/src/com/android/browser/BrowserSettings.java
2.platform/packages/apps/Browser/res/values/strings.xml
在strings.xml中找到這一段:
view plain to clipboardprint?
<!-- Do not tranlsate. Development option -->
<string-array name="pref_development_ua_choices" translatable="false">
<item>Android</item>
<item>Desktop</item>
<item>iPhone</item>
</string-array>
<!-- Do not tranlsate. Development option -->
<string-array name="pref_development_ua_values" translatable="false">
<item>0</item>
<item>1</item>
<item>2</item>
</string-array>
這一段中pref_development_ua_choices對應的是Browser的debug模式下選擇UserAgent時選項的名字,pref_development_ua_values對應的是不同的UserAgent,一會我會講到這些數字分別對應的是什麼UserAgent。
在BrowserSettings.java中找到這兩段:
view plain to clipboardprint?
private static final String DESKTOP_USERAGENT = "Mozilla/5.0 (Macintosh; " +
"U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.17 (KHTML, " +
"like Gecko) Version/4.0 Safari/530.17";
private static final String IPHONE_USERAGENT = "Mozilla/5.0 (iPhone; U; " +
"CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 " +
"(KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16";
view plain to clipboardprint?
public void update(Observable o, Object arg) {
BrowserSettings b = (BrowserSettings)o;
WebSettings s = mSettings;
s.setLayoutAlgorithm(b.layoutAlgorithm);
if (b.userAgent == 0) {
// use the default ua string
s.setUserAgentString(null);
} else if (b.userAgent == 1) {
s.setUserAgentString(DESKTOP_USERAGENT);
} else if (b.userAgent == 2) {
s.setUserAgentString(IPHONE_USERAGENT);
}
由此我們可以看出第一段Java代碼是不同的UserAgent字元串,從第二段代碼中我們可以看出strings.xml中那個整數的數組和不同UserAgent的對應關系,0對應默認的UserAgent,即Android Chrome Lite自己的UserAgent,1對應的是Mac OS的UserAgent,2對應的是IPhone OS的UserAgent。
有了上述信息,添加一個自己的UserAgent就不是什麼難事了,首先在strings.xml中添加一個UserAgent選項的名字,然後添加一個序號,然後在BrowserSettings.java中添加一個自己的UserAgent字元串,然後在最後一個if後面寫一個
view plain to clipboardprint?
else if (b.userAgent == 3) {
s.setUserAgentString(YOUR_OWN_USERAGENT);
}
然後就大功告成了!
Ⅹ android agent是什麼為什麼360建議去掉
可能是安卓的代理吧,一般衛士建議去掉的最好去掉