6

有没有人想出一个好方法来检测客户端的浏览器是否是三星手机。我专门在寻找三星 S3 和 Note 2,但如果它能够捕获 S2 和 Note 1 或其他三星手机,我可以接受。面向未来的东西(即可能与 S4 / Note3 一起工作显然是理想的)。

似乎没有像 iPhone 那样直接的方式来做到这一点,但是对于庞大的 S3 和 Note2 用户群,我们希望为这些设备进行定制。

我知道并非所有 S3 都具有相同的用户代理(http://stackoverflow.com/questions/11282944/what-is-the-samsung-s3-user-agent)

如果有人将手机设置为 PC 版本,那么我不希望能抓住这些(http://stackoverflow.com/questions/11597940/android-phone-browser-detection)

我意识到这可能是一个没有好的解决方案的问题。

4

2 回答 2

12

检测三星手机或平板电脑默认浏览器

if(navigator.userAgent.match(/SAMSUNG|SGH-[I|N|T]|GT-[I|P|N]|SM-[N|P|T|Z|G]|SHV-E|SCH-[I|J|R|S]|SPH-L/i))  {
    alert("it's Samsung default browser");
    // your code for Samsung goes here
}

此正则表达式涵盖了几乎所有三星移动设备,除了Samsung Galaxy Nexus,请验证。

于 2015-03-24T09:52:27.647 回答
1

显然很难仅检测到三星手机,但如果您在此处查看,并在此处查看您的问题中的用户代理问题,您会注意到用户代理取决于手机型号。

仅限于GS3,有很多型号,例如GT-I9300[T]、SHV-E210K/L/S、SGH-T999[v]、SGH-I747[m]、SGH-N064(SC- 06D), SCH-R530, SCH-I535, SPH-L710, GT-I9305[T], GT-I9308

我不是网络开发人员,我不确定您将如何检测用户代理的特定部分,但如果您可以针对 GS3 的每个型号调整您的代码,我假设这会很好。Note 2 的型号也是如此,当它们出现时,GS4/Note 3 也是如此。

于 2012-12-05T05:58:41.920 回答