0

問題は、Samsung タブレットにあります。デバイスが携帯電話の場合は表示したいが、タブレットでは表示したくない。

デバイス検出器の表示:
- isMobile(): true
- isTablet(): false

これはモジュールからの完全なデータです:

{"raw":{"userAgent":"Mozilla/5.0 (Linux; Android 4.4.2; es-us; SAMSUNG SM-T230NU Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/1.5 Chrome/28.0.1500.94 Safari/537.36","os":{"windows":false,"mac":false,"ios":false,"android":true,"linux":true,"unix":false,"firefox-os":false,"chrome-os":false,"windows-phone":false,"ps4":false,"vita":false,"unknown":false},"browser":{"chrome":true,"firefox":false,"safari":true,"opera":false,"ie":false,"ms-edge":false,"ps4":false,"vita":false,"unknown":false},"device":{"android":true,"ipad":false,"iphone":false,"ipod":false,"blackberry":false,"firefox-os":false,"chrome-book":false,"windows-phone":false,"ps4":false,"vita":false,"unknown":false},"os_version":{"windows-3-11":false,"windows-95":false,"windows-me":false,"windows-98":false,"windows-ce":false,"windows-2000":false,"windows-xp":false,"windows-server-2003":false,"windows-vista":false,"windows-7":false,"windows-8-1":false,"windows-8":false,"windows-10":false,"windows-phone-7-5":false,"windows-phone-8-1":false,"windows-phone-10":false,"windows-nt-4-0":false,"unknown":false}},"os":"android","browser":"chrome","device":"android","os_version":"unknown","browser_version":"28.0.1500.94"}

前もって感謝します。

4

2 に答える 2

0

問題は Android OS を搭載したタブレットにあり、ng-device-detector は Android タブレットと Android フォンで同じ情報を表示します。解決策を探していると、すべてのスマートフォンには userAgent に「Mobile」という文字列がありますが、タブレットにはありません。

すべてのスマートフォン userAgent のリストを次に示します

簡単に言えば、この関数を使用して ng-device-detector "isMobile" 関数を置き換えます。

deviceDetector.isMobile = function(){
    var ua = deviceDetector.raw.userAgent;
    return ua.match(/Mobile/i);
}

ありがとうございます。私の英語で申し訳ありませんが、私はスペイン語を話します。

于 2015-11-04T16:10:18.577 に答える