So, habe gestern Abend bestimmt 2-3 std daran gearbeitet, nun bekomme ich das Flashlicht überhaupt nicht mehr an -.-
Nicht einmal ohne Thread oder Überprüfung, ob das Gerät Flashlight besitzt, klappt es mehr.
1package com.example.flashdance;
2
3import android.app.Activity;
4import android.content.Context;
5import android.content.pm.PackageManager;
6import android.hardware.Camera;
7import android.os.Bundle;
8import android.view.Menu;
9
10public class FlashDance extends Activity {
11 PackageManager packageManager;
12 static boolean haveFlashLight;
13 static final int millies = 1500;
14 Camera camera;
15
16 @Override
17 protected void onCreate(Bundle savedInstanceState) {
18 super.onCreate(savedInstanceState);
19 setContentView(R.layout.activity_flash_dance);
20 camera = null;
21 camera = Camera.open();
22 Camera.Parameters params = camera.getParameters();
23 params.setFlashMode(Camera.Parameters.FLASH_MODE_ON);
24 camera.setParameters(params);
25 camera.startPreview();
26 }
27
28 @Override
29 public boolean onCreateOptionsMenu(Menu menu) {
30 getMenuInflater().inflate(R.menu.flash_dance, menu);
31 return true;
32 }
33
34 public boolean checkFlashLightAvailable(Context context) {
35 if (context.getPackageManager().hasSystemFeature(
36 PackageManager.FEATURE_CAMERA_FLASH)) {
37 return true;
38 } else {
39 return false;
40 }
41 }
42
43}
Habe alles versucht, wo liegt der Fehler? An meinem Handy vielleicht? Mit deiner App funktionierte trotzdem...
edit: Anscheinend doch nicht alles versucht, wenn ich Camera.Parameters.FLASH_MODE_ON durch FLASH_MODE_TORCH ersetze, geht's auf einmal.
Verstehe ich zwar nicht, aber Hauptsache es läuft ;)
edit2: Jetzt bekomme ich nach einiger Zeit einen Fehler im Thread, den ich nicht verstehen kann:
110-03 17:03:10.345: E/AndroidRuntime(31641): FATAL EXCEPTION: Thread-3030
210-03 17:03:10.345: E/AndroidRuntime(31641): java.lang.RuntimeException: Fail to connect to camera service
310-03 17:03:10.345: E/AndroidRuntime(31641): at android.hardware.Camera.native_setup(Native Method)
410-03 17:03:10.345: E/AndroidRuntime(31641): at android.hardware.Camera.<init>(Camera.java:348)
510-03 17:03:10.345: E/AndroidRuntime(31641): at android.hardware.Camera.open(Camera.java:325)
610-03 17:03:10.345: E/AndroidRuntime(31641): at com.example.flashdance.FlashDance.run(FlashDance.java:60)
710-03 17:03:10.345: E/AndroidRuntime(31641): at java.lang.Thread.run(Thread.java:856)
grüße Fabian
edit: Fehler behoben und die App läuft, vielen Dank Leuts
— geändert am 10.10.2013, 18:27:08