首页 > 解决方案 > 将多个 POST 数据从 Android 发送到 API 级别 > 22 的 PHP 服务器?

问题描述

我正在尝试将带有多个变量的发布请求从 Android 发送到 PHP 服务器。我目前的方法是使用 MultipartEntityBuilder。但是这个类自 Android 22 以来已被弃用。这是我当前的代码:

MultipartEntityBuilder multipartEntityBuilder = MultipartEntityBuilder
                    .create();
String name = "Name";
multipartEntityBuilder.addTextBody("name", name);
multipartEntityBuilder.addTextBody("lastname", lastname);

ImageView image = (ImageView)findViewById(R.id.image);
Bitmap bitmap = ((BitmapDrawable)image.getDrawable()).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] imageByteArray = stream.toByteArray();
bitmap.recycle();
multipartEntityBuilder.addBinaryBody("image",imageByteArray);

在服务器上,我以这种方式访问​​ POST 参数:

$name = $_POST["name"];
$lastname = $_POST["lastname"];
$image = $_FILES["image"];

是否有一个库或优雅的方式来设置 Android 中的 post 字段的名称并在 PHP 中接收数据?

标签: phpandroidpostserver

解决方案


推荐阅读