在開發flash lite的時候
對於不同廠牌的手機辦別非常重要
我相信這也是很多人心中的痛!!
或者只有在這時候我才真的會承認docomo是日本手機的大龍頭==
不過好在也有很多先賢痛過後提供了很不錯的解決方案:
// 最大電波強度を取得
var sigStrengthMax:String;
var carrier:String;
var mark_p:String;
sigStrengthMax = fscommand2("GetMaxSignalLevel");
// 端末名を取得
fscommand2("GetDevice", "devicename");
// 最大電波強度が3であればDoCoMo
if (sigStrengthMax == 3) {
carrier = "docomo";
// 最大電波強度が4で
} else if (sigStrengthMax == 4) {
// 端末名の先頭が「KDDI-」であればau
if (substring(devicename, 0, 5) eq "KDDI-") {
carrier = "au";
// でなければSoftbank
} else {
carrier = "softbank";
}
// 最大電波強度が100であればSoftbank
} else if (sigStrengthMax == 100) {
carrier = "softbank";
// それ以外は不明(PC等)
} else {
carrier = "unknown";
}
如果要利用php讀取資料庫的話
在echo前要加上:
$agent = $_SERVER['HTTP_USER_AGENT'];
mb_internal_encoding("UTF8");
if(ereg("J-PHONE|Vodafone|SoftBank",$agent)){
$agent = "Softbank";
}else if(ereg("DoCoMo",$agent)){
$agent = "Docomo";
}else{
$agent = "AU";
}
if($agent == "Softbank"){
header("Content-type:text/plain; charset=utf-8");
}else{
header("Content-type:text/plain; charset=Shift_JIS");
}