从Android上的新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 Photos应用程序的照片。如果我将数据类型更改为'video/*' only,照片应用程序返回视频。这是KitKat+

编辑:

我已经尝试了以下代码-它适用于一些画廊,但不与大多数,而不是谷歌照片:

    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);
        }        

然后当我得到结果时,我检查文件的类型。

最新更新