Kamera Blitzlicht einschalten

Hallo,
ich würde gerne mein Kameralicht mit einer App steuern.
Ich habe mich im Internet informiert und mehrere Code schnipsel gesehen.
Jedoch klappen diese nicht weil manche Funktionen komischerweise nicht verfügbar sind.

Jetzt habe ich die Frage ob ich irgendwelche Includes oder sowas in der Art dafür benötige.

Code:

.......
myCamera = Camera.open();
.......
Camera.[U]Parameters myCameraParameters = myCamera.getParameters();
myCameraParameters.setFlashMode(FLASH_MODE_TORCH);


Fehlermeldung bei: open, Parameters, getParameters, setFlashMode, FLASH_MODE_TORCH

Ehm …

Ja, du brauchst Imports.

Die IDE sollte dir eigentlich bei den Includes helfen

Wie kann ich diese Dateien importieren? Bzw. werden diese Dateien nur für dieses aktuelle Projekt importiert oder für alle anderen auch?

Im Java-Jargon ist ein Import einfach nur die Zeile oben import package.name.Klasse;. Android-Systembibliotheken sind alle von Haus aus verfügbar und setzen nur den richtigen Import voraus. Zusätzlich kann es bei Android sein, dass du eine Permission für die jeweilige Funktionalität brauchst. In dem Fall sind es wahrscheinlich:

[xml]


[/xml]

Wenn du zusätzlich andere JARs einbinden willst geht das entweder über das Dependency-Management von Gradle oder in dem du die JARs in das Lib-Verzeichnis deines Projekts kopierst. Alle diese Änderungen sind projektspezifisch. Bei Gradle-Setups kann es komplizierter sein, je nachdem wie du dein Projekt aufteilst und welche Module von welchen Modulen referenziert werden.

Ich habe jetzt die persmissions freigegeben.
Ich habe aber jetzt das Problem, dass das Objekt Camera als veraltet angezeigt wird.
Weitere Funktionen wie “setFlashMode” und das Objekt “Parameters” wird als unbekannt angegeben und ich kann diese auch nicht importieren…

Wäre schön falls ihr mir noch weiter helfen könntet. :>

Da kann ich dir im Detail nicht helfen. Fakt ist, dass Google die alte Camera-Klasse deprecated hat und die Verwendung vom Package android.hardware.camera2 empfiehlt. Da musst du dann den entsprechenden Torch-Mode einschalten.

Wurde aber android.hardware.camera2 erst in der API Version 21 hinzugefügt?
Diese Version umfasst nicht mal 1% des aktuellen Marktes. :confused:

Falls ich mich Irre, könnt ihr mich gerne korrigieren…

Ist richtig soweit. Wenn die App auf Geräte mit API Version 20 oder kleiner laufen soll, muss man mit dem android.hardware.camera Package vorlieb nehmen.