我们可以通过调用
从设备获取用户代理System.getProperty( “browser.useragent”)
此方法适用于 OS 4.7 +
我只测试了一些Blackberry模拟器:9530(os 4.7),9800(os 6.0.0)
它充当魅力。
但据我所知,在真实设备上,如果用户更改了黑莓浏览器,则http请求服务器中的用户代理将被更改。例如,一些黑莓设备使用Firefox浏览器。
因此我想知道,如果在真实设备上更改浏览器设置,当我们调用System.getProperty(“browser.useragent”)时,返回值是否会改变???
有没有人在真实设备上测试过? 或者有人知道这个人。
答案 0 :(得分:1)
你可以在你选择的模拟器中测试一下,通过创建一个记录或打印的应用程序来筛选System.getProperty(“browser.useragent”)的值,然后在模拟器中进行你的注意变化。
答案 1 :(得分:0)
这是一个例子:
public static String getSystemUserAgent(){
String agent = "";
if(System.getProperty("browser.useragent")!=null){
agent = System.getProperty("browser.useragent");
}else if(GI.isScreenSmall()){
agent = "BlackBerry8100/4.5.0.180 Profile/MIDP-2.0 Configuration/CLDC-1.1 VendorID/215";
}else{
agent = "BlackBerry8300/4.2.2Profile/MIDP-2.0 Configuration/CLDC-1.1 VendorID/107UP.Link/6.2.3.15.0";
}
return agent;
}
您可以使用此方法构建 UserAgent
private static String getUserAgent() {
String userAgent = "Blackberry" + DeviceInfo.getDeviceName() + "/" +
DeviceInfo.getSoftwareVersion() + " Profile/" + System.getProperty(
"microedition.profiles" ) + " Configuration/" + System.getProperty(
"microedition.configuration" ) + " VendorID/" +
Branding.getVendorId();
}