Ho una fotocamera personalizzata che funziona bene su alcuni dispositivi. Funziona bene su Samsung Galaxy Gran Duos (samsung-gt i9082, Android 4.2.2) ma quando provo a catturare un'immagine, che ho ingrandito prima, si blocca, nessun arresto, l'unico modo per uscire è premere il tasto tasto indietro. Questo succede solo nel Samsung Galaxy Gran Duos.Fotocamera Android bloccata dopo lo zoom
Il codice che ho usato per fare una foto:
Camera.PictureCallback photoCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
try {
} catch (Exception e) {
if (flePicture== null){
Log.d("camera", "Error creating media file, check storage permissions: " +
e.getMessage());
return;
}
}
try {
FileOutputStream fos = new FileOutputStream(flePicture);
fos.write(data);
fos.close();
} catch (FileNotFoundException e) {
Log.d("camera", "File not found: " + e.getMessage());
} catch (IOException e) {
Log.d("camera", "Error accessing file: " + e.getMessage());
}
}
};
E il codice utilizzato per lo zoom in:
private void zoomIn() {
if (pblnInPreview) {
Camera.Parameters parameters = camCamera.getParameters();
if ((parameters.getZoom() + 1) < parameters.getMaxZoom()) {
parameters.setZoom(parameters.getZoom() + 1);
camCamera.setParameters(parameters);
}
}
}
LogCat:
04-07 17:21:14.386: E/BrcmCamera(130): processControlBuffer: Corrupt stream error raised by camera - sensor communication failure
L'errore si verifica quando si riprendono immagini con tutte le risoluzioni? È accettabile scattare foto a una risoluzione inferiore sui dispositivi interessati? – samgak
@samgak: Sì, succede in tutte le risoluzioni. Nessun problema con la risoluzione più bassa, lo sto già usando! Grazie. –
Hai provato ad avviare l'anteprima dopo aver impostato i parametri? – Cynapsis