ОШИБКА / MemoryFile: MemoryFile.finalize () вызывается, пока ashmem еще открыт - PullRequest
1 голос
/ 12 сентября 2011

Простое тестовое приложение: один ImageView, две кнопки и одна функция

public void onClick(View v)
{
    String photoId = (v.getId() == R.id.button1)?"2472":"2434";
    Uri uri = Uri.withAppendedPath(ContactsContract.Data.CONTENT_URI, photoId);
    ImageView img = (ImageView)findViewById(R.id.imageView1);
    img.setImageURI(uri);
}

Несколько раз я нажимаю кнопки - фотографии загружаются правильно.Но LogCat говорит (несколько строк): ERROR / MemoryFile: MemoryFile.finalize () вызывается, пока ashmem все еще открыт.
Хмм ...
Это проблема?Как использовать setImageURI?

1 Ответ

2 голосов
/ 01 октября 2011

Теперь я использую следующее:

final java.io.InputStream input = context.getContentResolver().openInputStream(uri); 
final Bitmap bm = BitmapFactory.decodeStream(input);
input.close();

imageView.setImageBitmap(bm);

Я не уверен, что это лучше, но на этом LogCat молчит.

...