问题标签 [android-wifi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
74819 浏览

android - Wifi Connect-Disconnect 监听器

如果 wifi 连接/断开连接,我的班级必须实现哪个侦听器才能自动检查代码?

我可以手动检查 wifi 连接/断开连接,但每次我需要从 android 设置连接/断开 WIFI,然后运行我的程序以获得结果。

我当前的代码很简单:

0 投票
2 回答
2085 浏览

android - Android wifi.getScanResults() 的旧结果

在我的 Droid 2 上,wifi.getScanResults() 似乎会在短时间内返回旧值。

这意味着当我在家时,wifi.getScanResults() 将显示我的家庭网络。如果我在几英里外的街道上行驶,wifi.getScanResults() 仍然会在前 1 或 2 次尝试中显示我的家庭网络。在第三次尝试时,我的家庭网络消失了。

问题:有没有办法只获取最新的 wifi.getScanResults()?

可能的选项:

  • 如果 ScanResult 的 .level 最小,则假定它超出范围。

  • 使用未记录的 API 以某种方式清除 ScanResults 。

我有一些这样的代码:

...

0 投票
13 回答
120154 浏览

android - Android以编程方式打开/关闭WiFi热点

是否有 API 以编程方式打开/关闭 Android 上的 WiFi 热点?

我应该调用什么方法来打开/关闭它?

更新:有这个选项可以启用 HotSpot,只需打开/关闭 WiFi,但这对我来说不是一个好的解决方案。

0 投票
1 回答
300 浏览

android - 安卓中的IPCU

我正在寻找我的手机配置实用程序,如 android 中的工具。用于配置文件。我知道使用 wificonfiguration 类通过代码配置 wifi 是可能的。以及通过编写意图接收器在设备启动后配置 wifi。

但我正在寻找在 wifi 设置代码中设置 wifi,例如在 iphone 的 IPCU 中。一旦设置不需要使用 wificonfiguration 类编写任何配置代码。

0 投票
1 回答
440 浏览

java - Android WifiManager 扫描结果在姜饼后给出不一致的数据?

我有一个 android 应用程序,可以持续扫描可用的 wifi 接入点的信号强度。我正在使用 WifiManager 来做到这一点。

直到一周前我们将手机升级为姜饼时,这一直运行良好。现在似乎在扫描每个接入点之前触发了“SCAN_RESULTS_AVAILABLE_ACTION”。在下一次扫描中总会出现一些缺失,而另一些则再次缺失。

这是新的 android 版本中的某种错误,还是有某种方法可以让每个接入点都在范围内,而不是每次只有几个不同的接入点?

顺便说一句,这发生在三星 Galaxy s1&s2 和 acer android 平板电脑上,所以它不仅仅是设备

谢谢你能给我们的任何帮助

0 投票
3 回答
5721 浏览

android - 热点/网络共享模式下 Android 上的多播支持

我有一个原型 Android 应用程序正在侦听多播数据包以“发现”客户端进行通信。套接字设置与此类似:

当所有设备都通过 WiFi 连接时,这非常有效。我想通过手机充当便携式热点来支持这一点。但是,虽然我的所有设备似乎都正确连接到热点,但我不再接收多播数据。我想知道是否存在不允许在热点模式下进行此类通信的限制,或者是否需要任何其他网络配置才能启用此功能?我已经在几个运行 Gingerbread 和 Froyo 的不同设备上尝试了这个,但没有运气。

0 投票
2 回答
9162 浏览

android - 从android中的wifi热点获取IP

我想获取 android 设备通过 wifi 连接的 wifi 热点的 IP(从另一台计算机),而不是 android 的 IP 本地。我在真实设备中运行应用程序。我可以扫描所有 wifi 并获取它们的名称。

当然,我可以使用以下代码获取本地 IP:

例如,我可以看到android设备的IP本地是192.168.2.101,但是如何获取wifi热点的IP是192.168.2.1。谢谢!

0 投票
3 回答
11459 浏览

android - 连接到 WiFi 接入点时未收到 WIFI_STATE_CHANGED_ACTION 意图?

我的应用程序的部分功能是扫描并显示 WiFi 接入点列表,然后连接到用户选择的接入点。我有这个功能工作。现在,我还希望在连接“通过”时得到通知。这应该很简单,但我发现自己绊倒了。

我已经阅读了 SO 这里的各种帖子,它们都提到注册WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTIONor WifiManager.WIFI_STATE_CHANGED_ACTION。但是,这些都不适合我。任何人都可以在此代码中发现任何错误吗?(我省略了进行扫描的部分)

预期行为:一旦连接成功(即,当我在通知栏上看到“已连接”图标时),应该会收到广播并且应该看到 toast。

观察到的行为:当应用程序第一次启动时接收到广播,每当我切换回它时(即,每当onResume()被调用;或者我怀疑,每当我注册意图时)

如果我取消注释 WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION 的代码,我根本看不到正在接收广播。

注意:我知道连接成功,因为我在 Android 的 wifi 设置屏幕中看到了状态。

0 投票
2 回答
127 浏览

java - Android异步静态类?

这是几个问题合而为一的问题。基本上我有一个带有三个选项卡的选项卡式应用程序。每个选项卡都需要访问 Web 服务和 wifi API。我想通过为所有这些共享功能创建两个静态包装类来简化这一点,以便所有三个活动都可以使用相同的静态类。

我在 android/java 中相当不熟练,所以我在这里寻找一些指针。

例如,这是我的 Wifi 类,它只是注册侦听器并在收到它们时将扫描结果发布给它们。由订阅者决定是否要关注它们。

这是有效的吗?还是我不知道 android 应用程序的生命周期?我的方式有什么陷阱吗?

此外,如果 WifiManagerActivity 在单独的线程上,它如何处理调用需要在另一个线程上使用变量的方法?在 C# 中,我会使用调度程序来调用它,但使用 java/android??

总之:

1) 我目前的计划有什么问题或建议吗?
2)我如何从一个线程调用一个方法并让它改变属于另一个线程的变量?

谢谢!

0 投票
1 回答
998 浏览

android - 在 Android 中显式管理 WiFi 功耗

背景

我正在开发一个在 Android 手机上运行的研究应用程序。简而言之,只要手机处于开机状态,应用程序就会运行,并定期从手机上的许多组件和传感器获取信息。该应用程序是尽可能少地打扰用户。话虽如此,它消耗的电池太快了,迫使用户每天都充电。这根本行不通。

为了弄清楚如何改善这种情况,一位也在开发该应用程序的同事让该应用程序运行了很长时间,并注意到最大的电池消耗是 WiFi。我目前的想法是在不使用 WiFi 时手动关闭它以节省电量。AFAIK,Android 使用 PSM for WiFi 来实现这一点,但这似乎还不够。

问题

有没有办法“提升”Android 的 PSM?或者,如果没有这个问题所暗示的那样,有什么方法可以安全地打开和关闭 WiFi 而不会对用户产生不利影响?即,有没有办法判断哪些应用程序正在使用 WiFi,并在没有应用程序时将其关闭?标准应用程序(例如 Web 浏览器和电子邮件客户端)是否使用WiFi 锁来防止 WiFi 在工作时被关闭?

非常感谢任何关于从哪里开始解决这个问题的建议。非常欢迎您提供有关 Android 的 PSM 工作原理、其生效需要多长时间或与问题相关的任何信息的信息。

谢谢你的时间!