Android:如何从Intent.ACTION获取文档内容并将其转换为字节数组?
我希望我的应用程序的用户能够从他们的驱动器中获取PDF文档并将其发送到服务器 服务器端终结点已就绪,我将按以下方式打开驱动器:Android:如何从Intent.ACTION获取文档内容并将其转换为字节数组?,android,document,Android,Document,我希望我的应用程序的用户能够从他们的驱动器中获取PDF文档并将其发送到服务器 服务器端终结点已就绪,我将按以下方式打开驱动器: final Intent chooseFileIntent = new Intent(Intent.ACTION_GET_CONTENT); String[] mimetypes = {"application/pdf"}; chooseFileIntent.setType("*/*"); chooseFileIntent.addCategory(Intent
final Intent chooseFileIntent = new Intent(Intent.ACTION_GET_CONTENT);
String[] mimetypes = {"application/pdf"};
chooseFileIntent.setType("*/*");
chooseFileIntent.addCategory(Intent.CATEGORY_OPENABLE);
if (chooseFileIntent.resolveActivity(activity.getApplicationContext().getPackageManager()) != null) {
chooseFileIntent.putExtra(Intent.EXTRA_MIME_TYPES, mimetypes);
activity.startActivityForResult(chooseFileIntent, Uploader.PDF);
}
然后在获取文档后:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// What to do here with data?
}
这就是我被卡住的地方,我不知道如何用这种方法处理数据
谢谢你的帮助
Android:如何从Intent.ACTION获取文档内容并将其转换为字节数组
这只适用于小文档。否则,您将耗尽内存。使用API连接可以使用InputStream而不是字节[]工作的服务器
我不知道如何用这种方法处理数据
其中的data.getData将为您提供所选文档的Uri。getContentResolver将为您提供一个ContentResolver,在ContentResolver上调用openInputStream,传入Uri,将为您提供一个由Uri标识的内容的InputStream。这可能会帮助您:非常感谢您的回答!