2012-04-30 4 views
0

私は、ユーザーが写真を撮ってIsolatedStorageに保存できるアプリを持っています。次に、これらの画像を検索してリストに表示します。このアプリは、リストに30以上の画像がある場合、パフォーマンスの問題を抱えています。これらのイメージをストレージから取り出してリストにバインドするのに時間がかかります。多くの場合、アプリはあまりにも時間がかかるので、OSによって閉鎖されます。windows phone appで画像を操作する - 性能

さらに、より良い解像度のデバイスが市場に登場するにつれて、イメージはより大きなサイズで作成され、パフォーマンスにさらに影響を与えていると思います。

解決方法に関するガイダンスが必要です。私が抱いていることのいくつかについて: 1)ISから取得するすべてのイメージを非同期で取得して、ページをロードできるようにするにはどうすればよいですか?イメージは非同期の方法で取得されています。任意のサンプルコードが評価されます。 2)もう1つのアプローチは、元の写真を保存している間に実際の写真のサムネイル写真(小さいサイズと解像度)を作成し、このサムネイル写真を後でリストにバインドするときに使用します。これを行う必要がある場合は、元の写真のサムネイルバージョンを小さくするために、その場で画像を処理する方法を教えてください。

その他のアイデアも高く評価されています。 お時間をいただきありがとうございます。

+0

アプリが閉鎖される理由は、メモリの問題である可能性が高く、アプリが長すぎます – thumbmunkeys

答えて

1

あなたは、私がから画像をロードするコードをAsync CTPを使用して行うことをお勧めすることができるならば分離ストレージ非同期。サムネイルを生成するメソッドも非同期にすることができます。

これを行うことができない場合(これらの依存関係をプロジェクトに追加する場合)は、BackgroundWorkerを使用してください。おそらくthisの記事で始めることができます。

これにより、処理がバックグラウンドのスレッドで処理されている間、UIが応答可能になります。

1

SQL Serverとして分離ストレージをふりかえしてはいけません。パフォーマンスに大きな違いがあります。あまりにも多くのデータを処理したい場合は、サーバーに送信してください。

ただし、サムネイルを取得する方法があります。あなたはそれを使用することができます。

http://msdn.microsoft.com/en-us/library/system.drawing.image.getthumbnailimage.aspx

また

は、この答えを確認してください。

Create thumbnail image

関連する問題