Приложение Web Storage в Cordova переносится, даже если приложение удалено - PullRequest
0 голосов
/ 07 мая 2018

В приложении Cordova для Android, когда я использую веб-хранилище (window.localStorage), я замечаю, что иногда, когда я удаляю приложение (даже через adb uninstall) и перестраиваю приложение снова, кажется, что материал window.localStorage переносится более.

Это не только на одном устройстве Android, я заметил это несколько раз на разных устройствах.

Это вообще возможно или просто страницы кэшируются?

EDIT:

Я создал пример проекта. И используя Cordova 8 и платформу Android 7.0.0. Я правильно настраиваю?

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.example.hello" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>HelloWorld</name>
    <description>
        A sample Apache Cordova application that responds to the deviceready event.
    </description>
    <author email="dev@cordova.apache.org" href="http://cordova.io">
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <plugin name="cordova-plugin-whitelist" spec="1" />
    <access origin="*" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />
    <platform name="android">
        <allow-intent href="market:*" />
        <edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application">
            <application android:allowBackup="false" />
            <application android:fullBackupContent="false" />
        </edit-config>
    </platform>
    <platform name="ios">
        <allow-intent href="itms:*" />
        <allow-intent href="itms-apps:*" />
    </platform>
    <engine name="android" spec="^7.0.0" />
</widget>

1 Ответ

0 голосов
/ 07 мая 2018

Android 6+ автоматически выполняет резервное копирование данных и восстанавливается при повторной установке приложения.

Вы можете отключить его, добавив это в config.xml

<edit-config file="AndroidManifest.xml"
             target="/manifest/application"
             mode="merge">
    <application android:allowBackup="false"/>
    <application android:fullBackupContent="false"/>
</edit-config>

Это приводит к сбою сборки приложения, вам нужно добавить xmlns:android="http://schemas.android.com/apk/res/android" к виджету config.xml, чтобы оно было построено.

...