找不到用于处理意图的活动{act = android.intent.action.PICK dat = content:// media / external / video / media}

问题描述

这个问题经过5天的努力,仍然没有任何可行的解决方案。最后想到了从这里寻求天才的帮助。 问题: 我正在尝试从图库中挑选一个视频(但在某些平板电脑版本28中),但遇到了上述异常。我想说一些是亚马逊平板电脑,所以我不确定是否需要对此进行任何特定的检查。 下面是我的代码

     private fun selectVideo() {
            val items = arrayOf<CharSequence>("Camera","gallery","Cancel")
            val builder = AlertDialog.Builder(this)
            builder.setTitle("Add Attachment")
            builder.setItems(items) { dialog,item ->
    
                if (items[item] == "Camera") {
                    val videoCaptureIntent = Intent(MediaStore.ACTION_VIDEO_CAPTURE)
                    videoCaptureIntent.putExtra(MediaStore.EXTRA_DURATION_LIMIT,20);
    
                    if (videoCaptureIntent.resolveActivity(packageManager) != null) {
                        startActivityForResult(videoCaptureIntent,REQUEST_VIDEO_CAPTURE)
                    }
                } else if (items[item] == "gallery") {
                    
                        val galleryIntent = Intent(
                            Intent.ACTION_PICK,android.provider.MediaStore.Video.Media.EXTERNAL_CONTENT_URI
                        )
                        startActivityForResult(galleryIntent,REQUEST_VIDEO_PICK)
    
                    }
                }
            }
            builder.show()
    
        }

非常感谢您的支持

解决方法

尝试以下代码

var intent = new Intent ();
intent.SetType ("video/*");
intent.SetAction (Intent.ActionGetContent);
intent.PutExtra (MediaStore.ExtraVideoQuality,0);
intent.PutExtra (MediaStore.ExtraDurationLimit,Globals.VideoMaxDuration);
this.StartActivityForResult (Intent.CreateChooser (intent,"Select video"),200);