android - 从 Android 上新的 Google 相册应用程序获取照片和视频

标签 android android-intent google-photos

我希望用户将一堆视频/照片导入到我的应用中。这是我之前使用的代码:

        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
        intent.setType("image/*,video/*");
        activity.startActivityForResult(intent, REQUEST_CODE_PICK_MEDIA);

我遇到的问题是,上面的内容仅返回来自新 Google 相册应用的照片。如果我仅将数据类型更改为“视频/*”,照片应用程序会返回视频。这是用于 KitKat+ 的

编辑:

我已经尝试了以下代码 - 它适用于某些画廊但不适用于大多数画廊而不是 Google 相册:

    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
    intent.addCategory(Intent.CATEGORY_OPENABLE);
    intent.setType("*/*");
    if (AndroidHelper.isKitKatAndAbove()) {
        Log.d(TAG, "Pick from gallery (KitKat+)");
        String[] mimeTypes = {"image/*", "video/*"};
        intent.putExtra(Intent.EXTRA_MIME_TYPES, mimeTypes);
        intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
        activity.startActivityForResult(intent, REQUEST_CODE_PICK_MEDIA);
    } else {
        Log.d(TAG, "Pick from gallery (Compatibility)");
        activity.startActivityForResult(intent, REQUEST_CODE_PICK_MEDIA);
    }

最佳答案

这就是我最终做的:

        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.setType("*/*");
        if (AndroidHelper.isKitKatAndAbove()) {
            Log.d(TAG, "Pick from gallery (KitKat+)");
            intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
            activity.startActivityForResult(intent, REQUEST_CODE_PICK_MEDIA);
        } else {
            Log.d(TAG, "Pick from gallery (Compatibility)");
            activity.startActivityForResult(intent, REQUEST_CODE_PICK_MEDIA);
        }        

然后当我得到结果时,我检查文件的类型。似乎工作正常。

关于android - 从 Android 上新的 Google 相册应用程序获取照片和视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30628090/

相关文章:

android - 升级到 Android Studio 2.3 后出现 "package android.support.multidex does not exist"

android - 无法从新的 Google 相册应用中同时选择照片和视频

android - 如何限制 Android EditText 字段中的特殊字符?

android - 处理程序中的问题与 android 中的消息

android - react native - "undefined is not an object react native evaluating this.props.navigation"

android - 如何在调用 onNewIntent() 时检测我的 Android Activity 是否已经在运行?

android - 我如何从 Intent 中获取 Uri?

android - 添加 Intent 过滤器以监听 SMS 事件上的 ACTION_VIEW

java - 将照片上传到 Google Photos API 不返回上传 token

google-api - 位置数据 Google Photos API