2017-06-28 10 views
3

LG Nexus(6.0)を使用しています。私は以下のコードを使用してビデオをキャプチャするためにカメラを使用しています。Android MediaStore.EXTRA_DURATION_LIMITが6.0とuperバージョンのデバイスで動作しない

Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); 
    fileUri = getOutputMediaFileUri(MEDIA_TYPE_VIDEO); 
    // set video quality 
    intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); 
    intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 30); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); 

以下のコードを使用して期間制限を与えました。

intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 30); 

カメラは継続時間の制限を無視しているようです。いずれの6.0デバイスでも動作しません。 6.0 +デバイスでビデオのキャプチャ時間を制限する別の方法はありますか?

+0

この問題は、バージョンが2.5.052(2005148-30)より大きいGoogleカメラアプリケーションでのみ発生することも確認しました。 現在、Playストアでは、このバージョンを使用してGoogleカメラアプリのバージョンが「3.2.045(2821762-30)」となり、簡単にこの問題を再現できます。以前はGoogleカメラEXTRA_DURATION_LIMITがV2.5.052で動作していました。 –

+0

すべてのソリューション? –

答えて

2

カメラは継続時間の制限を無視しているようです。 6.0のデバイスでは動作しません。

数百万のメーカーから数千のデバイスモデルに広がっている約20億個のAndroidデバイスがあります。これらのデバイスには、数百種類のプリインストールカメラアプリと、ユーザーがインストールしたカメラアプリが含まれています。いずれも、ACTION_VIDEO_CAPTUREリクエストに応答するものであればどれでもかまいませんし、いずれにもバグがある可能性があります。この問題はAndroid OSのバージョンには関係しません。

6.0 +デバイスのキャプチャビデオの期間を制限する他の方法はありますか?

ACTION_VIDEO_CAPTUREではありません。あなたはサードパーティ製のアプリケーションに作業を委任しており、そのアプリケーションは必要なものを何でもできます。

フルコントロールを使用する場合は、MediaRecorderをご自分のコードで直接使用するか、サードパーティのライブラリから入手してください。

+0

この問題は、バージョンが「2.5.052(2005148-30)」より大きいGoogleカメラアプリケーションにのみ存在することも確認しました。 現在、Playストアでは、このバージョンを使用してGoogleカメラアプリのバージョンが「3.2.045(2821762-30)」となり、簡単にこの問題を再現できます。以前はGoogleカメラEXTRA_DURATION_LIMITがV2.5.052で動作していました。 –

関連する問題