相关疑难解决方法(0)

Android 4.4(KitKat)上的Android Gallery为Intent.ACTION_GET_CONTENT返回不同的URI

在KitKat之前(或在新Gallery之前)Intent.ACTION_GET_CONTENT返回这样的URI

内容://媒体/外部/图像/媒体/ 3951.

使用ContentResolver和quering MediaStore.Images.Media.DATA返回文件URL.

但是在KitKat中,Gallery会返回一个URI(通过"Last"),如下所示:

内容://com.android.providers.media.documents/document/image:3951

我该如何处理?

android android-intent android-contentresolver android-gallery

212
推荐指数
9
解决办法
18万
查看次数

仅适用于本地文件的Android图像选择器

我正在使用内置的Android图像选择器,如下所示:

Intent photoPickerIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
m_activity.startActivityForResult(photoPickerIntent, PHOTO_PICKER_ID);
Run Code Online (Sandbox Code Playgroud)

有没有办法限制它只显示本地可用的文件.在我的设备上,它目前正在拾取Picasa缩略图,我想要排除设备上实际不存在的所有图像.

android picasa image picker

16
推荐指数
1
解决办法
1万
查看次数

Android只从图库中获取图片

我正在尝试使用内置图库获取图像.它在模拟器中运行良好,它只打开图库但在真实设备上它给我多个选择其中一个是文件管理器,这使我能够选择任何类型的文件甚至apk文件当然应用程序崩溃后,我有这个代码

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main); 
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(Intent.createChooser(intent,"Select Picture"), SELECT_PICTURE);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);


    if (resultCode == RESULT_OK) {  


    switch(requestCode){    

         case SELECT_PICTURE:
              Uri selectedImageUri = data.getData();


          break;
        }  
      }  
Run Code Online (Sandbox Code Playgroud)

}

android gallery

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

在API级别19以下的Android中选择文件或图像时,如何限制Google驱动器选项不显示?

我是Android的新手,我要求在API级别19以下的设备上选择文件.

我试过了

private void chooseFile() {
        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
             intent.setType("application/pdf|file");
        } else {
             intent.setType("image/*|application/pdf");
        }
        startActivityForResult(intent, PICKFILE_REQUEST_CODE);
}
Run Code Online (Sandbox Code Playgroud)

现在我不希望Google驱动器作为选项出现,我想要文件管理器作为选项.我想用意图来做这件事.

任何人都可以建议我如何实现这一目标?

android android-intent

8
推荐指数
2
解决办法
2230
查看次数