web-dev-qa-db-ja.com

android

PhoneGapを使用してデータを永続的に保存する方法を探しています。

  1. LocalStorage
  2. ファイルI/O

LocalStorageは100%永続的ではないが、路地のどこかにあると聞きました。

ファイルI/Oから始めたくありません。必要なのは、レシピを使用してデータベースを作成することであり、それらはそのままにしておく必要があるためです。

「ナンバー3」は私が尋ねているものです。助言がありますか?

前もって感謝します :)

20
Daniel

私はlocalstorageを使用していますが、これは保存されたデータを保持するための最良のソリューションです。あなたが言ったように、それは100%永久的ではありません。私の場合、アプリをアンインストールした場合にのみlocalstorageがクリアされます。 Phonegapを使用したlocalstorageの詳細 http://docs.phonegap.com/en/2.1.0/cordova_storage_storage.md.html#localStorage

http://diveintohtml5.info/storage.html でlocalstorageに関する詳細情報を取得できます

データベースも使用できます。これに関する情報は http://docs.phonegap.com/en/2.1.0/cordova_storage_storage.md.html#openDatabase にあります。

26
A. Magalhães

アプリをアンインストールした後でもデバイスにデータを永続的に保存したい場合、iOSで別の方法で行う必要があります。アンドロイド。

iOSでは、キーチェーン https://github.com/shazron/KeychainPlugin を使用できます。

Androidでは、ファイルプラグインを使用して、SDカード(cordova.file.externalRootDirectory)にデータを保存できます。

どちらの場合も、ユーザーがアプリを再インストールしても、データはデバイスに残ります。

ionic(またはangular)のみを使用している場合、これらの2つのプラグインをangularでラップする- ng-persist を使用できますiOSとAndroidの両方で同じAPIを使用するサービス。

詳細はこちら http://alexdisler.com/2014/04/23/persist-data-mobile-device-app-removed-uninstalled-cordova-ionic/

5
Alex

AppStoreでは、アプリの新しいバージョンをリリースすると、ユーザーに保存されているすべてのデータがリセットされます。アプリを更新する前に、データを保存するためのより良い方法を見つける必要があります。

0

データを永続的に保存するには、次の手順を実行できます。

  1. HTMLファイル

    <div id="deviceready">

    <div id="result"></div>
    

    </div>

  2. あなたはJSファイル

    window.onload = function(){
    
        document.addEventListener("deviceready", init, false);
    }
    
    function init(){
     document.getElementById("signin").addEventListener("submit",login, false);
    }
    
    function saveData(){
      window.localStorage.setItem("header", 'Some Text Here');
    }
    
    function getData(){    
      document.getElementById("result").innerHTML = 
         window.localStorage.getItem("header");
      }
    }
    
0
Shahrukh Anwar