相关疑难解决方法(0)

从mediastore获取URI的文件名和路径

onActivityResult从mediastore图像选择返回,我可以使用以下内容获取图像的URI:

Uri selectedImage = data.getData();
Run Code Online (Sandbox Code Playgroud)

将其转换为字符串可以得到:

content://media/external/images/media/47
Run Code Online (Sandbox Code Playgroud)

或者路径给出:

/external/images/media/47
Run Code Online (Sandbox Code Playgroud)

但是我似乎无法找到将其转换为绝对路径的方法,因为我想将图像加载到位图而不必将其复制到某处.我知道这可以使用URI和内容解析器完成,但这似乎在重新启动手机时中断,我想MediaStore在重新启动之间不会保持其编号相同.

android uri absolute-path mediastore

376
推荐指数
12
解决办法
32万
查看次数

允许用户为图像选择相机或图库

我想做的事情似乎很简单,但经过几天的搜索,我无法弄明白.

我有一个应用程序,允许用户选择多个(最多5个)图像.我正在使用ImageView.当用户点击时ImageView,我想允许他们选择

  1. 从图库中选择图像,或
  2. 使用相机拍摄图像.

我开始使用ACTION_GET_CONTENT意图,这对于进入画廊非常有用.那么我尝试使用ACTION_PICK_ACTIVITY意图允许用户选择相机或图库:

Intent pickIntent = new Intent(Intent.ACTION_PICK_ACTIVITY);
Intent gallIntent=new Intent(Intent.ACTION_GET_CONTENT);
gallIntent.setType("image/*"); 
Intent camIntent = new Intent("android.media.action.IMAGE_CAPTURE");
pickIntent.putExtra(Intent.EXTRA_INTENT, camIntent);
pickIntent.putExtra(Intent.EXTRA_INTENT, gallIntent)
pickIntent.putExtra(Intent.EXTRA_TITLE, "Select Source");
startActivityForResult(pickIntent, IMAGE_SELECTOR);
Run Code Online (Sandbox Code Playgroud)

但似乎我只能添加一个EXTRA_INTENT.菜单按预期显示,但唯一的选项是图库和文件....没有相机).

有没有更好/更简单的方法来做到这一点,我错过了?谢谢你的帮助.

android android-intent android-gallery android-camera android-intent-chooser

149
推荐指数
9
解决办法
10万
查看次数

在从外部应用程序请求图像时,我的应用程序必须覆盖哪些intent-filters才能显示在选择器中?

我需要涵盖哪些可能的意图过滤器,以确保请求图像的任何外部应用程序将在列表中看到我的应用程序?

为了澄清,我希望在执行以下操作时显示我的应用:

在此输入图像描述 在此输入图像描述

到目前为止,我已经介绍过:

<intent-filter>
    <action android:name="android.intent.action.PICK" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
</intent-filter>
<intent-filter>
    <action android:name="android.intent.action.GET_CONTENT" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)

但是,如果使用Tumblr应用程序并按"添加照片",我的应用程序不会出现在选择器对话框中.我错过了哪个过滤器?

android android-intent

9
推荐指数
1
解决办法
4592
查看次数

Android:如何将从库中选择的照片设置为位图

我要求用户通过代码作为监听器访问图库:

Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, SELECT_PHOTO);
Run Code Online (Sandbox Code Playgroud)

但是,我对如何将变量设置为所选照片感到困惑.

在选择照片时,我会将代码放在哪里设置变量?

谢谢 :)

android photo gallery

5
推荐指数
2
解决办法
2万
查看次数