java - 协议(protocol)异常不支持的地址族

标签 java android

我正在尝试将几个值从 Android 应用程序发送到我设置的 Web 服务。我正在使用 Http Post 发送它们,但是当我运行应用程序时,出现错误 - 请求时间失败 java.net.SocketException:协议(protocol)不支持地址系列。

我在使用模拟器和通过 wifi 连接的设备进行调试时得到了这个。我已经使用以下方法添加了互联网权限:

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

这是我用来发送值的代码

    void insertData(String name, String number) throws Exception {
    String url = "http://192.168.0.12:8000/testapp/default/call/run/insertdbdata/";
    HttpClient client = new DefaultHttpClient();
    HttpPost post = new HttpPost(url);

    try {
        List<NameValuePair> params = new ArrayList<NameValuePair>(2);

        params.add(new BasicNameValuePair("a", name));

        params.add(new BasicNameValuePair("b", number));
        post.setEntity(new UrlEncodedFormEntity(params));
        HttpResponse response = client.execute(post);
    }catch(Exception e){
        e.printStackTrace();
    }

我还知道我的网络服务工作正常,因为当我从 html 页面发送值时它工作正常 -

<form name="form1" action="http://192.168.0.12:8000/testapp/default/call/run/insertdbdata/" method="post">
    <input type="text" name="a"/>
    <input type="text" name="b"/>
    <input type="submit"/>

我看过类似问题的问题,但还没有真正找到解决方案。

谢谢

最佳答案

也尝试将其添加到您的 AndroidManifest.xml 中:

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

您还需要捕获此异常:

 catch(SocketException ex)
       {
         Log.e("Error : " , "Error on soapPrimitiveData() " + ex.getMessage());
           ex.printStackTrace();
       }

关于java - 协议(protocol)异常不支持的地址族,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5056066/

相关文章:

java - 使用synchronized时,Java如何确定哪个线程应该继续执行?

java - 从 R 运行 Java/Scala 代码

java - 应用android.useAndroidX = true和android.enableJetifier = true修复错误会导致另一个错误

android - 如何在接口(interface)类中初始化 TypeFace

javascript - react-native 中的图像压缩

android - 如何从 Android 上的 Kotlin 中的 Long 类型变量中提取日期和时间

java - hibernate : Two Foreign Keys from the same Table

java - 为什么 Integer 不解决 null String

java - 有没有一种优雅的方法可以将 Map<P, Optional<Q>> 转换为稀疏 Map<P, Q>?

java - 在android ListView中找出被点击元素的父级