2017-06-03 14 views
2

これが可能かどうか、またそれができるかどうかを知りたいだけです。ネットワークが存在しない場合のイオン2のデータのリロード

Androidユーザーがネットワーク接続を持ち、変更を加えてデータベースを更新するとします。その後、ユーザーはネットワーク接続を失っても、デバイス上で変更を行います。彼らは明らかに接続せずにデータベースにデータを送信することはできません。

しかし、接続を再度受け取ると、接続がないときの変更は自動的に更新され、データベースに送信されます。どのように私はイオン2のフレームワークでそのようなことをするつもりですか?正しい方向に私を指差してください。

ありがとうございます!

答えて

1

はい、可能です。

SQLiteが必要です。 SQLiteサービスを作るのが最善です。


第1段階で最も重要なことは、データをオフライン/ローカルデータベースに保存することです。この場合、これはSQliteです。

ネットワーク接続がなく、ユーザがSQliteデータベースで作成したテーブルにデータを保存するときに、

その後、ネットワーク接続が可能な場合はアプリのホームページでチェックし、APIを使用してローカル/オフラインデータを外部データベースに送信するコール機能を確認します。 APIが成功メッセージを返すと、オフラインテーブルを空にできます。

sendMyOfflineData(){ 
    this._database.getOfflineTable().then((result) => { 
      this.OfflineTableList = <Array<Object>> result; 
      if(this.OfflineTable.length != 0){ 
      for(var i = 0; i < this.OfflineTable.length; i++){ 
       this._api.sendData(this.OfflineTable[i]).subscribe(res => { 
       if(res.status == true){ 
       this._database.deleteOfflineTable(); 
       } 
     }); 
      }} 
     }, (error) => { 
      console.log("ERROR: ", error); 
     }); 
    } 

詳細が必要な場合は、私がここにいます。

+0

ありがとうございます!これは通常のMySQL DBで行うことができますか? – userlkjsflkdsvm

+0

私が知る限り、イオンの適用範囲内では、残念ながらできません。しかし、SQLiteを使用すると、MySQLデータベーステーブルを複製し、APIを使用して同期することができます。 –

関連する問題