2011-09-15 13 views
0

私は写真ウリ(Uri.parseます(http://url/image.png))を渡すように見えることはできませんなぜ私が把握しようとしていますContactsContract.Directory連絡先ディレクトリ - 写真はどのように返されますか?

を経由して連絡先アプリに私が持っていますアドレス帳の検索を可能にするウェブサービス。返されるフィールドの1つは、私が確認したウェブサーバー上の連絡先のURLがHoneycomb Tabletからアクセス可能であることです。

私のContactsContract.Directoryは完璧に結果を返すように動作しているようですが、FILTERクエリContacts.PHOTO_THUMBNAIL_URIの一部として返信すると、Uri.parse(http://url/image.png)の検索結果まだ期待どおりに戻りますが、私はまだ一時テンプレートだけを表示します。

ディレクトリクエリのuriには、写真をサポートするオプションがあります。

if (column.equals(Directory.PHOTO_SUPPORT)) { 
        row[i] = Directory.PHOTO_SUPPORT_FULL; 
       } 

私はDirectory.PHOTO_SUPPORT *のすべての組み合わせを試してみましたし、どれも違いを作るように見えるん。

私の唯一の考えは、連絡先アプリはURLからの写真のダウンロードをサポートしていないということです。だから私も試しました

File myFile = new File("/sdcard/testuser.jpg"); 
row[photoUri] = Uri.fromFile(myFile); 

そして、私はtestuser.jpgがsdcardにあることを確認しました。これはうまくいった。しかし、ディレクトリの検索が行われる方法のために、私はそれを即座に読み込み、sdcardへのキャッシュ(当面)はしません。

ご協力いただければ幸いです。

+0

私は経由でストリームをバック合格するために必要なすべてのものが見つかりました:[http://stackoverflow.com/questions/3883211/how-to-store-large-blobs-in-an-android-contentを-provider] [1] [1]:http://stackoverflow.com/questions/3883211/how-to-store-large-blobs-in-an-android-content-provider – Chrispix

答えて

0

私は答えを見つけたと思います...例外がVerboseに記録されているようです(私のlogcatをDebugに設定していました)。とにかく、これについてはかなり確信していましたが、http uriのプロバイダがないように見えます。コンテンツプロバイダからイメージを返す方法はわかりませんが、それを理解することはできません。どんなヒント/ヒントも評価され、回答クレジットが与えられます。

09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691): java.io.FileNotFoundException: No content provider: http://domain/testimage.jpg 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:595) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:527) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at android.content.ContentResolver.openInputStream(ContentResolver.java:362) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at com.android.contacts.ContactPhotoManagerImpl$LoaderThread.loadRemotePhotos(ContactPhotoManager.java:722) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at com.android.contacts.ContactPhotoManagerImpl$LoaderThread.loadPhotosInBackground(ContactPhotoManager.java:652) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at com.android.contacts.ContactPhotoManagerImpl$LoaderThread.handleMessage(ContactPhotoManager.java:563) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at android.os.Handler.dispatchMessage(Handler.java:95) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at android.os.Looper.loop(Looper.java:132) 
09-16 10:20:25.550: VERBOSE/ContactPhotoManager(11691):  at android.os.HandlerThread.run(HandlerThread.java:60) 
関連する問題