Я пытаюсь выяснить, почему я не могу передать фотографию Uri (Uri.parse (http://url/image.png))) приложению контактов через ContactsContract.Directory
У меня есть веб-сервис, который позволяет искать в адресной книге. Одним из возвращенных полей является 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.
Буду признателен за любую помощь.