У меня есть кусок кода, который запускается navigator.storage.estimate()
для моей indexedDB, когда веб-приложение запускается на планшете Android, который должен работать Android 7.1.1.
Я сталкиваюсь с проблема на Android, которая использует браузер chrome ver. 58, и это происходит:
TypeError: navigator.storage.estimate is not a function
Из документации MDN представляется, что .estimate()
должно поддерживаться начиная с версии 52. https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/estimate
Версии браузера после 58 также, похоже, не сталкиваются с той же проблемой.
Вот код, который запускает функцию:
const storageSetup = async () => {
let errorMessage = undefined;
try {
const granted = await navigator.storage.persist();
if (granted)
console.log("Storage is now going to be persistent...", granted);
} catch (error) {
errorMessage = `Client did not allow storage to be persistent..${error}`;
}
try {
const response = await navigator.storage.estimate();
console.log("Storage Estimate, ", response, "Usage: ", (response.usage * 100 / response.quota).toFixed(2));
} catch (error) {
errorMessage = `estimate() is not supported on tablet, ${error}`;
}