私はSamsungGalaxyS3を所有しています。これは、最大3000 x 2000のサイズの画像をキャプチャできます。また、現在、写真のキャプチャが必要なアプリケーションを開発しています。私は自分の電話をデバッガーとして使用し、デバイスが画像をキャプチャするために提供する可能な限り最高のサイズを設定します。
ただし、この設定を使用すると、コールバックは、キャプチャされたバイトをビットマップにデコードしようとするメソッドonPictureTaken
の最初の行でメモリ不足エラーを出します。Bitmap.decodeByteArray
を使用するBitmap.Options.inSampleSize = 2
と、メモリ不足エラーは発生しません。
私は、アプリケーションがデバイスが提供する最高のものをキャプチャできるようにしたいのですが、デバイスはそれ自体のカメラアプリケーションでこれを実行しますが、私にはできません。理解できない。どうすればこの問題を克服できますか?