6

このトピックを検索したところ、次の 2 つの Web サイトが見つかりました。

AndroidのファイルパスからコンテンツURIを取得

http://developer.android.com/training/basics/intents/sending.html

私がやりたいのは、Android アプリ内から ical ファイルをエクスポートし、カレンダーを Google カレンダー アプリにインポートすることです。ボタンをクリックすると、アプリがインテントを送信し、Android App Chooser が表示されるはずです。次に、Googleカレンダーを選択して、カレンダーにicalファイルをインポートできるようにしたいと考えています。

これまでの私のコードは次のとおりです。

Uri uri = Uri.fromFile(new File(fileName));
//Uri uri = Uri.parse(fileName);
Intent calendarIntent = new Intent(Intent.ACTION_VIEW, uri);
final Intent chooser = Intent.createChooser(calendarIntent, "choose");
...
startActivity(chooser);

fileName を使用してファイルを開くことができるので、これは問題になりません (fileName には「file.ics」のようなものが含まれているだけです)。このコードを実行すると、Android アプリの選択画面で、このアクションを処理できるアプリがないと表示されます。私は Eclipse 内のライブラリとして Google API レベル 7 を使用しており、テストのために Android 4.04 を搭載した Galaxy Nexus デバイスにデプロイしています。何が間違っているのかわかりません。助言がありますか?助けてくれてありがとう!

編集:

次のコードは、選択するアプリのリストを表示します。

Uri uri = Uri.parse(fileName);
Intent calendarIntent = new Intent(Intent.ACTION_SEND, uri);
calendarIntent.setType("text/calendar");
final Intent chooser = Intent.createChooser(calendarIntent, "choose");

しかし、カレンダーはこのリストにありません。そこで、携帯電話に ical ファイルをダウンロードして開こうとしました。それでも、テキスト エディターのみが表示され、カレンダー アプリは表示されません。そのため、ical ファイルを Google カレンダー アプリにインポートすることはできないようです。私が間違っていることが証明されれば幸いです...

4

0 に答える 0