2017-10-25 12 views
1

私は練習用のクイズアプリを設計しています。主なコンセプトは、テキストとイメージの両方を含むDBテーブルに質問を格納することです(イメージの場合、DBエントリにはイメージファイルのパスが含まれます)。DBに画像を保存する

多数の画像ファイルを保存するための最も良い/共通のオプションは何ですか?

アプリの内部スペースにそれらを保存すると、私のアプリのインストールファイルが膨大になりますか?例えば。 1000KBの画像が100KBあれば、アプリのインストールファイルが100MB以上になるでしょうか?

ウェブサーバーに保存された画像をAndroidアプリでダウンロードするのが最も良い方法です。または、内部空間に少数のイメージを格納し、それらをバックグラウンドでWeb Serverのデータで定期的に更新/置換することができるため、ユーザーエクスペリエンスにあまり遅延はありませんか?

ありがとうございます!

答えて

0

私は間違いなくWebサーバーのダウンロードオプションに行きます。実装の柔軟性を提供し(別のプラットフォームに公開したい)、アプリのサイズを小さく保ちます。あなたはダウンロードした後であなたのアプリに画像をキャッシュすることができます。私は間違いなくそれを継続して再ダウンロードする必要はありません。

0

モバイルで最も最適な方法は、画像URLを含むすべてのデータを返すAPIを作成することです。データをデータベースにローカルに保存することもできますが、新しいデータの場合は新しいバージョンのアプリをリリースする必要があることに注意してください。

  1. SQLite
  2. Realm
  3. GreenDAO
  4. Sugar ORM
:データベースの場合

データベース

オプションがたくさんあります

P.S:上記のすべてをプロフェッショナルなプロジェクトで使用し、Realmが最も高速で信頼性が高く使いやすいことが分かりました。

  1. Glide
  2. Picasso
  3. Universal Image Loader

W:

画像を表示

は、URLを使って画像を表示するためのオプションの(再)たくさんありますこれらのライブラリのいずれかがあなたがしなければならないことは、どのURLをロードするのかを伝える1行を書くことです。ImageViewです。

P.S:私はプロのプロジェクトで上記のすべてを使用しており、最も速く、信頼性が高く、使いやすいGlideが見つかりました。

0

まあ、複数のオプションがあり、あなたは正しい方向に考えていると思います。最近ほとんどのスマートフォンユーザーはインターネットを利用しているため、画像をダウンロードすることは問題ありません。また、あなたが求めたすべての可能性があります。 Google Playでは、apkのほかに余分なデータをアップロードすることもできます。これは多くのゲームで行われます。

私はこれを行うための最良の方法は、どの画像が必要なのかを判断することです。例えば。あなたは複数のレベルやゲームの種類を持っていますが、実際に必要なときにコンテンツをダウンロードすることもできます。また、小さな「プレビュー」画像を使用してAPKに保存し、ユーザーがWiFi接続しているときにフルサイズの画像をダウンロードすることもできます。

.pngの代わりに.webp形式を使用すると、画像のサイズを小さくする別の方法があります。もっとここで読む:

https://developer.android.com/studio/write/convert-webp.html

を、私は正確に画像の量を知らないか、それが目的ですので、これらの提案は、単なるアイデアのあることに注意してください。