Articles of wifi direct

Android Wi-Fi直连网络

我正在Android上开发一个应用程序,我正在搜索范围内的所有同行,然后连接所有这些应用程序,启动发现的设备成为组所有者,所有其他人成为客户端,我已完成所有连接事务但是现在我想让小组所有者将消息发送给所有连接的同行,如何实现这一点,请告诉我点对点通信的方法是什么,Android中的p2p也使用IP发送和接收数据? 谢谢你关心塔利class。

WiFiDirect discoverServices因错误3而失败(NO_SERVICE_REQUESTS)

我正在使用WiFi P2P进行网络服务发现 ,我正按照开发人员指南中的说明进行操作。 这是我的服务类中的相关代码: public void onCreate() { manager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE); channel = manager.initialize(this, getMainLooper(), null); registerP2pService(); lookForServices(); } private void registerP2pService() { WifiP2pDnsSdServiceInfo serviceInfo = WifiP2pDnsSdServiceInfo.newInstance(“_service.name”, “_presence._tcp”, new HashMap()); manager.addLocalService(channel, serviceInfo, new WifiP2pManager.ActionListener() { @Override public void onSuccess() { Log.i(“tag”, “REGISTERED SERVICE”); } @Override public void onFailure(int arg0) { Log.e(“tag”, “FAILED to register […]

Wi-Fi直接工作的距离范围

我正在开发一个基于WiFi Direct技术(P2P)的Android应用程序,所以我真的需要知道多少米是Android WiFi直接性能的范围。基于Android API指南: 当每个设备支持Wi-Fi P2P时,您可以发现并连接到其他设备,然后通过比蓝牙连接更长的距离通过快速连接进行通信。 但知道这对我来说还不够。 因为我的目标我需要数字! 我指的是Wi-Fi P2P工作的一系列距离。

我可以通过WiFi Direct将Windows PC连接到Android手机

我想使用WiFi Direct将文件从PC发送到Android。

Wi-Fi Direct和“普通”Wi-Fi – 不同的MAC?

我目前正在尝试通过Wi-Fi Direct连接两台知道对方MAC地址的手机,并偶然发现以下问题:我收到的MAC地址 WifiManager wifiMan = (WifiManager) this .getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInf = wifiMan.getConnectionInfo(); MAC_ADDRESS = wifiInf.getMacAddress(); 与发现和请求对等体时从WifiP2pManager收到的略有不同。 示例: a0:xx:xx:…变成a2:xx:xx….有谁知道为什么? 我没有find任何方法来获取“Wi-Fi Direct MAC地址”,因为我认为MAC地址应该是唯一的,并且它是处理两者的相同Wi-Fi模块(正常的Wi-Fi和P2P / Direct) 。 这很奇怪..我该怎么办? 对于我所拥有的两个设备(Galaxy Nexus),它总是只有前两个字符在MAC地址上有所不同 – 我应该简单地丢弃它们吗? 遇到问题的概率(两个只在MAC地址的第一部分不同的设备)是否太高? 谢谢。

以编程方式从android转换为miracast接收器的步骤

我正在尝试编写一个应用程序,通过miracast开始将屏幕从Android手机投射到电视上。 我正在使用HDMI加密狗,因为有问题的电视本身并不支持miracast。 我一直在尝试这里的代码,但它需要一个我遵循这些步骤的应用程序ID。 我的问题是,说明似乎表明我需要注册miracast加密狗,以便它与未发布的’debug’应用程序通信。 但是,仅提及Google Cast设备,这与miracast的协议不同。 我还需要注册加密狗吗? 是否有更简单的方式通过miracast以编程方式投射到设备? 要求是没有用户交互,所以我不能只显示一个强制转换按钮。 我正在使用Android 5.1,如果这是相关的。 编辑 :经过进一步的研究,我意识到Google Cast使用了与Miracast完全不同的协议,因此所有关于注册加密狗的讨论都是无关紧要的。 Android中的Miracast根本不需要注册。 问题是隐藏了API,请参阅下面的答案以获取详细信息。

Android Wifi直接服务发现

我正在尝试实现一个简单的Android应用程序,它在一台设备上广播WifiP2p bonjour服务,并让第二台设备发现并连接到它。 我几乎遵循了这里的教程。 我有一个有效的Channel对象,一个DnsSdServiceResponseListener和一个DnsSdTxtRecordListener ,并通过这个调用设置它们: mManager.setDnsSdResponseListeners(channel, servListener, txtListener); 截至目前,两位听众只是吐出一些调试信息以保持简单。 问题是我的DnsSdServiceResponseListener从未被调用,但DnsSdTxtRecordListener 确实被调用,并且传入的所有参数看起来都是合法的。 如何调用一个而不是另一个? 我正在测试使用两个实际设备,都运行android 4.2.2。 谢谢!

如何使用Wi-Fi Direct在Android设备之间传输文件?

我需要使用Wi-Fi Direct在Android设备之间传输文件。 请提供任何示例代码。 我搜索了很多,但我没有find任何双向通信的代码。

是否有可能以编程方式从Android中删除记住的Wifi Direct组?

我们已经注意到,当设备记住Wifi Direct组时,有时会在以后重新连接设备时导致问题。 删除记住的组似乎解决了这个问题。 如果我们可以在应用程序中执行此操作会很好,这可能吗? 简单地调用WifiP2pManager.removeGroup()不会阻止设备记住它们。

在Android和Raspberry Pi 3 Linux之间建立Wifi-Direct连接

我想使用Wifi-Direct连接两台设备。 一个是RaspBerry PI 3(与Raspbian Jessie合作),另一个是Android智能手机。 Raspberry作为服务器,Android作为客户端。 我决定在Raspbian中使用wpa_supplicant和Android的WifiDirect示例应用程序: https://developer.android.com/guide/topics/connectivity/wifip2p.html 我的wpa_supplicant.conf包含: ctrl_interface=/var/run/wpa_supplicant update_config=1 device_name=raspberry device_type=1-0050F204-1 driver_param=use_p2p_group_interface=1 p2p_go_intent=1 p2p_go_ht40=1 我正在按照以下步骤操作: 1)在树莓派中: sudo wpa_supplicant -B -iwlan0 -Dnl80211 -c/etc/wpa_supplicant.conf sudo wpa_cli -iwlan0 p2p_group_add ifconfig p2p-wlan0-0 192.168.1.2 wpa_cli -ip2p-wlan0-0 wps_pbc 2)然后在Android应用程序中,我可以看到树莓作为同行,但我得到连接失败。 我尝试使用设置应用程序( Wifi =>高级=> Wifi Direct ),我也可以看到树莓作为同行,但不同之处在于,当我尝试建立连接时,应用程序请求我输入PIN码,我能够如果我在树莓中引入p2p_pin返回的引脚,则建立连接。 我试图了解这种行为: 为什么要求我提供个人识别码? 这就是为什么我无法通过WifiDirect示例应用程序建立连接的原因? 我在这里遗漏了什么? 谢谢。