2016-09-24 41 views
0

我與Web應用程序(的iOS/Android的)可以檢測到Web應用程序或移動瀏覽器中的JavaScript

基本上,我的應用程序看起來工作好像

  • 基本上它只是網頁
  • 應用把它包與WebView
  • 因此,從技術上講,用戶可以通過手機瀏覽器訪問該頁面(如Safari,Chrome等PC甚至是PC Web瀏覽器)和移動應用程序

我想要做的就是檢測用戶的請求是手機應用程序還是手機瀏覽器。(使用javascript)

這是可能嗎? 如果是的話,推薦的方法(我喜歡原生javascript,因爲項目是商業)

謝謝。

P.S.我不需要使用navigator.userAgent進行設備檢測,此作業的目的是檢測移動瀏覽器或移動應用程序,而不是用戶使用哪個設備。

回答

0

您可以爲您的應用程序的WebView添加自定義用戶代理字符串,這樣就可以區分的WebView從JS 爲Android可以使用

myWebView.getSettings().setUserAgentString(<your custom user agent string>); 

最好是多餘的字符串附加到實際用戶代理字符串

myWebView.getSettings.getSettings().setUserAgentString(myWebView.getSettings().getUserAgentString() + <your custom user agent string>); 

您可以檢查用戶代理字符串是否包含來自JavaScript的自定義額外字符串。

+0

感謝Jobin。但是,我沒有權限訪問移動代碼。有沒有什麼辦法可以用原生javascript來實現這個功能?(我只能修改代碼瀏覽器端) –

+1

沒有其他方法可以用原生javascript來區分哪個是移動應用程序或移動瀏覽器。所以當通話來自移動應用時,我收到了額外的參數。問題解決了,但我對此並不滿意(感覺有些不自然) –

相關問題