ポップアップ時にリストを作成したいのですが、ビデオ/オーディオを再生できるアプリのみを表示します。どうすればいいですか?
再生する特定のファイルはありません。リストからメディア プレーヤーを起動したいだけです。前もって感謝します。以下は、私が興味を持った例です。
ポップアップ時にリストを作成したいのですが、ビデオ/オーディオを再生できるアプリのみを表示します。どうすればいいですか?
再生する特定のファイルはありません。リストからメディア プレーヤーを起動したいだけです。前もって感謝します。以下は、私が興味を持った例です。
それは可能ではありません。(カーネル mod を書かずに)
ソースコード/バイナリで他のアプリをフィルタリングすることはできません。あなたがしたいことのために、アプリがMedia Libsを使用しているかどうかを判断する必要があり、アプリがそれらを使用している場合でも、アプリがオーディオ/ビデオを再生するかどうかはわかりません.
すべてのアプリを一覧表示し、それを実行できるユーザー マークを持つことしかできませんでした。
注: すべてのアプリはオーディオ/ビデオを再生する可能性があります。すべてのメディアプレーヤー アプリを表示する場合は、Intent と MIME を使用する必要があります。
オーディオ/ビデオファイルを他のアプリと共有して再生したいと思います。そのためには、インテントを使用する必要があります。
バイナリ データは、ACTION_SENDアクションを適切な MIME タイプの設定と組み合わせて使用し、データへの URI をEXTRA_STREAMという名前のエクストラに配置して共有されます。これは一般的にファイルを共有するために使用されますが、あらゆる種類のバイナリ コンテンツを共有するために使用できます。
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, uriToFile);
shareIntent.setType("audio/*");
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.send_t
詳しくはこちら資料
ListItem
どのトリガーがapplication
その種類のファイルを開くことができるかを考えてみる必要がありMIME
ます。内部にバンドルされたタイプとvideoPath
同様に、ダミーを渡すことができます。audioPath
MIME
Intent
Intent
のクリックでトリガーが必要ですListItem
。
ListView listView = getListView();
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// Add Video & Audio using If- Else or however you like to so
}
});
ビデオの場合:
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(newVideoPath));
intent.setDataAndType(Uri.parse(newVideoPath), "video/*");
startActivity(intent);
オーディオの場合:
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(newAudioPath));
intent.setDataAndType(Uri.parse(newAudioPath), "audio/*");
startActivity(intent);
のアプローチを使用することもできますCreateChooser
Intent sI = new Intent();
sI.setAction(Intent.ACTION_SEND);
sI.putExtra(Intent.EXTRA_STREAM, uriToFile);
sI.setType("audio/*");
startActivity(Intent.createChooser(sI, getResources().getText(R.string.text))