安卓上传文件 到 php (问:如何在安卓上传文件到php?)

在安卓开发中,上传文件到服务端是一个常见的需求,而通常我们会使用PHP作为服务器端的语言来处理上传的文件。

下面我将向大家介绍如何在安卓客户端使用Java代码将文件上传到PHP。

一、在AndroidManifest.xml文件里加入网络权限:

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

二、创建一个AsyncTask异步任务类,该类的作用是将文件上传到服务器:

“`java
private class UploadFileTask extends AsyncTask {

private String mUrl;
private String mFilePath;
private String mFieldName;

public UploadFileTask(String url, String filePath, String fieldName) {
    mUrl = url;
    mFilePath = filePath;
    mFieldName = fieldName;
}

@Override
protected String doInBackground(String... params) {
    String result = "";
    try {
        HttpClient httpClient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost(mUrl);

        File file = new File(mFilePath);
        FileBody fileBody = new FileBody(file);

        MultipartEntityBuilder builder = MultipartEntityBuilder.create();
        builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
        builder.addPart(mFieldName, fileBody);

        httpPost.setEntity(builder.build());

        HttpResponse response = httpClient.execute(httpPost);
        HttpEntity resEntity = response.getEntity();

        if (resEntity != null) {
            result = EntityUtils.toString(resEntity);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return result;
}

@Override
protected void onPostExecute(String result) {
    // 文件上传成功后执行的操作
    // 可以根据服务器返回的数据执行相应的操作
}

}
“`

三、使用AsyncTask异步任务类来上传文件:

“`java
String url = “http://example.com/upload.php”;
String filePath = “/sdcard/test.jpg”;
String fieldName = “file”;

UploadFileTask task = new UploadFileTask(url, filePath, fieldName);
task.execute();
“`

其中,url是服务器端的处理文件上传的PHP脚本的地址,filePath是要上传的文件的路径,fieldName是所上传文件在POST中的字段名

四、PHP服务器端的文件处理:

php
<?php
if (!empty($_FILES)) {
$file = $_FILES['file'];
move_uploaded_file($file['tmp_name'], './uploads/' . $file['name']);
}
?>

该PHP脚本会将上传的文件存储在服务器上的./uploads/目录下。

以上就是在安卓上传文件到PHP的方法,希望可以帮助到大家。

如有侵犯您的权益请邮件发送:rainpro@foxmail.com,站长看到会第一时间处理
客栈猫 » 安卓上传文件 到 php (问:如何在安卓上传文件到php?)

提供最优质的资源集合

立即查看 了解详情