我提到了一些先前提出的问题,但没有得到正确的解决方案。我正在创建一个应用程序,并希望通过从文件管理器中选择它来发送PDF文件。
感谢任何类型的帮助。
答案 0 :(得分:2)
只有在必须从图库中选择PDF文件时才需要更改这行代码。 的 intent.setType("应用/ PDF&#34)强> 这将只搜索图库中的PDF文件。
Intent intent = new Intent();
intent.setType("application/pdf");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Pdf"), PDF);
答案 1 :(得分:0)
像这样使用Okhttp library,这是最简单的方法。但您必须根据此更改服务器(API或PHP)代码。
RequestBody requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("variable", fileName1,
RequestBody.create(MediaType.parse(fileType1), file))
.addFormDataPart("key", "")
.build();
Request request = new Request.Builder().url("server url goes here").post(requestBody).build();
okhttp3.Call call = client.newCall(request);
call.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
System.out.println("Registration Error" + e.getMessage());
}
@Override
public void onResponse(Call call, okhttp3.Response response) throws IOException {
try {
String resp = response.body().string();
Log.v("Docs", resp);
} catch (IOException e) {
System.out.println("Exception caught" + e.getMessage());
}
}
});