Android如何回应ACTION_VIEW / ACTION_SEND?

时间:2011-05-09 02:34:53

标签: java android android-intent

我似乎无法想象这一点:我如何回应ACTION_VIEW和ACTION_SEND意图?我将它们放在我的清单文件中(它们出现在应用程序的下拉列表中)。我需要做的是响应这些意图并检索相应图像的位图。

现在这是有效的:

Uri uri = (Uri) extras.getParcelable(Intent.EXTRA_STREAM);
Bitmap mBitmap = BitmapFactory.decodeStream(cr.openInputStream(uri));

然后我拿起那个uri并获取一个位图。但是,如果我在电子邮件应用下载并且图片getExtras()null时回复,则会收到错误。

基本上我需要知道在这里放什么来填充变量mBitmap

if (Intent.ACTION_SEND.equals(action) || Intent.ACTION_VIEW.equals(action))
{
    Uri uri = (Uri) extras.getParcelable(Intent.EXTRA_STREAM);
    Bitmap mBitmap = (getExtras() == null) ? what goes here :
        BitmapFactory.decodeStream(cr.openInputStream(uri)) 
}

1 个答案:

答案 0 :(得分:1)

getIntent().getData()将包含Uri所针对的Intent