導航:首頁 > 操作系統 > android開發閃光燈

android開發閃光燈

發布時間:2023-01-26 07:51:23

A. android 判斷閃光燈有沒有打開

可以通過parameters.getFlashMode()得到閃光燈狀態,代碼如下:

Camera cam = Camera.open();
Camera.Parameters p = cam.getParameters();
p.getFlashMode();//獲取閃光燈的狀態

B. 如何調用Android自帶的LED閃光燈

android的LED燈是通過通知來調用的,只是通知類的一個參數,具體大體實現方法如下:
final int ID_LED=19871103;
NotificationManager nm=(NotificationManager)getSystemService(NOTIFICATION_SERVICE);
Notification notification = new Notification();
notification.ledARGB = 0xFFFFFF; //這里是顏色,咱們可以嘗試改變,理論上0xFF0000是紅色,0x00FF00是綠色
notification.ledOnMS = 100;
notification.ledOffMS = 100;
notification.flags = Notification.FLAG_SHOW_LIGHTS;
nm.notify(ID_LED, notification);
nm.cancel(ID_LED);

C. 如何調用Android自帶的LED閃光燈

Android原生或基於原生系統(如CM OMNI 魔趣)在狀態欄按鈕里都會有手電筒按鈕,點擊就可以打開,再次點擊即可關閉; 像華為 小米的這樣的深度定製系統,有一個「手電筒」的軟體; 三星手機可能會在輔助功能里(就是5.0系統的「無障礙」); 實在找不到,就用相機軟體把閃光燈一直開著,就是手電筒。 希望我的回答對你有幫助!

D. Android如何打開閃光燈

一、聲明閃光燈的許可權

package com.google.yang.myapplication;

import android.hardware.Camera;

import android.hardware.Camera.Parameters;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

/**

* 閃光燈的控制

*

* @author yang

*/

public class MainActivity extends AppCompatActivity {

private Button open;

private Button close;

private Button openFlicker;

private Button closeFlicker;

private Camera camera;

private Boolean isShanshuo;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

open = (Button) this.findViewById(R.id.open);

close = (Button) this.findViewById(R.id.close);

openFlicker = (Button) findViewById(R.id.openFlicker);

closeFlicker = (Button) findViewById(R.id.closeFlicker);

open.setOnClickListener(openOnClickListener);

close.setOnClickListener(closeOnClickListener);

openFlicker.setOnClickListener(openFlickerOnClickListener);

closeFlicker.setOnClickListener(closeFlickerOnClickListener);

}

/**

* 打開手電筒

*/

private OnClickListener openOnClickListener = new OnClickListener() {

@Override

public void onClick(View v) {

open();

}

};

/**

* 關閉手電筒

*/

private OnClickListener closeOnClickListener = new OnClickListener() {

@Override

public void onClick(View v) {

close();

}

};

/**

* 開啟閃爍

*/

private OnClickListener openFlickerOnClickListener = new OnClickListener() {

@Override

public void onClick(View v) {

isShanshuo = true;

openFlicker.setEnabled(false);

new Thread(new Runnable() {

@Override

public void run() {

while (isShanshuo) {

open();

try {

Thread.sleep(300);

} catch (InterruptedException e) {

e.printStackTrace();

}

close();

try {

Thread.sleep(300);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}).start();

}

};

/**

* 關閉閃爍

*/

private OnClickListener closeFlickerOnClickListener = new OnClickListener() {

@Override

public void onClick(View v) {

isShanshuo = false;

openFlicker.setEnabled(true);

}

};

/**

* 打開閃光燈

*

* @return

*/

private void open() {

try {

camera = Camera.open();

camera.startPreview();

Parameters parameters = camera.getParameters();

parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);

camera.setParameters(parameters);

} catch (Exception e) {

e.printStackTrace();

}

}

/**

* 關閉閃光燈

*

* @return

*/

private void close() {

try {

Parameters parameters = camera.getParameters();

parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);

camera.setParameters(parameters);

camera.release();

camera = null;

} catch (Exception e) {

e.printStackTrace();

}

}

}

E. 如何在android中使用閃光燈

下圖是android學習手冊中的介紹截圖,例子、文檔、源碼隨便看。


