public static boolean isMobileDevice(String requestHeader) {
/**
* android : 所有android设备 mac os : iphone ipad windows phone:Nokia等windows系统的手机
*/
// String[] deviceArray = new
// String[]{"android","mac os","windows phone"};
String[] deviceArray = new String[] { "android", "iphone", "ipod", "ipad", "windows phone", "mqqbrowser" };
if (requestHeader == null)
return false;
requestHeader = requestHeader.toLowerCase();
for (int i = 0; i < deviceArray.length; i++) {
if (requestHeader.indexOf(deviceArray[i]) > 0) {
return true;
}
}
return false;
}不太明白indexOf什么时候大于0
1 回答
Caballarii
TA贡献1123条经验 获得超629个赞
requestHeader.indexOf(deviceArray[i])说的是在requestHeader里查找deviceArray[i],如果存在就返回requestHeader中第几个字母开始是deviceArray[i],不存在就返回-1,所以大于0就是存在这个字符串。所以只要requestHeader中有那个数组中的任意一个,这个方法就返回true
添加回答
举报
0/150
提交
取消