vikram raj
vikram raj

Reputation: 37

unfortunately application has stoppped when run in emulator

I am absolute begginer in android devlopment and i want to make a camera On/Off application but i get error. so please help me.

package com.vikram.flashcamera;

import android.app.Activity;
import android.content.Context;
import android.content.pm.PackageManager;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {
    private boolean isLighOn = false;
    private Camera camera;
    private Button button;

    @Override
    protected void onStop() {
        super.onStop();

        if(camera != null) {
            camera.release();
        }
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button = (Button) findViewById(R.id.buttonClick);

        Context context = this;
        PackageManager pm = context.getPackageManager();

        if(!pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
            Log.e("err", "Device has no camera!");
            return;
        }

        camera = Camera.open();
        final Parameters p = camera.getParameters();

        button.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                if(isLighOn) {
                    Log.i("info", "torch is turn off!");
                    p.setFlashMode(Parameters.FLASH_MODE_OFF);
                    camera.setParameters(p);
                    camera.stopPreview();
                    isLighOn = false;
                }
                else {
                   Log.i("info", "torch is turn on!");
                    p.setFlashMode(Parameters.FLASH_MODE_TORCH);

                    camera.setParameters(p);
                    camera.startPreview();
                    isLighOn = true;
                }
            }
        });
    }
}

and my logCat error is given below.

    08-25 15:50:41.932: E/Trace(878): error opening trace file: No such file or directory (2)
    08- 5 15:50:42.453: D/AndroidRuntime(878): Shutting down VM
    08-25 15:50:42.463: W/dalvikvm(878): threadid=1: thread exiting with uncaught exception     (group=0x40a13300)
    08-25 15:50:42.473: E/AndroidRuntime(878): FATAL EXCEPTION: main
    08-25 15:50:42.473: E/AndroidRuntime(878): java.lang.RuntimeException: Unable to start     activity         ComponentInfo{com.vikram.flashcamera/com.vikram.flashcamera.MainActivity}:     java.lang.NullPointerException
    08-25 15:50:42.473: E/AndroidRuntime(878):  at     android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at     android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
08-25 15:50:42.473: E/AndroidRuntime(878):  at         android.app.ActivityThread.access$600(ActivityThread.java:130)
08-25 15:50:42.473: E/AndroidRuntime(878):  at         android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at android.os.Handler.dispatchMessage(Handler.java:99)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at android.os.Looper.loop(Looper.java:137)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at android.app.ActivityThread.main(ActivityThread.java:4745)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at java.lang.reflect.Method.invokeNative(Native Method)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at java.lang.reflect.Method.invoke(Method.java:511)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at dalvik.system.NativeStart.main(Native Method)
    08-25 15:50:42.473: E/AndroidRuntime(878): Caused by: java.lang.NullPointerException
    08-25 15:50:42.473: E/AndroidRuntime(878):  at com.vikram.flashcamera.MainActivity.onCreate(MainActivity.java:44)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at android.app.Activity.performCreate(Activity.java:5008)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
    08-25 15:50:42.473: E/AndroidRuntime(878):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
    08-25 15:50:42.473: E/AndroidRuntime(878):  ... 11 more
    08-25 18:03:08.543: E/Trace(900): error opening trace file: No such file or directory (2)
    08-25 18:03:09.122: D/AndroidRuntime(900): Shutting down VM
    08-25 18:03:09.122: W/dalvikvm(900): threadid=1: thread exiting with uncaught exception (group=0x40a13300)
    08-25 18:03:09.132: E/AndroidRuntime(900): FATAL EXCEPTION: main
    08-25 18:03:09.132: E/AndroidRuntime(900): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.vikram.flashcamera/com.vikram.flashcamera.MainActivity}:     java.lang.NullPointerException
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.ActivityThread.access$600(ActivityThread.java:130)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.os.Handler.dispatchMessage(Handler.java:99)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.os.Looper.loop(Looper.java:137)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.ActivityThread.main(ActivityThread.java:4745)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at java.lang.reflect.Method.invokeNative(Native Method)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at java.lang.reflect.Method.invoke(Method.java:511)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at dalvik.system.NativeStart.main(Native Method)
    08-25 18:03:09.132: E/AndroidRuntime(900): Caused by: java.lang.NullPointerException
    08-25 18:03:09.132: E/AndroidRuntime(900):  at com.vikram.flashcamera.MainActivity.onCreate(MainActivity.java:44)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.Activity.performCreate(Activity.java:5008)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
    08-25 18:03:09.132: E/AndroidRuntime(900):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
    08-25 18:03:09.132: E/AndroidRuntime(900):  ... 11 more
    08-25 18:03:11.613: I/Process(900): Sending signal. PID: 900 SIG: 9
    08-25 18:33:52.222: E/Trace(929): error opening trace file: No such file or directory    (2)
    08-25 18:33:52.813: D/AndroidRuntime(929): Shutting down VM
    08-25 18:33:52.813: W/dalvikvm(929): threadid=1: thread exiting with uncaught exception (group=0x40a13300)
    08-25 18:33:52.833: E/AndroidRuntime(929): FATAL EXCEPTION: main
    08-25 18:33:52.833: E/AndroidRuntime(929): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.vikram.flashcamera/com.vikram.flashcamera.MainActivity}: java.lang.NullPointerException
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.ActivityThread.access$600(ActivityThread.java:130)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.os.Handler.dispatchMessage(Handler.java:99)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.os.Looper.loop(Looper.java:137)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.ActivityThread.main(ActivityThread.java:4745)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at java.lang.reflect.Method.invokeNative(Native Method)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at java.lang.reflect.Method.invoke(Method.java:511)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at dalvik.system.NativeStart.main(Native Method)
    08-25 18:33:52.833: E/AndroidRuntime(929): Caused by: java.lang.NullPointerException
    08-25 18:33:52.833: E/AndroidRuntime(929):  at com.vikram.flashcamera.MainActivity.onCreate(MainActivity.java:44)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.Activity.performCreate(Activity.java:5008)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
    08-25 18:33:52.833: E/AndroidRuntime(929):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
    08-25 18:33:52.833: E/AndroidRuntime(929):  ... 11 more
    08-25 18:38:52.904: I/Process(929): Sending signal. PID: 929 SIG: 9

Upvotes: 0

Views: 1438

Answers (2)

Max Rasguido
Max Rasguido

Reputation: 457

As your AVD is not getting the camera I think this may help you: Enable Camera in AVD

Upvotes: 1

Trevor
Trevor

Reputation: 10993

Your error trace is showing that the exception is occurring at line 44 of your Activity. From counting through the lines of the code you've posted, this seems to be at Camera.open(). According to the documentation, this returns null if the device has no back-facing camera. This perhaps makes sense if it's on an emulator.

Upvotes: 0

Related Questions