用IHardwareService直接控制Android1.5以前是直接提供這個介面的,之後呢,需要我們自己來做一下。在你的項目中新建一個包Android.os,新建一個IHardwareService.aidl文件,內容如下:package Android.os;
/** {@hide} */
interface IHardwareService{// obsolete flashlight support
boolean getFlashlightEnabled();
void setFlashlightEnabled(boolean on);}然後在你的程序中引入import Android.os.IHardwareService;/*** 設置閃光燈的開啟和關閉
* @param isEnable
* @author linc
IBinder binder = (IBinder) method.invoke(null, new Object[] { "hardware" });
IHardwareService localhardwareservice = IHardwareService.Stub.asInterface(binder);
localhardwareservice.setFlashlightEnabled(isEnable);}catch (Exception e){
e.printStackTrace();}}這樣就可以開啟閃光燈了。要使用的許可權:<uses-permission Android:name="android.permission.FLASHLIGHT" />
<uses-permission Android:name="android.permission.HARDWARE_TEST" />

三、用照相機來控制閃光燈這是思維的另一個方向。Camera自帶豐富的介面與Parameters,我們只管拿來使用就好了。private Camera camera = null;
private Parameters parameters = null;//直接開啟camera = Camera.open();
parameters = camera.getParameters();
parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);//開啟
camera.setParameters(parameters);//直接關閉parameters.setFlashMode(Parameters.FLASH_MODE_OFF);//關閉
camera.setParameters(parameters);
camera.release();
如果這樣遇到問題的話,可以嘗試用camera的preview方法:private void OpenLightOn() {
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.autoFocus( new Camera.AutoFocusCallback (){
public void onAutoFocus(boolean success, Camera camera) {}});m_Camera.startPreview();}
private void CloseLightOff() {
if ( m_Camera != null ){m_Camera.stopPreview();

F. android 如何調控閃光燈亮度

這是與設備相關的,因為硬體廠商才能自行定義硬體的屬性。比如htc為相機閃光燈設置一個亮度文件,通過改寫這個文件的值,可以達到變更相機閃光燈的亮度,魅族應該也是這樣操作的。作為安卓系統來說,沒有統一的解決方案的。

參考htc閃光燈亮度root下的設置方法:
on 2.2 HTC devices you can use it by writing a string to/sys/devices/platform/flashlight.0/leds/flashlight/brightness. This controls if the LED is on and how bright it is. For maximum brightness write "128\n", half brightness write "64\n". Easy to test from adb shell:

G. android如何在不調用攝像頭的情況下打開閃光燈

閃光燈就是攝像頭,不可能不打開攝像頭的。除非改硬體。額外增加一個閃光燈驅動,在軟體上調用這個閃光燈。

H. android 應用開發如何調節閃光燈亮度

這是與設備相關的,因為硬體廠商才能自行定義硬體的屬性。比如htc為相機閃光燈設置一個亮度文件,通過改寫這個文件的值,可以達到變更相機閃光燈的亮度,魅族應該也是這樣操作的。作為安卓系統來說,沒有統一的解決方案的。

參考htc閃光燈亮度root下的設置方法:
on 2.2 HTC devices you can use it by writing a string to/sys/devices/platform/flashlight.0/leds/flashlight/brightness. This controls if the LED is on and how bright it is. For maximum brightness write "128\n", half brightness write "64\n". Easy to test from adb shell:

I. 【android開發】如何判斷是否支持閃光燈

public class HandLightActivity extends Activity implements OnClickListener{
private ToggleButton toggleButton;
private Camera m_Camera;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.handlight);
toggleButton = (ToggleButton)this.findViewById(R.id.toggleButton1);
toggleButton.setOnClickListener(this);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
@Override
public void onClick(View v) {
ToggleButton tb = (ToggleButton)v;
if(!tb.isChecked()){
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);
}
}
}else{
if ( m_Camera != null )
{
m_Camera.stopPreview();
m_Camera.release();
m_Camera = null;
}
toggleButton.setBackgroundColor(0xffffffff);
}
}
}

需要加上許可權

<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.hardware.camera"/>
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.HARDWARE_TEST" />

閱讀全文

與android開發閃光燈相關的資料

熱點內容
手機文檔解壓之後解壓包去哪兒了 瀏覽:923
java中網路編程重要嗎 瀏覽:683
如何登錄別人的伺服器 瀏覽:626
調度系統軟體python 瀏覽:205
微信大轉盤抽獎源碼 瀏覽:497
壓縮機損壞的表現 瀏覽:862
同步數據伺服器怎麼用 瀏覽:634
163郵箱伺服器的ip地址 瀏覽:50
伺服器跟域是什麼 瀏覽:128
rails啟動命令 瀏覽:465
logistic命令怎麼用 瀏覽:738
c語言點滴pdf 瀏覽:747
linuxrtc編程 瀏覽:258
linux打包並壓縮命令 瀏覽:644
aes加密的證書格式 瀏覽:99
oracledbcalinux 瀏覽:844
酬勤任務app怎麼被特邀 瀏覽:199
android應用文件夾 瀏覽:1002
平面設計法則pdf 瀏覽:339
3d圓角命令怎麼用 瀏覽:569