我使用以下简单代码通过蓝牙将文本文件传输到其他设备:
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.setPackage("com.android.bluetooth");
sharingIntent.putExtra(Intent.EXTRA_STREAM,Uri.parse(path));
activity.startActivity(Intent.createChooser(sharingIntent,ctx.getResources().getString(R.string.send_pubkey)));
"路径"是要传输的文件的完整路径(并且是有效的)。当我尝试发送文件时,我收到一条消息"未知文件"无法转移。那么......这里有什么问题?为什么这个文件未知?
谢谢!
答案 0 :(得分:2)
String path="/storage/file.mp4";
if(path.startsWith("file")||path.startsWith("content")||path.startsWith("FILE")||path.startsWith("CONTENT")){
}else{
path="file://"+path;
}
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(path));
shareIntent.setType("video/mp4");
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.sendTo)));
答案 1 :(得分:0)
您选择的文件路径包含一些额外的字符串,如Content:,File:等。尝试从文件中删除那些不需要的字符串。希望它能解决你的问题