问题
I have included 'share via myApp' option. I inserted following code in the receiving activity class.
// Get the intent that started this activity
Intent intent = getIntent();
Uri data = intent.getData();
// Figure out what to do based on the intent type
if (intent.getType().indexOf("image/") != -1) {
// Handle intents with image data ...
}
What is the next step to retrieve bitmap image.
回答1:
As you have already get the Uri. Now you have to pass that Uri in getBitmap()
to get bitmap and use that bitmap.
Uri imageUri = intent.getData();
Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(),imageUri);
Imageview my_img_view = (Imageview ) findViewById (R.id.my_img_view);
my_img_view.setImageBitmap(bitmap);
回答2:
For getting bitmap from uri,
Bitmap mBitmap = Media.getBitmap(this.getContentResolver(), uri);
Hope this helps you.
回答3:
Retrive bitmap from uri.....
public static Bitmap decodeUriToBitmap(Context mContext, Uri sendUri) {
Bitmap getBitmap = null;
try {
InputStream image_stream;
try {
image_stream = mContext.getContentResolver().openInputStream(sendUri);
getBitmap = BitmapFactory.decodeStream(image_stream);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
}
return getBitmap;
}
回答4:
This is work for me
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK)
{
Uri imageUri = data.getData();
Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), imageUri);
}
}
回答5:
You can try this. You can call setPic() in onActivityResult method. I have used this in an application to take photos an put it in an ImageView.
private void setPic() {
//currentPhotoPath contains path of image file.
//visorFoto is a reference to an ImageView object.
File file = new File(currentPhotoPath);
Uri imageUri = Uri.fromFile(file);
visorFoto.setImageURI(imageUri);
}
回答6:
Please prefer this link.
This is what you are looking for How to get Bitmap from an Uri?
Try this it works for me:
public static Bitmap getBitmapFromURL(String src) {
try {
System.out.printf("src", src);
URL url = new URL(src);
HttpURLConnection connection = (HttpURLConnection) url
.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
Bitmap myBitmap = BitmapFactory.decodeStream(input);
System.out.printf("Bitmap", "returned");
myBitmap = Bitmap.createScaledBitmap(myBitmap, 100, 100, false);//This is only if u want to set the image size.
return myBitmap;
} catch (IOException e) {
e.printStackTrace();
System.out.printf("Exception", e.getMessage());
return null;
}
来源:https://stackoverflow.com/questions/20782713/retrieve-bitmap-from-uri