我正在尝试使用蓝牙共享文件的意图,但我不知道为什么它会向我显示toast"无法打开文件进行共享"我已经在不同的文件上尝试了它,但它也是这样做的,我正在分享我在清单中使用的代码和权限......
String sharePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Aaa.jpg";
Uri uri = Uri.parse(sharePath);
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/*");
share.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(Intent.createChooser(share, "Share Sound File"));
权限我已添加到目前为止
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
答案 0 :(得分:3)
试试这个
File sourceFile = new File("//mnt/sdcard/TviderFB.apk");
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
Intent.setType("image/jpeg");
intent.putExtra(Intent.EXTRA_STREAM,Uri.fromFile(sourceFile));
startActivity(intent);
或者 仔细阅读并实施此How to send file using bluetooth on android programatically?
或阅读本教程,通过蓝牙分享 http://kpbird.blogspot.in/2011/04/android-send-image-via-bluetooth.html
并且不要忘记在清单中声明权限
答案 1 :(得分:2)
如果图片在图片文件夹中,那么路径将是这样的
String sharePath = Environment.getExternalStoragePublicDirectory
(Environment.DIRECTORY_PICTURES) + "/Aaa.jpg"