Android 閃光燈

 

package com.example.shangguangdeng;

import java.lang.reflect.Method;

import android.hardware.Camera;
import android.os.Bundle;
import android.os.IBinder;
import android.os.IHardwareService;
import android.app.Activity;
import android.content.pm.FeatureInfo;
import android.content.pm.PackageManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {
	private Button button;
	private boolean isOpen = false;
	private Camera m_Camera;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		button = (Button) findViewById(R.id.test_button);
		button.setOnClickListener(this);
	}

	@Override
	public void onClick(View v) {
		if (isOpen) {
			PackageManager pm = this.getPackageManager();
			FeatureInfo[] features = pm.getSystemAvailableFeatures();
			for (FeatureInfo f : features) {
				if (PackageManager.FEATURE_CAMERA_FLASH.equals(f.name)) // 判斷設備是否支持閃光燈
				{
					if (null == m_Camera) {
						m_Camera = Camera.open();
					}

					Camera.Parameters parameters = m_Camera.getParameters();
					parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
					m_Camera.setParameters(parameters);
					m_Camera.startPreview();
					// toggleButton.setBackgroundColor(0x30ffffff);
				}
			}
			isOpen=false;
		} else {
			if (m_Camera != null) {
				m_Camera.stopPreview();
				m_Camera.release();
				m_Camera = null;
			}
			isOpen=true;
		}
	}
}

       <uses-permission android:name="android.permission.HARDWARE_TEST" />java

    <uses-permission android:name="android.permission.FLASHLIGHT" />android

    <uses-permission android:name="android.permission.WAKE_LOCK"/>app

<uses-permission android:name="android.permission.CAMERA"/>ide

<uses-permission android:name="android.hardware.camera"/>this

相關文章
相關標籤/搜索