У меня есть ссылка на календарь ICS: См. Здесь
Каждый браузер обрабатывает его правильно (загрузите файл на рабочем столе и откройте приложение Календарь на iPhone), кроме встроенного браузера Instagram.- когда вы открываете эту ссылку в Instagram (как в «Прямых сообщениях»), она просто показывает содержимое файла.
Как заставить приложение Instagram открывать приложение Календарь для ссылок этого типа?
Вот часть кода PHP, который я использую для создания этого файла:
$calendar_string = [];
$calendar_string[] = "BEGIN:VCALENDAR\n";
$calendar_string[] = "VERSION:2.0\n";
$calendar_string[] = "PRODID:-//Veronika Agafonova//NONSGML Veronika Agafonova//EN\n";
$calendar_string[] = "METHOD:REQUEST\n"; // requied by Outlook
$calendar_string[] = "BEGIN:VEVENT\n";
$calendar_string[] = "UID:".date('Ymd').'T'.date('His')."-".rand()."-example.com\n"; // required by Outlok
$calendar_string[] = "DTSTAMP:".date('Ymd').'T'.date('His')."\n"; // required by Outlook
$calendar_string[] = "DTSTART:$date_start\n";
$calendar_string[] = "DTEND:$date_end\n";
$calendar_string[] = "SUMMARY:$title\n";
$calendar_string[] = "DESCRIPTION:$details\n";
$calendar_string[] = "END:VEVENT\n";
$calendar_string[] = "END:VCALENDAR\n";
header("Content-Type: text/Calendar");
header("Content-Disposition: attachment; filename=calendar.ics");
header("Content-Length: ". strlen(implode("", $calendar_string)).";");
header("Content-Type: application/force-download");
header("Content-Transfer-Encoding: binary");
header("Connection: close");
echo implode("", $calendar_string);