2016-05-12 2 views
0

У меня проблема, когда хочу получить мои фотографии из Dropbox и загрузить его в GridView, и я тоже хочу использовать Picasso в адаптере. метод загрузки() будет иметь загружаемый URL,Загрузить фото с фотоаппаратов Picasso?

PS: Я использую Dropbox Android SDK 1.6.1

, если я использовал метод СМИ() и извлечение URL из раздаточных вроде этого:

// Get the metadata for a directory , | request | 
DropboxAPI.Entry dirent = Log_in.mApi.metadata(Log_in.APP_DIR + "/images/", 1000, null, true, null); 
if (!dirent.isDir || dirent.contents == null) { 
    // It's not a directory, or there's nothing in it 
    mErrorMsg = "File or empty directory"; 
    //return false; 
} 

// Make a list of everything in it that we can get a thumbnail for 
thumbs = new ArrayList<>(); 
imagePath = new ArrayList<>(); 
for (DropboxAPI.Entry ent : dirent.contents) { 
    if (ent.thumbExists) { 
     // Add it to the list of thumbs we can choose from 
     thumbs.add(ent); 
     // do another requests (many requests to dropbox to get the urls , and this is terrible it takes request time for each image ! 
      imagePath.add(Log_in.mApi.media(ent.path,true).url); 
     } 
    } 

не Розыгрыши вообще Потому что это займет так много времени, чтобы каждый URL это сценарий:

  1. Поиск изображения в фотографии папки (1 запрос)
  2. Использование [media] [1] для получения прямого URL-адреса (запросы 1 * (изображения))
  3. Использование Picasso в адаптере (запросы 1 * (изображения)) У меня будет счет (изображения) * 2 + 1 кол-во запросов

ужасно, нужно лучшее решение.

PS: я попытался это https://medium.com/@jpardogo/requesthandler-api-for-picasso-library-c3ee7c4bec25#.wpmea1eci

но код не полный есть некоторые классы не урегулированные/существуют и некоторые переменные не определены.

поэтому любой человек получил представление о том, как работать с изображениями Dropbox api, используя picasso.

+0

Вы можете загрузить эскизы непосредственно вместо использования медиа-ссылок: https://www.dropboxstatic.com/static/developers/dropbox-android-sdk-1.6.3-docs/com/dropbox/client2/DropboxAPI.html#getThumbnail(java.lang.String ,% 20java.io.OutputStream,% 20com.dropbox.client2.DropboxAPI.ThumbSize,% 20com.dropbox.client2.DropboxAPI.ThumbFormat,% 20com.dropbox.client2.ProgressListener) – Greg

+0

@Greg метод загрузки входного потока загрузки picasso cant и drob загрузка pox зависит от входного потока. – mhdjazmati

ответ

1

я думаю, что есть образец из раздаточных об этом, попытайтесь проверить эту ссылку dropbox sample

есть 2 файлов, которые вы должны увидеть PicassoClient.java И FileThumbnailRequestHandler.java

+0

Как я могу запустить пример? –

+0

просто клонирует репо с помощью git и импортирует проект в примеры папок из Android Studio. –

Смежные вопросы