【问题标题】:preventing mobile detection using flash content防止使用 Flash 内容进行移动检测
【发布时间】:2013-04-04 23:36:00
【问题描述】:

有些网站强制执行向桌面和移动用户显示不同内容的政策。除了使用适当的 UA 字符串外,网络上也有 .flv 文件!所以他们以某种方式检测到移动设备并且不显示桌面内容。

分析这种 flash 行为对于我们的一个移动应用项目很重要,因此出于安全原因,软件中必须有一个隐身模式,以保护移动用户在访问时不被识别为移动用户我们合作伙伴公司的某些网站。

如何从客户端浏览器控制此行为?

非常感谢任何帮助!

【问题讨论】:

  • 查看客户端浏览器发送的标头。通常用户代理字符串用于识别浏览器(发送假用户代理字符串非常简单)。 Firefox 移动版有扩展,可以让你这样做

标签: flash actionscript flash-builder


【解决方案1】:

大多数检查(除了 UA 字符串)是使用 css 媒体查询或 javascript 完成的。除非您可以创建自定义浏览器,否则这些将很难控制(在 Android 上可能,在 iOS 上更难/不可能)。

检查您是否在打电话的最明显检查:

  • 用户代理字符串(您自己提到的)
  • 屏幕大小(使用 javascript)
  • css 媒体查询

当然还有其他原因不向访问者显示 Flash,使用检测:

  • 支持的媒体(视频标签)
  • 使用 SWFObject 或类似的东西(基于 JavaScript)的特定闪存测试

如果您真的不希望人们知道您正在打电话,请使用远程桌面连接到“真实”计算机并使用远程系统上的浏览器。 RDP for windows,VNC for windows/osx/more,或者像 TeamViewer 这样的专用系统。大多数这些远程连接系统都有可用的应用程序。

【讨论】:

    【解决方案2】:

    这真的取决于他们在做什么。移动设备检测可以只是检查屏幕大小或用户代理的问题,但也可以是任何数量的其他事情。

    要准确了解您需要做什么,请通过swfscanASDec 之类的内容运行该swf 文件。

    如果他们使用闪存,我想他们所做的不仅仅是一个基本的用户代理字符串。他们可能正在研究无法轻松调整的设备功能。

    使用闪光灯进行检测很奇怪——因为它根本无法在 iPhone 上工作。

    【讨论】:

      【解决方案3】:

      如果您需要在 flash 中查看浏览器的版本,您可以使用this 提示。如果您希望您的移动浏览器被识别为桌面浏览器,您必须更改用户代理设置。这是example 在 Opera Mobile 中的操作方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-10-10
        • 2021-12-03
        • 2011-07-16
        • 1970-01-01
        • 2011-07-01
        • 1970-01-01
        • 2020-04-15
        相关资源
        最近更新 更多