qq_35313952 2016-10-09 01:09 采纳率: 0%
浏览 849

安卓图片的本地上传方法

现在在写一个安卓本地图片上传,获取到了图片,也可以显示到界面,该怎么传到后台?

  • 写回答

2条回答 默认 最新

  • fcwxin 2016-10-09 01:47
    关注

    okhttp框架

    //1、创建一个OkHttpClient
    OkHttpClient client = new OkHttpClient();
    //2、创建一个表单对象
    //读取图片数据
    Bitmap bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.a5);
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    //将图片数据转换为byte数据
    bitmap.compress(Bitmap.CompressFormat.JPEG,100,bos);
    MultipartBody body = new MultipartBody.Builder()
    .setType(MultipartBody.FORM)
    //添加文本数据
    .addFormDataPart("nikename","fengcheche05")
    .addFormDataPart("username","fengcheche05")
    .addFormDataPart("password","123456")
    //添加文件数据
    .addFormDataPart("portrait","abc.jpg",RequestBody.create(MediaType.parse("image/jpeg"),bos.to
    ByteArray()))
    .build();
    //3、创建一个Requesta
    Request request = new Request.Builder()
    .url("http://139.129.19.51/story/index.php/home/Interface/regist")
    .post(body)
    .build();
    //4、获得Call对象
    Call call = client.newCall(request);
    //5、执行请求,指定回调对象,该方法是异步执行,可以在主线程调用
    call.enqueue(new Callback() {
    @Override
    public void onFailure(Call call, IOException e) {
    //请求失败时调用该方法
    Log.v(LOG_TAG,"请求失败!");
    }
    @Override
    public void onResponse(Call call, Response response) throws IOException {
    //请求成功时调用该方法
    Log.v(LOG_TAG,"请求成功--->"+new String(response.body().bytes()));
    }
    });

    评论

报告相同问题?

悬赏问题

  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果
  • ¥15 html5+css和javascript有人可以帮吗?图片要怎么插入代码里面啊
  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算