#android #camera #image #android-camera #android-camera-intent
#Android #камера #изображение #android-камера #android-camera-intent
Вопрос:
Мое приложение позволяет пользователям делать снимки с помощью камеры.
Я протестировал его на нескольких устройствах (Nexus S, Nexus One, HTC Magic и Galaxy S). Приложение отлично работало на первых 3 телефонах, но сбой произошел с Galaxy.
Это код, который я написал —
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE, "121.jpg");
values.put(MediaStore.Images.Media.DESCRIPTION,"Image capture by camera");
imageUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(cameraIntent, 2);
И это функция onActivityResult —
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
else if (requestCode == 2)
{
sun=getRealPathFromURI(imageUri);
File f = new File(sun);
thePic.setImageBitmap(decodeFile(f));
}
}
}
Результирующий код возвращается как 0 (не RESULT_OK), а затем приложение завершает работу.
Спасибо!
Комментарии:
1. Пожалуйста, добавьте вывод logcat. Это упростит поиск причины сбоя. Я сначала предполагаю, что это связано с тем фактом, что у SGS две камеры.
2. Пожалуйста, имейте в виду, что изменение параметров камеры в любой части вашего кода может вызвать проблемы на некоторых устройствах. В любом случае вывод logcat, несомненно, поможет выяснить, что происходит не так.