是否可以使用 Intent 设置 Android 录音允许的最长时间?
我正在使用 android.provider.MediaStore.ACTION_VIDEO_CAPTURE
。我想知道是否有办法更改每次录制允许的最长时间。我尝试添加 Intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT,60000);//最长 60 秒
但它继续记录这一点。提前致谢。
I am using the android.provider.MediaStore.ACTION_VIDEO_CAPTURE
. I was wondering if there is a way to change the maximum time allowed per recording. I TRIED ADDINGIntent.putExtra(MediaStore.EXTRA_DURATION_LIMIT,60000);//max of 60 seconds
but it continues recording pass that. Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
此代码在 API 2.2 上运行良好,但持续时间限制在 API 2.1 上不起作用
android.intent.extra.durationLimit
是在API Level 8
中引入的,因此不可用不幸的是,在闪电泡芙和更早的时候。一些设备制造商可能有一种专有的方法来设置旧设备上的最大持续时间,这解释了为什么您在某些 Froyo 之前的应用程序上看到了这种方法。This code works well on API 2.2, but the duration limit does not work on API 2.1
android.intent.extra.durationLimit
was introduced inAPI Level 8,
so it's not available in Eclair and earlier, unfortunately. Some device manufacturers may have a proprietary way to set the maximum duration on older devices, which explain why you have seen this working on some pre-Froyo applications.用 30 秒的时间,尝试这个代码。
For 30 seconds time, try this code.
以下是 Kotlin 更新,用于启动
ACTION_VIDEO_CAPTURE
Intent,并将EXTRA_DURATION_LIMIT
设置为 60 秒。至于putExtra(MediaStore.EXTRA_DURATION_LIMIT, 60)
以秒为单位作为持续时间限制的值。Here's a Kotlin update to launch
ACTION_VIDEO_CAPTURE
Intent withEXTRA_DURATION_LIMIT
set to 60 seconds. As forputExtra(MediaStore.EXTRA_DURATION_LIMIT, 60)
is taking in seconds as the value for the duration limit.使用这个,这里 60 是第二个
代码:
Use this,here 60 is second
Code:
使用 MediaRecorder
}
Use
MediaRecorder
}
实际上,
MediaStore.EXTRA_DURATION_LIMIT
提供的时间单位是秒,而不是毫秒!所以你只需要把你的值从 60000 改为 60 ;)
Android 文档
Actually,
MediaStore.EXTRA_DURATION_LIMIT
provide time in seconds, NOT in miliseconds!So you just need to change your value from 60000 to 60 ;)
Android Documentation