Перейти к содержанию
Fire Monkey от А до Я

Лидеры

Популярный контент

Показан контент с высокой репутацией 23.07.2021 во всех областях

  1. Открытие любого файла в подходящем приложении в операционной системе Андроид выполняются одинаковым способом. Путем посылки намерения (Интент) с указанием файла и типа данных. Далее система ищет по указанному типу файла, какие приложения зарегистрированы на обработку файлов этого типа, Если приложение, которое может обработать этот файл, одно, то запускает активити приложения и передает туда ваш файл/данные. Если приложений несколько - запускает диалоговое окно выбора приложения, которое будет выполнять обработку вашего файла. Резюмируя это, смотрим на код: uses System.IOUtils, FMX.Helpers.Android, Androidapi.JNI.Net, Androidapi.JNI.GraphicsContentViewText; procedure TForm7.btnOpenPDFClick(Sender: TObject); const SAMPLE_PDF_FILENAME = 'example.pdf'; var Uri: Jnet_Uri; OpenLinkIntent: JIntent; PDFFileName: string; begin PDFFileName := TPath.Combine(TPath.GetDocumentsPath, SAMPLE_PDF_FILENAME); { Внутренний доступ} Uri := StrToJURI(PDFFileName); // Формируем намерение об открытии файла в стандартном приложении OpenLinkIntent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW, Uri); // Устанавливаем тип данных OpenLinkIntent.setType(StringToJString('application/pdf')); OpenLinkIntent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_CLEAR_TOP); // Запускаем приложение и передаем ему наше намерение try SharedActivity.startActivity(OpenLinkIntent); except on E: Exception do ShowMessage('Не удалось открыть PDF. В системе нет доступных приложения для просмотра pdf'); end; end; В этом код pdf файл берется из самого пакета приложения (я включил pdf файл в пакет приложения). Если вам нужно вытащить файл в любом другом месте, просто укажите в PDFFileName полный путь к файлу в файловой системе вашего устройства. Проект доступен тут: OpenPDF.zip
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...