Java 多播&;即时应用
通常我可以使用或通过Wi-Fi网络查找服务器Java 多播&;即时应用,java,android,permissions,multicast,android-instant-apps,Java,Android,Permissions,Multicast,Android Instant Apps,通常我可以使用或通过Wi-Fi网络查找服务器 try (MulticastSocket multicastSocket = new MulticastSocket(Network.DISCOVERY_PORT)) { multicastSocket.setNetworkInterface(Network.getWifiInterface()); multicastSocket.setSoTimeout((int) (3 * DateUtils.SECOND_IN_MILLIS))
try (MulticastSocket multicastSocket = new MulticastSocket(Network.DISCOVERY_PORT)) {
multicastSocket.setNetworkInterface(Network.getWifiInterface());
multicastSocket.setSoTimeout((int) (3 * DateUtils.SECOND_IN_MILLIS));
multicastSocket.joinGroup(InetAddress.getByName(Network.DISCOVERY_IP));
...
}
它工作正常,但是我不能在模块内使用这些方法,因为它需要不允许的访问\u WIFI\u状态权限
知道即时应用程序允许访问网络状态和互联网权限,有没有办法找到本地服务器IP以避免此错误
java.net.BindException: bind failed: EACCES (Permission denied)
这些措施包括:
你有没有试过其他的方法,比如从?但是,如果他们都使用了不允许的权限,那么就不可能了。谢谢你的帮助。不幸的是,这些方法不适用于IPv6地址。
ACCESS_COARSE_LOCATION
ACCESS_FINE_LOCATION
ACCESS_NETWORK_STATE
BILLING – Deprecated as of Play Billing Library 1.0.
CAMERA
INSTANT_APP_FOREGROUND_SERVICE – Only in Android 8.0 (API level 26) and higher.
INTERNET
READ_PHONE_NUMBERS – Only in Android 8.0 (API level 26) and higher.
RECORD_AUDIO
VIBRATE
WAKE_LOCK