Persistenten storage hinzugefügt
This commit is contained in:
@@ -86,10 +86,11 @@ InitPromise.resolve(app).then(async function () {
|
||||
app.start(MenuSite);
|
||||
Translator.setLanguage("de");
|
||||
|
||||
InstallManager.setCanInstallListener(e => {
|
||||
});
|
||||
InstallManager.setCanInstallListener(e => {});
|
||||
if (InstallManager.isInstalled()){
|
||||
MyStorageManager.getInstance().persist();
|
||||
}
|
||||
|
||||
MyStorageManager.getInstance().persist();
|
||||
|
||||
window["applyAndroidBridge"] = AndroidBridge.applyDefinitions;
|
||||
});
|
||||
|
||||
@@ -17,39 +17,45 @@ class MyStorageManager {
|
||||
}
|
||||
|
||||
async estimate() {
|
||||
if ('storage' in navigator && 'estimate' in navigator.storage) {
|
||||
if ('storage' in navigator && 'estimate' in navigator["storage"]) {
|
||||
// We've got the real thing! Return its response.
|
||||
return navigator.storage.estimate();
|
||||
return navigator["storage"]["estimate"]();
|
||||
}
|
||||
|
||||
if ('webkitTemporaryStorage' in navigator &&
|
||||
'queryUsageAndQuota' in navigator.webkitTemporaryStorage) {
|
||||
'queryUsageAndQuota' in navigator["webkitTemporaryStorage"]) {
|
||||
// Return a promise-based wrapper that will follow the expected interface.
|
||||
return new Promise(function (resolve, reject) {
|
||||
navigator.webkitTemporaryStorage.queryUsageAndQuota(
|
||||
navigator["webkitTemporaryStorage"]["queryUsageAndQuota"](
|
||||
function (usage, quota) {
|
||||
resolve({usage: usage, quota: quota});
|
||||
resolve({"usage": usage, "quota": quota});
|
||||
},
|
||||
reject
|
||||
);
|
||||
});
|
||||
}
|
||||
// If we can't estimate the values, return a Promise that resolves with NaN.
|
||||
return Promise.resolve({usage: NaN, quota: NaN});
|
||||
return Promise.resolve({"usage": NaN, "quota": NaN});
|
||||
}
|
||||
|
||||
async isPersistent(){
|
||||
if (this.canPersist()){
|
||||
return navigator["storage"]["persisted"]();
|
||||
}
|
||||
return Promise.resolve(false);
|
||||
}
|
||||
|
||||
canEstimateStorage() {
|
||||
return ('storage' in navigator && 'estimate' in navigator.storage || 'webkitTemporaryStorage' in navigator &&
|
||||
'queryUsageAndQuota' in navigator.webkitTemporaryStorage);
|
||||
return ('storage' in navigator && 'estimate' in navigator["storage"]|| 'webkitTemporaryStorage' in navigator &&
|
||||
'queryUsageAndQuota' in navigator["webkitTemporaryStorage"]);
|
||||
}
|
||||
|
||||
canPersist() {
|
||||
return (navigator.storage && navigator.storage.persist);
|
||||
return (navigator["storage"] && navigator["storage"]["persist"]);
|
||||
}
|
||||
|
||||
persist(){
|
||||
if (this.canPersist()){
|
||||
return navigator.storage.persist();
|
||||
return navigator["storage"]["persist"]();
|
||||
}
|
||||
return Promise.resolve(false);
|
||||
}
|
||||
@@ -86,6 +92,10 @@ class InstallManager {
|
||||
});
|
||||
}
|
||||
|
||||
static isInstalled(){
|
||||
return matchMedia("(display-mode: standalone)").matches;
|
||||
}
|
||||
|
||||
static setCanInstallListener(listener, callIfCanInstall) {
|
||||
this.canInstallListener = listener;
|
||||
callIfCanInstall = Helper.nonNull(callIfCanInstall, true);
|
||||
|
||||
Reference in New Issue
Block a user