Я делаю стажировку в Ionic. В этом проекте мне нужно прочитать файлы mbtiles (через плагин @ionic-native/file
) и поместить их в листовки (через плагин leaflet-tilelayer-mbtiles-ts
для листовок). я делаю это так:
this.file.readAsArrayBuffer(PATH, MBITILEFILENAME).then(res =>{
L.tileLayer.mbTiles(res,{
maxZoom: 18,
attribution: "mbtiles"
}).addTo(this.map)
})
Поскольку по некоторым причинам я не использую тестовое приложение Ionic, мне приходится тестировать свое приложение непосредственно на телефоне и использовать студийную консоль Android, чтобы увидеть, что происходит.
Вот проблема:
Когда я использую небольшой файл mbtiles (10Mo, тестовый файл), он работает, но когда я использую больший файл (880Mo, файл, который он должен читать в среде prod), Android Console читает мне это:
I / хром: [INFO: CONSOLE (312)] "Uncaught RangeError: Буфер массива
распределение не удалось ", источник: http://localhost/cordova.js (312)
Я пытался найти ограничение размера file.readAsArrayBuffer()
, но ничего не нашел.
Можете ли вы сказать мне, каков предел размера file.readAsArrayBuffer()
? Любое решение, чтобы обойти этот предел с Ionic? Или что-то, что может решить мою проблему?