Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jmdns.jar不适用于android 4.0或更高版本_Android_Service_Bonjour_Zeroconf_Jmdns - Fatal编程技术网

jmdns.jar不适用于android 4.0或更高版本

jmdns.jar不适用于android 4.0或更高版本,android,service,bonjour,zeroconf,jmdns,Android,Service,Bonjour,Zeroconf,Jmdns,jMdns是一个很好的java库,可以为您的Android应用程序提供功能 我在一个项目中成功地使用了它,直到Android 4.0冰激凌三明治又名ICS,一旦Android 4.0设备开始被频繁使用,我就面临着应用程序无法工作的问题 我之前在安卓4.0中测试过这个应用程序,它向我显示了发现设备的列表,但在安卓4.0或更高版本中它什么也没显示 我已经在4.1上测试了此演示“”,但它不起作用 我已经写了以下代码的基础上的建议中提到 private android.net.wifi.WifiMana

jMdns是一个很好的java库,可以为您的Android应用程序提供功能

我在一个项目中成功地使用了它,直到
Android 4.0冰激凌三明治又名ICS
,一旦Android 4.0设备开始被频繁使用,我就面临着应用程序无法工作的问题

我之前在安卓4.0中测试过这个应用程序,它向我显示了发现设备的列表,但在安卓4.0或更高版本中它什么也没显示

我已经在4.1上测试了此演示“”,但它不起作用

我已经写了以下代码的基础上的建议中提到

private android.net.wifi.WifiManager.multicast锁;
私有android.os.Handler=新的android.os.Handler();
私有JmDNS JmDNS=null;
公共WifiManager-wifi;
私有无效设置()
{
WifiManager wifiMgr=(WifiManager)getSystemService(WIFI_服务);
WifiInfo WifiInfo=wifiMgr.getConnectionInfo();
int ip=wifiInfo.getIpAddress();
字符串ipAddress=格式化程序。formatIpAddress(ip);
试一试{
创建(_bindingAddress);
ServiceInfo[]infos=jmdns.list(“\u afpovertcp.\u tcp.local”);
for(int i=0;i

您的建议很有价值

我的简单猜测是,它正在尝试在主线程上下载数据。这在
冰淇淋三明治
和以后的版本中是不可能实现的。当logcat在手机上运行时,尝试查看它,如果是这样,它应该清楚地显示一条警告/错误消息。

您可以让它通过主线程运行

        if (android.os.Build.VERSION.SDK_INT > 9) {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy);
    }
        if (android.os.Build.VERSION.SDK_INT > 9) {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy);
    }