GVKun编程网logo

Android java.net.UnknownHostException:无法解析主机(策略问题)(无法解析java.io.objectinputstream)

24

本文将介绍Androidjava.net.UnknownHostException:无法解析主机的详细情况,特别是关于策略问题的相关信息。我们将通过案例分析、数据研究等多种方式,帮助您更全面地了解这个

本文将介绍Android java.net.UnknownHostException:无法解析主机的详细情况,特别是关于策略问题的相关信息。我们将通过案例分析、数据研究等多种方式,帮助您更全面地了解这个主题,同时也将涉及一些关于android -------- java.net.UnknownServiceException、android --------System.err: java.net.UnknownServiceException: CLEARTEXT .....、Android – http连接java.net.UnknownHostException错误:、android – java.net.UnknownHostException连接openfire xmpp服务器的知识。

本文目录一览:

Android java.net.UnknownHostException:无法解析主机(策略问题)(无法解析java.io.objectinputstream)

Android java.net.UnknownHostException:无法解析主机(策略问题)(无法解析java.io.objectinputstream)

我有使用后台进程定期(例如每小时)连接到网络上的内容源以检查更新内容的android代码。当新用户下载该应用并首次运行时,在这种首次运行情况下,(目前看来,这似乎只是一个“似乎”),因为我们服务器的DNS尚未在设备上缓存,最初的一系列连接因可怕的UnknownHostException失败:主机未解析当然,应用程序稍后再试,并且(再次,“看起来像”)一切正常—也许是因为OS有时间来实际解决该问题。地址。

因此,我的问题是:(1)其他Android开发人员是否也在部署的应用程序中也看到了这种现象?第一次,一系列“主机未解决”问题在以后解决。(2)有没有人说过更好的“预热DNS”策略,以便可以进行第一个真正的连接?还是在遇到此异常时仅重试一些退避循环?我正在考虑有一个单独的线程尝试从我们的服务器中获取一个小的文本文件,并使其循环直到获得它为止,并且可能(不确定这部分)阻止其他传出网络连接,直到成功为止。

无论如何,我已经阅读了Stack Overflow上各种类似措词的问题的大部分答案,并向所有人保证

<uses-permission android:name="android.permission.INTERNET" />

在我的清单文件中设置:)

答案1

小编典典

我在使用HttpUrlConnection时遇到了这种现象。我使用的是简单的解决方法-我在使用任何网址之前都会执行以下代码。

    try {      InetAddress i = InetAddress.getByName(URLName);    } catch (UnknownHostException e1) {      e1.printStackTrace();    }// ... actually using URLName

我第一次在这里获得UnknownHostException,但URL的下一次使用成功(DNS服务器返回正确的IP地址,我可以连接到服务器)。

android -------- java.net.UnknownServiceException

android -------- java.net.UnknownServiceException

 最近升级了Android的API版本时 ,导致我的网络请求失败了,

出现了这个错误 java.net.UnknownServiceException,

 

这个错误,我在网上查到这个主要是由于,我们的OkHttp3会默认使用密文传输,而我们的代码中使用Http协议,也就是使用明文传输,所以OkHttp3会主动的报错,然后阻止线程的运行。所以我们现在就是要修改配置文件,使OkHttp3允许使用明文传输,或者我们直接使用Https协议。

 

解决方法:

在 res 下新建一个 xml 目录,然后创建一个名为:network_security_config.xml 文件 

 

该文件内容如下:

 

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>

    <base-config cleartextTrafficPermitted="true" />

</network-security-config>

然后在 AndroidManifest.xml application 标签内应用上面的xml配置:
<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:networkSecurityConfig="@xml/network_security_config"
        android:theme="@style/AppTheme"
        >
</application>

 

这样就欧克了

官方文档: https://developer.android.com/training/articles/security-config

android --------System.err: java.net.UnknownServiceException: CLEARTEXT .....

android --------System.err: java.net.UnknownServiceException: CLEARTEXT .....

1,当调用远程接口进行网络通信时,报如下错误:

W/System.err: java.net.UnknownServiceException: 
CLEARTEXT communication to 10.240.35.113 not permitted by network security policy

这是因为新的保护机制对于仅使用安全通信的应用,Android 6.0 Marshmallow(API 级别 23)引入了两种机制来解决回退到明文通信的问题:(1) 在生产/安装库中,禁止明文通信,以及 (2) 在开发/QA 期间,在遇到任何非 TLS/SSL 通信时,予以记录或者触发崩溃。下文将更详细地介绍这两种机制。

2,解决方法:

如果一定要使用明文通信的话,则可以打开AndroidManifest.xml 文件,在 application 元素中添加:

android:usesCleartextTraffic=”true” 

备注:

1)为了安全,不建议上面的使用明文的通信方式,不过上面的这种方法可以作为一种临时的通信策略

2)如果声明不使用明文通信,则可以在application元素中添加:

android:usesCleartextTraffic=”false” 
 

此声明指示该应用不使用明文网络通信,并使 Android Marshmallow 的平台网络堆栈禁止该应用中的明文通信。例如,如果您的应用意外尝试通过 HTTP 明文请求登录用户,该请求将被阻止,该用户的身份和密码信息不会泄露到网络上。

另一种方式请看博客

 

android -------- java.net.UnknownServiceException

Android – http连接java.net.UnknownHostException错误:

Android – http连接java.net.UnknownHostException错误:

我试图连接 mysql与 android但它给我一个错误.
http连接 java.net.UnkNownHostException出错:

以下是我的代码:

HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://www.pherma.net84.net/admin/getAllPeopleBornAfter.PHP");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
httpentity entity = response.getEntity();

但URL工作正常.请复制n粘贴网址.

解决方法

我忘记将清单中的网络权限.现在工作正常.

android – java.net.UnknownHostException连接openfire xmpp服务器

android – java.net.UnknownHostException连接openfire xmpp服务器

我是聊天应用程序的初学者.我开始研究聊天应用程序
我正在尝试将android虚拟设备连接到openfire xmpp服务器,但无法连接,我收到java.net.UnkNownHostException
任何人都可以帮助我连接我的Android设备顶级xmpp服务器

我使用的代码是:

ConnectionConfiguration config = new ConnectionConfiguration("pc" ,5222);
    /*ConnectionConfiguration config = 
        new ConnectionConfiguration("192.168.0.1",5222,"pc");*/
    /*config.setCompressionEnabled(true);
       config.setSASLAuthenticationEnabled(true); */
    config.setSecurityMode(SecurityMode.disabled);
    config.setDebuggerEnabled(true);
    config.setSASLAuthenticationEnabled(false);
       XMPPConnection connection = new XMPPConnection(config);   
       Log.i("", "before connecting");
       connection.connect();
       Log.i("", "after connecting");
       //connection.login("test", "test");
    if(connection.isConnected()){
     System.out.println("connection built");
     connection.disconnect();
    }

在清单中:

<uses-permission android:name="android.permission.INTERNET"/>

和Logcat我得到的是java.net.UnkNownHostException.

解决方法:

我们遇到了一个解决方案,@ devil和I.我们只是使用他服务器的IPv4地址.

ConnectionConfiguration config = 
new ConnectionConfiguration("192.168.1.2",5222,"pc");

今天关于Android java.net.UnknownHostException:无法解析主机策略问题的介绍到此结束,谢谢您的阅读,有关android -------- java.net.UnknownServiceException、android --------System.err: java.net.UnknownServiceException: CLEARTEXT .....、Android – http连接java.net.UnknownHostException错误:、android – java.net.UnknownHostException连接openfire xmpp服务器等更多相关知识的信息可以在本站进行查询。

本文标签: