テキストファイルを扱うアンドロイドアプリケーションを作成しています。ユーザーが電子メール、Dropboxなどを使ってファイルを共有できるようにしたいのですが、htmlファイルの場合はブラウザで開くこともできます。インテントを使用してブラウザでファイルを開くか共有する
両方のコードを別々に行うことに問題はありません。これらは、ファイル共有するためのものです:
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + path));
startActivity(Intent.createChooser(intent, "Send File"));
を、これは、ブラウザでファイルを開くためのものです:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
intent.setData(Uri.parse("file://" + path);
startActivity(Intent);
私の問題は、私は、ユーザーをお願いしたくないということです彼があらかじめ望むオプション。インテント・チューザーに両方のタイプの操作をリストしたい。私はtext/plainの代わりにtext/htmlを使用しようとしましたが、URIがhttpで始まるときにブラウザはインテントだけを聞きます。
これを達成するためのアイデアはありますか?
私の現在の解決策は、ChooserActivityのコードをリッピングし、自分のMULTI_ACTION_CHOOSERインテントを実装することです。 –