2016-08-10 6 views
0

私はAndroidアプリを作成しています。このために、私はrecyclerviewを作成しました。これは画像とテキストで埋められます。今まで私はソケットとバイト[]でサーバから画像を取得しました。私のアプリでは、これをビットマップに変換しました。しかし、それは最高のパフォーマンスではありません。ピカソとURLで画像を取得する必要がありますか?これはより良いパフォーマンスですか?送信バイト[]または画像のURL

+1

'私は、ソケットと私のサーバーからイメージを持っているし、バイト[]。私のアプリでは、これをビットマップに変換しました。しかし、それは最高のパフォーマンスではない。パフォーマンスが良くない理由はありません。あなたの意見でボトルネックはどこですか? – greenapps

+0

@greenapps私はピカソのようなものではなく、イメージを「正常」と計算して設定しています。私はこれも多くのパフォーマンスを取ることができると思う。 – user6586661

+0

私はすでにあなたがピカソや他の図書館を使わなかったことを理解しています。 「これでも多くのパフォーマンスが得られると思う」とはどういう意味ですか? 'パフォーマンスを取る'?それはあなたが意味する多くの時間がかかりますか?繰り返しますが、自分がパフォーマンスを悪化させてしまうという理由はありません。 – greenapps

答えて

1

一般に、APIのAndroidアプリまたはiOSアプリでは、画像URLを取得する必要があります。画像ローダーライブラリを使用することにより、そのデータを読み込みます。

アンドロイド用のほとんどの開発者は、画像を読み込むためのユニバーサル画像ローダーまたはピカソを好んでいます。

1

PicassoやUniversalILのような画像ローダライブラリに依存するのが、キャッシング、ダウンサンプリング、さらにはエラー処理さえも管理することが最善です。 Androidはビットマップに対して非常に敏感です。適切な管理がなければ、悪名高いものを含む多くの例外があります:BitmapOutOfMemory。

1

画像が保存される場所は3つあります。メモリ空間の可用性とアクセシビリティの速度に彼らの比較は以下の通りです:

  1. サーバー(メモリ空間は高いが、アクセシビリティは遅いです)

  2. モバイル上

    ハードディスク(メモリ空間がMEDIUMであるとアクセシビリティはMEDIUMです)

  3. ヒープメモリ(メモリ空間はLOWであるとアクセシビリティはFASTです)私たちは、BALを作成する必要が

アクセシビリティとメモリ空間を最適に活用するために、上記の3つの場所の間に配置してください。

は、ピカソやUILなどの任意の遅延ロードライブラリを使用して、すべて自分自身を処理します、あなたはこれらのpoints.Itのいずれかを心配する必要はありません:)

関連する問題