【问题标题】:Adobe Air - Detect if connection (i.e. WIFI, 3G, 4G) is active on any deviceAdobe Air - 检测连接(即 WIFI、3G、4G)是否在任何设备上处于活动状态
【发布时间】:2012-09-05 21:39:57
【问题描述】:

我想知道如何在 ActionScript 3 项目中确定任何设备是否连接到 Internet。

我找到了一种方法来确定是否使用Adobe's Native Extension 连接了 iOS 设备,方法是检查活动网络接口的名称是“en0”、“en1”(用于 WIFI 连接)还是“pdp_ip0”、“pdp_ip1”、“pdp_ip2” "(数据连接)来自following stackoverflow page

但是,如果其他设备有互联网连接,我该如何检查它们?

我想我可以通过查看活动的 NetworkInterface 名称是“wifi”还是“mobile”来检查 Android 设备是否已连接——尽管我无法确认这一点。

如何检查其他设备的互联网连接:例如台式机、亚马逊、Fire、Nook、Playbook 等?

【问题讨论】:

    标签: actionscript-3 flash air adobe flash-builder


    【解决方案1】:

    您尝试过 NetworkInfo 类吗?

    就像 Veronique Brossiere 的 AIR for Android 中的 sn-p 一样

    import flash.net.NetworkInfo;
    import flash.net.NetworkInterface;
    var network:NetworkInfo = NetworkInfo.networkInfo;
    for each (var object:NetworkInterface in network.findInterfaces())
    {
        trace(object.name, object.active);
    }
    

    最好的问候

    【讨论】:

    • 是的,我正在使用 NetworkInfo 类,但我不确定如何确定连接到 Internet 的活动网络接口。在关闭 WIFI 的桌面上,我得到了处于活动状态的网络接口,但它们并不指示计算机是否连接到 Internet:即 VMware 网络
    • 如果您只想知道设备是否有互联网连接而不是尝试使用 air.net.URLMonitor
    • URLMonitor 实际上可能适用于我的特定示例。谢谢!但是,我可以预见需要知道设备是通过 WIFI 还是通过 3G/4G 连接的。我如何在许多操作系统中始终如一地做到这一点?我想我可以通过检查上面提到的 iOS 中已知 wifi 和数据连接的 NetworkInterface 名称来覆盖我。我认为在 Android 上要注意的 NetworkInterface 名称是“wifi”和“mobile”。谁能确认这些假设是否正确?其他非 Android/iOS 设备呢?
    • URLMonitor 与 NetworkInterface 的一个缺点是使用 URLMonitor 确定是否存在连接不如使用 NetworkInterface 时那么直接。
    猜你喜欢
    • 2012-04-09
    • 1970-01-01
    • 1970-01-01
    • 2011-11-22
    • 2013-09-16
    • 1970-01-01
    • 2016-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多