2017-02-09 2 views
0

私は新しいAndroidデベロッパーで、私が遭遇した問題に関するアドバイスを利用することができます。AmazonはAmazon APIのデータをローカルに保存して読み込み時間を短縮しますか?

私は、あなたが開いたほぼすべてのアクティビティで、Amazon Product APIからデータをクエリしているアプリを持っています。私はデータを取得することができますが、私は常にAPIクエリを実行しているので、アクティビティは永遠にロードされます。

アプリは基本的にビデオゲームレビューアプリです。ユーザーが同じデータをゲームに複数回ロードすることは珍しいことではありません。私はapiに同じデータを何度も繰り返し呼び出すことは非常に非効率的だと考えています。

私の質問は、Amazon APIからデータを取得するたびにゲームデータをローカルまたはリモート(Firebase)データベースに保存する必要がありますか?そして、データを取得する必要があるときはいつでも、APIコールを行う前にデータベースにそのデータが存在するかどうかチェックします。

これが正しい場合、データ(共有設定、SQLlite、内部ストレージなど)はどこに保存する必要がありますか?そうでない場合は、アプリをより速く表示する&のデータを表示させるにはどうすればよいですか?

答えて

0

アクティビティが永久にロードされると言うときは、アクティビティ内からこれらのコールを行っていないと仮定します。そして、あなたの質問に1つずつ答えてください。

1)共有設定は適切なオプションではありません。 (多くのことを持続させる必要がある場合にのみ、共有のプリファレンスを使用してみてください)。この場合、データベースのヘルパークラスを作成する作業を節約したい場合は、データ(内部ストレージ)をシリアル化できます。それは私の意見ではローカルにデータを保存することが望ましい。

2)データを常に要求するとは限りません。ユーザーがデータをリフレッシュしたいときにのみ更新してください(ハッシュしないようにしてください)。または、一定時間間隔でデータを更新することもできます。これには、サービスアラームマネージャーを使用して、アプリケーションが実行されていなくてもレビューをバックグラウンドでアップグレードする必要があります。あなたはそれについて読む必要があります。

関連する問題