wifi直连

wifi直连(Android)Wifi-Direct

馋奶兔 提交于 2019-12-04 02:27:43
wifi直连也叫做wifi设备点对点连接(peer-peer),不需要连接热点或者网络,需要打开wifi,就可以查找到附近的设备。大概可以分为以下步骤: 1.设置以下权限,并且注意最小sdk=14 2.创建一个广播接收器,通过创建IntentFilter来addAction得到各个特定事件的发生来进行回调. 创建一个新的 BroadcastReceiver 类,用来监听系统的Wi-Fi P2P状态的改变(在 onReceive方法中,添加一个条件来处理上面列出的各种P2P状态的变更。) 最后,在主活动激活时,注册意图过滤器(Intent Filter)和广播接收器;在主活动暂停时把它们注销。最好在onResume()和onPause()方法中完成该操作。 3.初始化得到WifiP2pManager和Channel实例,在onCreate()方法中初始化,如果是在Fragment中,initialize参数用Looper.getMainLooper(), 4.初始化搜索,只初始化了对等点的搜索。discoverPeers()方法启动了搜索线程,并立刻返回。系统通过调用给定的动作监听器的方法来进行初始化,并会在成功初始化对等点进程时通知你。同时,搜索也会持续进行,直到一个连接被初始化,或者一个P2P组形成。 5.获取搜索到设备列表, 获取对等点的列表并进行处理,首先实现

从Android源代码来看WiFi直连

匿名 (未验证) 提交于 2019-12-03 00:37:01
在Android的 设置->网络与互联网->WLAN->WLAN偏好设置->高级->WLAN直连 中可以找到关于Wi-Fi直连的设置,如下: 在参考其它博客时,写出来的代码并不能搜索到Wi-Fi中的其他设备,但是在这设置里面却可以。因此,找来其Android8.0的源代码作为参考,并成功解决问题。 源代码位置: /packages/apps/Settings/src/com/android/settings/wifi/p2p/WifiP2pSettings.java 在线Android8.0 WiFi直连相关源代码 < uses-permission android:name = "android.permission.ACCESS_WIFI_STATE" /> < uses-permission android:name = "android.permission.CHANGE_WIFI_STATE" /> < uses-permission android:name = "android.permission.ACCESS_NETWORK_STATE" /> < uses-permission android:name = "android.permission.CHANGE_NETWORK_STATE" /> < uses-permission android:name =

WIFI-Direct(Wifi直连)、AirPlay、DLAN、Miracast功能介绍

风流意气都作罢 提交于 2019-12-01 08:59:24
不知道大家对无线同屏技术有多少了解,当这种技术普及的时候,我想我们的工作与生活又会方便很多吧!下面是目前三种主流同屏技术的介绍: 目前这种将终端信号经由WiFi传输到电视、电视盒的技术有三种:DLNA、AirPlay、Miracast。 一、AirPlay AirPlay 是苹果开发的一种无线技术,可以通过WiFi将iPhone 、iPad、iPodtouch 等iOS 设备上的包括图片、音频、视频通过无线的方式传输到支持AirPlay 设备。售价99美元的Apple TV就具备这样的功能,现在一些传统的家庭影院和HIFI如马兰士和天龙的新品功放和网络播放器已经支持AirPlay功能。。 AirPlay具备与DLNA所没有的镜像功能,这一功能叫AirPlay镜像,可将iPhone 或iPad 上的画面无线传输到电视上,也就是说你设备显示的是什么,电视屏幕显示就就是什么,而不仅限于图片和视频。你可以拿着iPad 来当做方向盘,然后看着大屏玩游戏。 另外AirPlay镜像最牛地方是它可以实现双屏游戏,让你的游戏有更多的交互。比如,电视里显示的是游戏画面,而iPad上显示的是比赛的路线图。            目前,苹果的AirPlay更多的只适用于认证过的苹果设备,目前支持这一技术的主要是苹果自己的设备包括了iPad、iPhone、Apple TV等