我的应用程序生成 kml (xml) 文件,我希望用户能够通过电子邮件、蓝牙或其他方式共享这些文件。我已经看过几十个例子,但显然我仍然做错了什么。如果我选择 Gmail,电子邮件会正确加载,但文件未附加。如果我选择蓝牙,蓝牙管理器会崩溃。我在这里做错了什么?
private void createShareIntent(String filename) {
Log.d(Common.APP_TAG, "** Create share intent **");
String mime = "text/plain";
File exportFile = new File(filename);
Log.d(Common.APP_TAG, Uri.fromFile(exportFile).toString());
// logcat says : file:///mnt/sdcard/Android/data/com.gmail.qkzoo1978.qwhereami/files/exports/qExport_11-6-2012_1648.kml
Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_EMAIL, new String[] {"testing@gmail.com"});
intent.putExtra(Intent.EXTRA_SUBJECT, "Test");
intent.putExtra(Intent.EXTRA_TEXT, "Text");
intent.setType(mime);
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(exportFile));
//intent.setDataAndType(Uri.fromFile(exportFile), mime);
startActivity(Intent.createChooser(intent, "Share Kml"));
}