我正在制作一个soundboard应用程序,当长按按钮1时,我需要共享sound1。我可以用以下代码创建共享菜单:
Button button1;
button1 = (Button) v.findViewById(R.id.button1);
button1.setLongClickable(true);
button1.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View arg0) {
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("audio/ogg");
Uri.parse("android.resource://test.testapp/" + R.raw.sound1);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("android.resource://test.testapp/" + R.raw.sound1));
startActivity(Intent.createChooser(shareIntent, "Share Sound"));
return true;
}
});
return v;
}
我可以与whatsapp和Google Drive完美共享音频文件,但其他应用程序不起作用。我听说您必须将文件复制到外部存储,并从那里共享它们。我已经搜索了将近两天,但我找不到这样做的方法。Stack上的其他文章也帮不了我:/
如何在外部存储器中创建目录,将文件(sound1.ogg)从我的/原始文件夹复制到该文件夹,然后与另一个应用程序(Gmail、Google Drive、Whatsapp、Skype等)共享该声音?
将某些内容保存到外部存储非常简单。首先,您需要将其添加到清单文件中,以允许外部存储写入:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
然后在活动/片段中:
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/saved_images");
myDir.mkdirs();
File file = new File (myDir, "FILE_NAME");
... however you write the file through output stream ....
由于这些是音频文件,您应该将它们存储在每个用户android手机的公共音频库中。您可以这样访问它:
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC)
我建议通过这篇文章了解更多信息!
我的应用程序将一些文件保存到设备上的数据/数据文件夹中。保存远程文件后,我会处理这些文件,并将它们复制到其他文件夹中。在之前测试过的所有设备上,All都能正常工作,但在galaxy s3上会生成空指针异常。似乎我不被允许在那个文件夹上写或处理文件!但只有新的星系s3!我也无法使用EclipseDDMS文件浏览器在数据文件夹中找到任何文件,而在模拟器(相同的android版本)中,我可以正确查看所有
我试图使用Adobe reader读取从服务器下载的pdf文件,但问题是当我将其存储在内部存储时,其他应用程序无法读取该文件。现在我想知道如何将此文件复制到外部存储(/sdcard/)中,以便pdf查看器可以查看。 由于安全原因,我将文件存储在内部存储,然后删除外部存储的文件。 我的问题是如何复制保存在内部存储中的文件,而不使用raw或将其放入InputStream中的资产。
问题内容: 我的应用程序( Android API 15 )制作图片并将其存储在内部存储器的文件夹中。现在,我想将此文件复制到外部存储中的另一个文件夹,例如。我尝试了以下方法: 方法1: 方法2: 方法3: 这些方法都不能解决我的任务。在检查了许多相关主题之后,我发现的唯一建议是验证 在和它确实存在。 该 方法#1 完成执行,但没有文件夹和文件被复制。 在 方法#2 ,应用程序失败,异常的,但对象
这些方法都不能解决我的任务。中检查了一些相关主题,我发现的唯一建议是验证 在中,并且它仍然存在。 方法#1完成执行,但没有复制文件夹和文件。 因为这是我迈向Android的第一步,我觉得我错过了一些小东西。请告诉我,如何在Android中将文件从一个文件夹复制到另一个文件夹,包括文件从内部内存移动到外部内存。
我尝试用以下代码保存从internet下载的文件 但在运行时,我得到的错误如下 03-04 20:42:51.080 8972-8972/com.example.me.demo2 E/BitmapFactory:无法解码流:java.io.FileNotFoundExcoop: /storage/emulated/0/.tanks/4a100abb-0e55-4062-8c37-f11f4189e