Problem mit Kamera - Trotz Google

  • Antworten:0
  • Bentwortet
Tino R.
  • Forum-Beiträge: 40

15.06.2012, 21:14:27 via Website

Hey Leute,

Vor einigen Tagen habe ich angefangen, mich mit der Entwicklung von Apps für Android zu beschäftigen - Java konnte ich idealerweise ja schon "gut".
Jetzt habe ich mein Handy ( Android 2.3.6 ) per USB an den Computer angeschlossen, Eclipse angeworfen und mir versucht, ein Kamerabild zu basteln, dass erst einmal "life" auf dem Display geworfen wird.
Dazu habe ich, wie es irgendwo empfohlen wird, einen Wrapper "geschrieben" ( angeguckt, wie die das gebaut haben, nachgebaut ) und den dann entsprechend eingebunden. Den Wrapper habe ich einfach mal bei pastebin.com hochgeladen - auch wenn der hier wenig zur Sache tut.
Mein Problem ist, dass mein Handy sich weigert, mir Zugriff auf die Kamera zu geben - die Fehlermeldung lautet:
1Failed to connect to camera device
Per Google wurde ich darauf hingewiesen, dass keine andere App die Kamera blockieren darf. Also mit "Advanced Task Killer" alles gesperrt, dann die App noch einmal ( per Eclipse ) gestartet.
Der Ablauf ist ungefähr so:
  • App wird gestartet
  • Versuchter Zugriff auf Kamera - Bildschirm bleibt schwarz
  • App stürzt ab, "failed to connect..."

onCreate sieht so aus:
1public void onCreate(Bundle savedInstanceState)
2 {
3 super.onCreate(savedInstanceState);
4 requestWindowFeature(Window.FEATURE_NO_TITLE);
5 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
6
7 setContentView(R.layout.main);
8 sfv = (SurfaceView)findViewById(R.id.preview);
9
10 if(Camera.getNumberOfCameras() == 0)
11 {
12 Toast.makeText(getApplicationContext(), "Keine Kameras vorhanden !", 5).show();
13 finish();
14 }
15
16 camera = Camera.open(0);
17
18 snpv = new FastSnapshotPreview(camera, sfv);
19 }

Noch mal ganz genau den Ablauf:
  • SurfaceView wird gefunden
  • Kamera wird geöffnet
  • Der Wrapper wird erstellt
    • Es wird ein Holder für den SurfaceView erstellt
    • Dem Holder wird der Callback hinzugefügt
    • Beim Callback kommt "surfaceChanged"
    • die Kamera wird eingestellt
    • die Kamera wird auf den SurfaceView "gestreamt"

Vielleicht könnt ihr mir ja helfen :)

(e: Hat sich erledigt - habe einfach den Code aus diesen Tutorial genommen )

— geändert am 15.06.2012, 22:36:14

Antworten