Я пытаюсь открыть файл с моим приложением. Файл переносится через веб -службу и сохраняется в локальной базе данных, кодированный Base64. Когда я показываю файл в своем приложении, я хочу использовать приложение по умолчанию для этого типа файла. Или, по крайней мере, я хочу показать диалоговое окно «Выбор приложения» и позволить пользователю выбрать приложение, чтобы открыть файл. Что у меня есть до сих пор: < /p>
procedure Base64StringToFileAndOpen(const base64String: string; Filename: string);
var
decodedBytes: TBytes;
filePath: string;
fileStream: TFileStream;
interactionController: UIDocumentInteractionController;
NSU: NSURL;
begin
// Decode BASE64 string into bytes
decodedBytes := TNetEncoding.Base64.DecodeStringToBytes(base64String);
// Determine the file path
// NSStrToStr(TNSString.Wrap(NSTemporaryDirectory));
filePath := System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetTempPath, Filename);
// Save decoded bytes into a file
fileStream := TFileStream.Create(filePath, fmCreate);
try
fileStream.WriteBuffer(decodedBytes[0], length(decodedBytes));
finally
fileStream.Free;
end;
NSU := TNSURL.Wrap(TNSURL.OCClass.URLWithString(StrToNSStr(PChar(filePath))));
interactionController := TUIDocumentInteractionController.Wrap(TUIDocumentInteractionController.alloc.init);
interactionController.setURL(NSU);
interactionController.setUTI(StrToNSStr('public.data'));
interactionController.presentOpenInMenuFromRect(CGRectFromRect(TRectF.Empty), SharedApplication.keyWindow.rootViewController.view, true);
end;
< /code>
Когда я запускаю этот код на iPhone (iOS), в конце экрана ящик, как вы обычно ожидаете отображаться. Но на этом экране ничего нет. Нет приложений, нет текста, ничего. Я ожидаю, что приложения появятся здесь, которые позволили мне открыть этот файл. Где моя ошибка? Я искал Framework Kastri, если там что -то полезное, но есть только компонент Share, но я не хочу делиться своим файлом, я хочу отобразить его только в другом приложении. < /P>
Кто -нибудь может мне помочь?
Подробнее здесь: https://stackoverflow.com/questions/770 ... app-picker
Delphi - Откройте файл с приложением по умолчанию в IOS или Show Picker Picker ⇐ IOS
Программируем под IOS
1739298172
Anonymous
Я пытаюсь открыть файл с моим приложением. Файл переносится через веб -службу и сохраняется в локальной базе данных, кодированный Base64. Когда я показываю файл в своем приложении, я хочу использовать приложение по умолчанию для этого типа файла. Или, по крайней мере, я хочу показать диалоговое окно «Выбор приложения» и позволить пользователю выбрать приложение, чтобы открыть файл. Что у меня есть до сих пор: < /p>
procedure Base64StringToFileAndOpen(const base64String: string; Filename: string);
var
decodedBytes: TBytes;
filePath: string;
fileStream: TFileStream;
interactionController: UIDocumentInteractionController;
NSU: NSURL;
begin
// Decode BASE64 string into bytes
decodedBytes := TNetEncoding.Base64.DecodeStringToBytes(base64String);
// Determine the file path
// NSStrToStr(TNSString.Wrap(NSTemporaryDirectory));
filePath := System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetTempPath, Filename);
// Save decoded bytes into a file
fileStream := TFileStream.Create(filePath, fmCreate);
try
fileStream.WriteBuffer(decodedBytes[0], length(decodedBytes));
finally
fileStream.Free;
end;
NSU := TNSURL.Wrap(TNSURL.OCClass.URLWithString(StrToNSStr(PChar(filePath))));
interactionController := TUIDocumentInteractionController.Wrap(TUIDocumentInteractionController.alloc.init);
interactionController.setURL(NSU);
interactionController.setUTI(StrToNSStr('public.data'));
interactionController.presentOpenInMenuFromRect(CGRectFromRect(TRectF.Empty), SharedApplication.keyWindow.rootViewController.view, true);
end;
< /code>
Когда я запускаю этот код на iPhone (iOS), в конце экрана ящик, как вы обычно ожидаете отображаться. Но на этом экране ничего нет. Нет приложений, нет текста, ничего. Я ожидаю, что приложения появятся здесь, которые позволили мне открыть этот файл. Где моя ошибка? Я искал Framework Kastri, если там что -то полезное, но есть только компонент Share, но я не хочу делиться своим файлом, я хочу отобразить его только в другом приложении. < /P>
Кто -нибудь может мне помочь?
Подробнее здесь: [url]https://stackoverflow.com/questions/77053176/delphi-open-a-file-with-default-application-in-under-ios-or-show-app-picker[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия