2016-03-07 5 views
0

Я могу показать изображения достижений с помощью ImageManager по методу URI getUnlockedImageUri, но по некоторым причинам мне нужно найти локальный путь к изображению, потому что я не хочу использовать ImageView и I нужен фактический путь к файлу изображениянайти локальный путь к getUnlockedImageUri

УИР Google Play Games достижение выглядит как этот content://com.google.android.gms.games.background/images/d2bbfba4/61, и я надеялся, чтобы иметь возможность преобразовать его в File объекта, как показано ниже:

File myFile = new File(ach.getUnlockedImageUri().getPath()); 
Log.i(ExConsts.TAG, "myFile.exists() = " + myFile.exists()); 
// returns false! 

Но что не работает! любая идея почему? или что еще я должен попробовать? или даже скажите мне, возможно ли это?

ответ

0

content:// Uri является явным признаком того, что либо

  • Там нет локального файла
  • Вы не имеют прямого доступа к локальному файлу

Как указано в getRevealedImageUri() Javadoc:

Чтобы получить изображение из Uri, используйте ImageManager.

Вы можете использовать ImageLoader.loadImage(OnImageLoadedListener, Uri), чтобы получить Drawable, который может быть отображен на Canvas с помощью Drawable.draw(Canvas).

Вы можете конвертировать Drawable в Bitmap используя что-то похожее на this answer, если хотите.

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