Я разработал приложение, в котором есть служба, делающая снимки в фоновом режиме.Хотя это приложение работает нормально на всех устройствах, которые я до сих пор пробовал (не на Motorola), я обнаружил, что при запуске его на Bionic Droid происходит сбой.
По сути, я делаю следующее:
- camera = Camera.open ();
- camera.setParameters (параметры);
- camera.setPreviewDisplay (null);
- camera.startPreview();
- camera.takePicture (null, null, callback);
Эта последовательность без проблем работает на разных устройствах HTC и Samsung, работающих от Android 2.2 до Android 2.3.4
Bionic работает под управлением 2.3.4, а метод takePicture создает исключение RuntimeException в android.hardware.Camera.native_takePicture (собственный метод)
Также я попытался удалить вызов setPreviewDisplay (null) но все равно вылетает.Есть ли какие-либо ограничения на Bionic, которые не позволяют делать снимок без поверхности?
Я выполнил все шаги, описанные здесь: http://developer.android.com/reference/android/hardware/Camera.html
Я думаю, что это специфическая ошибка на устройствах Motorola, но, возможно, кто-то может пролить свет на это в случае, если этоэто более общая проблема.
Большое спасибо заранее!