You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio Java中OutputStream ops报错引发应用崩溃

报错根因

这个崩溃和OutputStream逻辑无关,java.lang.SecurityException: Permission denied (missing INTERNET permission?)是Android系统拦截了未授权的网络请求,说明你的应用没有声明网络访问权限。

修复步骤
  • 声明网络权限
    打开项目中的AndroidManifest.xml,在<manifest>节点下、<application>节点的平级位置添加以下权限声明:

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

    该权限属于安装时自动授予的普通权限,不需要额外编写动态申请代码。

  • 适配高版本系统的网络限制
    如果项目targetSdkVersion >= 28,且你的接口地址是http开头的明文请求,需要在<application>标签上添加android:usesCleartextTraffic="true"属性,否则系统会默认拦截明文HTTP请求。如果接口是https开头可以跳过这一步。

  • 修正现有代码的逻辑错误
    你当前的网络请求代码本身存在几处问题,即使权限加了也可能出现请求异常,一并修正即可:

    1. 重复调用了两次http.getOutputStream(),第一次获取的ops流没有被使用,属于冗余代码
    2. 表单参数拼接错误使用了&&作为分隔符,标准表单参数之间仅需要单个&
    3. 没有设置表单请求的Content-Type头,部分服务端会无法正确解析参数
    4. 没有调用获取响应码/读取响应的逻辑,连接不会正常完成请求流程
    5. 两个传参的key都写了visible,服务端读取时后一个值会覆盖前一个,如果是两个不同参数请修改为不同的key名

    修正后的参考代码:

    try {
        URL url = new URL(connstring);
        HttpURLConnection http = (HttpURLConnection) url.openConnection();
    
        http.setRequestMethod("POST");
        http.setDoInput(true);
        http.setDoOutput(true);
        http.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
    
        OutputStream ops = http.getOutputStream();
        BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(ops, "UTF-8"));
        String data = URLEncoder.encode("visible", "UTF-8") + "=" + URLEncoder.encode(visible, "UTF-8")
                + "&" + URLEncoder.encode("option", "UTF-8") + "=" + URLEncoder.encode(option, "UTF-8");
        writer.write(data);
        writer.flush();
        writer.close();
        ops.close();
    
        // 触发请求实际发送,获取响应状态码
        int responseCode = http.getResponseCode();
        // 后续可在这里读取服务端返回的输入流内容
    } catch (MalformedURLException ex) {
        result = ex.getMessage();
    } catch (IOException e) {
        result = e.getMessage();
    }
    

内容的提问来源于stack exchange,提问作者user18974397

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 13:12:18