У меня вопрос, связанный с гибридным мобильным приложением ionic 3 / angular 4.
возможно ли просматривать / отображать поток памяти / поток байтов любого типа пантомимы, например .png / jpeg и т. д..,. из API все, что я получаю в ионном браузере inapp? только данные потока?
или это предназначено только для открыть URL-адрес? поддерживает ли он данные потока памяти?





Вы можете создать внешнюю страницу, скажем, вы создали страницу https://yourdomain.com/loadpic/ {id}.
Затем вы можете использовать эту страницу для передачи идентификатора переменной или любого идентификатора и отображения изображения или чего-то еще,
INAPP BROWSER также обработает эту страницу
Если встроенный в приложение браузер здесь не является жестким требованием, то ответ - да, вы можете просматривать / отображать различные типы mime через байтовые массивы / потоки в гибридном мобильном приложении ionic / angular. Я бы посоветовал использовать что-то вроде плагина Cordova для открытия файлов, чтобы облегчить просмотр / открытие, у которого есть хороший ионная нативная обертка.
Скорее всего, здесь вы будете иметь дело с JS Blobs. Вы хотите сохранить Blob как файл на устройстве, а затем использовать File Opener, чтобы открыть / просмотреть его. Если ваше гибридное приложение также размещено как веб-приложение, то в этом сценарии вам понадобится подход, ориентированный на веб. Ниже приведен пример кода для нативной стороны (при условии, что Интернет не требуется). Он использует плагины File / File Opener Cordova.
var blob = new Blob([res], { type: 'application/pdf' });
//Determine a native file path to save to
let filePath = (this.appConfig.isNativeAndroid) ? this.file.externalRootDirectory : this.file.cacheDirectory;
//Write the file
this.file.writeFile(filePath, fileName, blob, { replace: true }).then((fileEntry: FileEntry) => {
console.info("File created!");
//Open with File Opener plugin
this.fileOpener.open(fileEntry.toURL(), data.type)
.then(() => console.info('File is opened'))
.catch(err => console.error('Error openening file: ' + err));
})
.catch((err) => {
console.error("Error creating file: " + err);
throw err; //Rethrow - will be caught by caller
});
привет, спасибо за ответ .. здесь, в моем случае, я не должен сохранять какие-либо файлы на локальном уровне .. и просто используя поток, который я получил, мне нужно отобразить ... но inapp не является жестким требованием ..
мой плохой; (я работал с тем же bfr ... теперь работает нормально