我在两个设备(运行Android API 23的联想K50-T5和运行API 26的One Plus 3T)上运行相同的代码。
我在WifiP2pManager上调用了DiscoverPeers,并且在WifiP2pManager.PeerListListener实例中也重写了onPeersAvailable。
我希望这两部手机都能找到对方,但是当在on Plus上调用onPeersAvailable时,WifiP2pDeviceList为空,而在Lenovo上,WifiP2pDeviceList成功包含了One Plus手机。
我在这里唯一的结论是,联想手机上缺少某些东西,或者WifiP2P功能不可靠,无法完全正常工作。我想知道是否有人经历过类似的经历,或者是否知道发生这种情况的可能原因?
答案 0 :(得分:0)
问题是未将一个android.permission.ACCESS_COARSE_LOCATION授予该应用。
整理出许可后,两部手机便能够成功找到对方。