かなり検索しましたが、見つかったすべての結果は、カレンダーアプリ、アプリをicsファイルハンドラーとして登録する方法などを扱っています.
代わりに、私が抱えている問題は次のとおりです。ページにイベントのリストがあります。PHP を使用して、イベントごとに *.ics ファイルを動的に作成し、ユーザーのカレンダー ソフトウェアに直接インポートできるようにします。これは Outlook と iOS ではうまく機能します (PC ではダウンロード プロンプトが表示されるので、Outlook で開くことができます。iPhone ではファイル シンボルと名前が表示され、「カレンダーで開く」オプションが表示されます)。ただし、Android デバイスからリンクをクリックすると ( Galaxy S3)、ブラウザは.icsファイルをカレンダーで開いたり、少なくともダウンロードさせたりするのではなく、生のテキストとして表示するだけです.
ブラウザがユーザーのカレンダーでファイルを開くか、少なくともダウンロードして、ユーザーが1)醜いテキストを表示せず、2)自分のアプリを使用してファイルをインポートできるようにする方法はありますか または、同様の機能を実現できるように、使用できる別のファイル形式やその他の方法がありますか?
ユーザーにいくつかの設定を変更したり、このアプリまたはそのアプリを使用したりすることを要求することは実際にはオプションではないため、リンクを使用するだけでそのような動作をトリガーする方法があればいいと思います.
編集:または、考えてみると、すべての(または少なくともほとんどの)Androidデバイスで機能する標準フォーマットさえありますか?私の知る限り、彼らは標準の組み込みカレンダーを共有していませんよね?
更新:ファイルをダウンロードできるようになりました: ヘッダー情報にエラーがありました (正しいテキスト/カレンダーではなくテキスト/x-vCalendar)、PC ブラウザーと iOS は気付かないようですが、Android は気づきました)。その後、いくつかの解析エラーが発生しましたが、それは時々ファイルに入った空の行が原因のようです。