我正在开发一个包含邮件发送模块的应用程序。用户可以像在电子邮件中一样撰写邮件并发送给其他用户。我想附加任何类型的文件(.doc .txt图像/音频/视频)并使用
发送到服务器 receiver_id=12345&subject=testapi&msg=testmsg&attach_file=test.txt
我这样做
private void attachFile() {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("file/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
Intent sIntent = new Intent("com.sec.android.app.myfiles.PICK_DATA");
sIntent.addCategory(Intent.CATEGORY_DEFAULT);
Intent chooserIntent;
if (getPackageManager().resolveActivity(sIntent, 0) != null) {
// it is device with samsung file manager
chooserIntent = sIntent;
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS,
new Intent[] { intent });
} else {
chooserIntent = intent;
}
try {
startActivityForResult(chooserIntent, PICK_FILE);
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(getApplicationContext(),
"No suitable File Manager was found.", Toast.LENGTH_SHORT)
.show();
}
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PICK_FILE && resultCode ==getActivity().RESULT_OK) {
String FilePath = data.getData().getPath();
Log.i("Attachment Path:", FilePath);
}
}
我正在获取文件路径,但是 1)我怎么知道文件是否附加/如何进行附件
2)如何通过仅指定文件名(& attach_file = test.txt)将此文件与消息一起发送?
我看到很多关于向电子邮件发送附件的SO问题,但不是这样的。任何人都可以指导我吗?