標籤:
function GetDeviceType(var OsName, BrowserName: string; var IsMobileDevice: Boolean): string;var I: Integer; BrowserInfo: string; OSTypes, BrowserTypes: TStringList;begin Result := ‘‘; BrowserName := ‘Unknown‘; OsName := ‘Unknown‘; IsMobileDevice := False; BrowserInfo := UniApplication.UniSession.RequestHeader[‘User-Agent‘]; OSTypes := TStringList.Create; BrowserTypes := TStringList.Create; try OSTypes.Add(‘Ipod‘); OSTypes.Add(‘Ipad‘); OSTypes.Add(‘Iphone‘); OSTypes.Add(‘J2ME/MIDP‘); OSTypes.Add(‘Palm‘); OSTypes.Add(‘BlackBerry‘); OSTypes.Add(‘PlayStation‘); OSTypes.Add(‘Symbian‘); OSTypes.Add(‘Windows Mobile‘); OSTypes.Add(‘Windows CE‘); OSTypes.Add(‘Windows Phone‘); OSTypes.Add(‘PPC‘); OSTypes.Add(‘Android‘); OSTypes.Add(‘Mac‘); OSTypes.Add(‘Windows‘); OSTypes.Add(‘Linux‘); OSTypes.Add(‘Unknown‘); //微軟IE BrowserTypes.Add(‘MSIE 5.5‘); BrowserTypes.Add(‘MSIE 6.5‘); BrowserTypes.Add(‘MSIE 7.0‘); BrowserTypes.Add(‘MSIE 8.0‘); BrowserTypes.Add(‘MSIE 9.0‘); BrowserTypes.Add(‘MSIE 10.0‘); BrowserTypes.Add(‘MSIE 11.0‘); BrowserTypes.Add(‘MSIE‘); BrowserTypes.Add(‘Netscape‘); //網景 BrowserTypes.Add(‘Firefox‘); //Firefox BrowserTypes.Add(‘Chrome‘); //Google BrowserTypes.Add(‘Safari‘); BrowserTypes.Add(‘Opera‘); for I := 0 to BrowserTypes.Count - 1 do begin if Pos(Uppcase(BrowserTypes[I]), Uppcase(BrowserInfo)) <> 0 then begin BrowserName := BrowserTypes[I]; Break; end; end; for I := 0 to OSTypes.Count - 1 do begin if Pos(Uppcase(OSTypes[I]), Uppcase(BrowserInfo)) <> 0 then begin OsName := OSTypes[I]; Break; end; end; IsMobileDevice := OSTypes.IndexOf(OsName) <= OSTypes.IndexOf(‘Android‘); finally FreeAndNil(OSTypes); FreeAndNil(BrowserTypes); end;end; //使用方法 GetDeviceType(OsName, BrowserName, IsMobileDevice); ShowMessage(‘作業系統類型:‘ + OsName); ShowMessage(‘瀏覽器核心:‘ + BrowserName); if IsMobileDevice then ShowMessage(‘行動裝置‘) else ShowMessage(‘非行動裝置‘); //顯示IE瀏覽器使用 if Pos(‘MSIE‘,BrowserName) <> 0 Then begin ShowMessage(‘本系統暫不支援微軟IE核心瀏覽器,推薦使用基於GoogleChrome核心的瀏覽器!‘); Close; end;
unigui判斷瀏覽器核心、作業系統以及是否移動終端函數