1
Uri clipUri = Uri.parse("android.resource://com.packagename.community/raw/" + rawname);
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, clipUri);
shareIntent.setType("audio/mpeg");
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.send_to)));

このコードはほとんど機能し、クリップを別のアプリ (ドロップボックスなど) に正常に送信でき、.mp3 拡張子がないことを除いて、ファイルに問題はありません。

4

1 に答える 1

0

StackOverflow へようこそ! StackOverflow はプログラミングに関する質問であり、これは質問ではありません。

私はあなたの非質問を次のように解釈します:

Uriファイル拡張子を持たないを使用すると、ファイル拡張子エルフによって魔法のようにファイル拡張子が追加されないのはなぜですか?

これは、Android にファイル拡張子 elf がないためです。

にファイル拡張子を付けたい場合は、Uriそこに付ける必要があります。そして、私が認識してandroid.resource:// Uriいるファイル拡張子を与える構文はないので、あなたの選択肢は次のとおりです。

  1. リソースの代わりにファイルを共有する

  2. 実際に目的のファイル拡張子を持つものに応答しContentProviderて、リソースを提供する を作成しますopenFileUri

  3. ファイル拡張子なしでライブ

  4. リソースを共有しない

于 2012-12-29T21:15:47.060 に答える