2011-12-14 13 views
5

Basato su this article, Sto provando a scattare la foto dalla fotocamera su Android Emulator. Ho seguito le istruzioni come hanno detto. Ma non ho ottenuto il risultato positivo.Come catturare la foto dalla fotocamera su Android Emulator?

Sto ricevendo il Player è null, mentre sto eseguendo il WebcamBroadcaster.java (Applicazione Java).

Qualcuno lo ha già raggiunto? Se sì, fammi solo come fare.

O

C'è qualche altra opzione per acquisire la foto dalla macchina fotografica su Android Emulator?

+0

Questi collegamenti possono essere utili con codice e guida:
http://www.inter-fuser.com/2009/09/live-camera-preview-in-android-emulator.html http: // docs. phonegap.com/en/1.0.0/phonegap_camera_camera.md.html http://developer.appcelerator.com/question/127948/timed-photo-capture-in-android – Rizvan

risposta

9

In emulatore di Android 2.1 il mio codice è al lavoro per catturare l'immagine ma non funziona nella versione di Android altri

Per iniziare fotocamera per la cattura si può iniziare fotocamera per la cattura usando sotto filtro intento

Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
startActivityForResult(i, CAMERA_RESULT); 

Dopo la cattura si otterrà l'immagine come bitmap quindi è necessario ottenere il risultato di attività

if (resultCode == RESULT_OK && requestCode == CAMERA_RESULT) { 
    Bundle extras = data.getExtras(); 
    if(extras.containsKey("data")) { 
     Bitmap bmp = (Bitmap) extras.get("data"); 
     ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
     bmp.compress(Bitmap.CompressFormat.PNG, 100, baos); 
     byte[] image = baos.toByteArray(); 
     if(image != null) { 
      //User this byte array in your application 
     } 
    }else { 
     Toast.makeText(getBaseContext(), "Fail to capture Image", Toast.LENGTH_LONG).show(); 
    } 
} 

Edit:

Ora quasi in tutti gli emulatori di questo codice sta funzionando.

+0

Grazie. Sto usando la versione Android 2.3.3.C'è qualche altra opzione? – bharath

+0

In emulatore c'è un problema solo la fotocamera funziona per Android-2.1 ma in tutti i dispositivi funzionerà bene in cui c'è un hardware della fotocamera quindi per scopi di test è possibile utilizzare Emulatore con Android 2.1 – Dharmendra

+0

Grazie Dharmendra. – bharath

2

Come ha menzionato nel suo articolo, ha scritto questo codice in fretta e potrebbe quindi essere un po 'bacato. Non si dice che funzioni dappertutto.

Im supponendo che il utilizzando esattamente questo codice per eseguire questa cosa:

CameraSource cs = new SocketCamera("192.168.0.100", 9889, 320, 240, true); 
if (!cs.open()) { /* deal with failure to obtain camera */ } 
while(/*some condition*/) { 
    cs.capture(canvas) //capture the frame onto the canvas 
} 
cs.close(); 

Qual è, tra l'altro, lo scopo principale di fare queste cose? Tutte le cose allineate alla telecamera dovrebbero essere testate in modo esauriente su un dispositivo reale, perché possono causare un sacco di problemi che non si verificano in un emulatore. L'implementazione della telecamera della fotocamera è solo a scopo di debug/testing!

Consiglio vivamente di non spendere troppo tempo per ottenere questo funzionamento, non vi porterà molto lontano. Tuttavia, non è stato ancora testato su un dispositivo reale, il che sarebbe il più importante.

Spero di non ha deluso troppo con questa risposta:/

+0

Anche se sono d'accordo con la tua risposta, devo Diciamo che ci sono alcune situazioni in cui è difficile testare su un dispositivo reale. Nella mia situazione attuale, collaudo sul mio telefono Android personale al lavoro e non mi è stato fornito un dispositivo reale e allo stesso tempo non ho il permesso di collegarmi al server di lavoro sul mio telefono personale. La mia applicazione ha implementato il codice O zxing - e sì posso verificare se funziona sul dispositivo - per vedere se lo legge correttamente, ma non posso inviare questa informazione al server - dal momento che non posso connettermi ad esso. – ryvianstyron

Problemi correlati