2017-05-03 10 views
0

アンドロイド携帯を使用してオフライン支払いを実装するにはどうすればよいですか?

私がオフラインと言ったとき、それはその両方である可能性があることを意味しますユーザーはネットワーク接続を持っていますが、インターネット接続はありませんユーザーはネットワークを持っていません(インターネットもありません)
私はsqliteを使ってコンテンツをオフラインで保存し、ネットワークが利用可能なときにサーバーと同期させています。

私の質問は、2つのデバイスがオフライン(セルラーネットワークが利用できない)の間でデータを転送する安全な方法に関するものです。私が考えるいくつかのものです:(ネットワークが利用可能な場合)Androidでのオフライン支払いの保証

  1. SMS
  2. NFC

    注:アプリはすでに銀行からそれに転送クレジット(お金を)持っているそれ自身の財布を使用して、ときにオンラインです。

編集:ここで使用される両方のデバイスはAndroid携帯端末です。 "A"がNFCを使用して、オフラインモードでAとBの両方がオフラインで "B"に資金を移したとします。その後、Aは死んだ(永遠にオンラインになることはできない)が、Bはインターネットに接続した。今、BはAが彼にいくらかのお金を移したことをサーバーに伝えます。しかし、サーバは、Bが真実を伝えていると言ってAからの確認を持っていません

質問1:このシナリオにはどのように対処できますか?
質問2:オフラインモードで "B"に送金する "A"のNFCより良い方法はありますか?

+0

"私の質問は、オフラインで(携帯電話ネットワークが利用できない)2つのデバイス間でデータを転送する安全な方法です。" - 私はあなたが何を求めているのか明確ではありません。これらのデバイスの1つは、有料のユーザーのAndroidモバイルです。他のデバイスは何ですか?お支払いにはどのような役割がありますか? –

+0

どちらの端末もAndroid端末です。このシナリオを考えてみましょう。「A」はNFCを使用して、オフラインモードでAとBの両方がオフラインである「B」に資金を移しました。その後、Aは死んだ(永遠にオンラインになることはできない)が、Bはインターネットに接続した。今、BはAが彼にいくらかのお金を移したことをサーバーに伝えます。しかし、サーバーはBから真実を伝えているというAからの確認はありません。 質問1:このシナリオにはどのように対処できますか? 質問2:「A」がオフラインモードで「B」に送金するためのNFCより良い方法はありますか? –

答えて

0

SQLiteを使用して、オフライン時にモバイルデータベースにデータを格納し、後でSQLデータベースサーバーをオンラインで更新します。使用するthis link to understand sqlite

+0

私はこれが慎重に使用されるべきだと思います。なぜなら、ほとんどの決済システムは非常に寿命の短いセッションで動作するからです。だから、そこにどれくらいの時間がかかるのかを知らずにデータベースに何かを保管しておいて、返されたものを受け入れるサーバーが私にはかなり悪い考えです。 –

+0

ええ、@ArthurAttoutは言っています。長い間ユーザーはオフラインになります。また、ユーザーの1人がインターネットに永久に接続できない場合は、フォールバックが必要です。 –

+0

実際にPrabhuは、財布のようなシステムを考えています。そこでは、ユーザーがほとんどの財布のようにお金を入金する機能をユーザーに与えて、後でユーザーがそのクレジットをアプリケーション内で使用することができます。だから、ウォレットの場合は問題はありません。前にトランザクションが行われているので、クレジットをウォレットに追加すると、後で@prabhuは、使用されたクレジットをsqliteに保存し、それをマイナスしてオンラインデータベースのクレジットにします。 –

関連する問題