我在app中使用ANDROID_PICK或ANDROID_GET_CONTENT(两种方法的行为相同)。最低支持的版本是API 11。 所以我在不同的设备上测试了我的应用程序,并获得了一些不一致的东西扔了android版本:
其中一些是:
hbservice.com
当我使用getContentProvider()。openInputStream(uri);为了获得一个流给BitmapFactory,我收到了FileNotFoundException。
如何在不依赖Android版本的情况下获取所有这些图像?我认为openInputStream是一个很好的方法,但它似乎是假的。我遇到的问题只是针对本地内容的远程内容(Google +),我得到了图像,可以用它做我想做的事。
感谢您的帮助
答案 0 :(得分:0)
所以我找到了我搜索的内容。
通过照片应用从谷歌加和其他来源获取图片。
MediaStore.Images.Media.getBitmap(getContentResolver(), imageUri);
从三种方式收到imageUri:ACTION_GET_CONTENT,ACTION_PICK或Intent-Filter
对于ACTION_GET_CONTENT和ACTION_PICK:
public void onActivityResult(int requestCode, int resultCode, Intent returnIntent)
{
if(resultCode == RESULT_OK){
imageUri = returnIntent.getData();
}
}
对于Intent-Filter
protected void onCreate(Bundle savedInstanceState) {
Intent receiveIntent = getIntent();
if(receiveIntent != null && receiveIntent.getType() != null && receiveIntent.getType().contains("image/"))
{
imageUri = receiveIntent.getParcelableExtra(Intent.EXTRA_STREAM);
}
}