Приведенный ниже код запрашивает новое изображение, обрезает его и записывает данные во временный файл. Он очень хорошо работает на HTC Desire HD с Android 2.2.1.
Но на Huawei Ideos с Android 2.2 приложение камеры останавливается (приложение неожиданно остановило камеру), и мое приложение продолжается без снятия изображения. Схожая проблема (вероятно, та же самая) была зарегистрирована пользователем с EVO 4G, Android 2.3.3.
На телефоне Ideos я не вижу рамки обрезки после съемки изображения, поэтому я предполагаю, что именно здесь происходит сбой приложения камеры, и я предполагаю, что это может зависеть от реализаций приложения камеры для конкретного устройства. У кого-нибудь есть решение?
case 1:
Uri mSavedUri = Uri.fromFile(new File(basepath + "/temp" + imgExtension));
Intent newphoto = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
newphoto.putExtra("crop", "true");
newphoto.putExtra("outputX", imageSizeX);
newphoto.putExtra("outputY", imageSizeY);
if (imageAspect == 0) {
newphoto.putExtra("aspectX", 1);
newphoto.putExtra("aspectY", 1);
}
if (imageAspect == 1) {
newphoto.putExtra("aspectX", 4);
newphoto.putExtra("aspectY", 3);
}
if (imageAspect == 2) {
newphoto.putExtra("aspectX", 3);
newphoto.putExtra("aspectY", 4);
}
newphoto.putExtra("scale", true);
newphoto.putExtra("noFaceDetection", true);
newphoto.putExtra("setWallpaper", false);
newphoto.putExtra("output",mSavedUri);
startActivityForResult(newphoto, NEW_PHOTO);
break;