android打開閃光燈
① Android Camera怎樣打開關閉閃光燈
在AndroidManifest中注冊相應的許可權:
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.autofocus"/>
打開閃光燈關鍵代碼:
Camera camera = Camera.open();
camera.startPreview();
parameter = camera.getParameters();
parameter.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameter);
關閉閃關燈關鍵代碼:
parameter = camera.getParameters();
parameter.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(parameter);
② Android開啟閃光燈的幾種辦法
1、用IHardwareService直接控制Android1.5以前是直接提供這個介面的,之後呢,需要我們自己來做一下。在你的項目中新建一個包android.os,新建一個IHardwareService.aidl文件,內容如下:[java] view plain<span style="font-size:18px;">package android.os; /** {@hide} */ interface IHardwareService { // obsolete flashlight support boolean getFlashlightEnabled(); void setFlashlightEnabled(boolean on); }</span> 然後在你的程序中引入[java] view plainimport android.os.IHardwareService; /** * 設置閃光燈的開啟和關閉 * @param isEnable * @author linc * @date 2012-3-18 */ private void setFlashlightEnabled(boolean isEnable) { try { Method method = Class.forName("android.os.ServiceManager").getMethod("getService", String.class); IBinder binder = (IBinder) method.invoke(null, new Object[] { "hardware" }); IHardwareService localhardwareservice = IHardwareService.Stub.asInterface(binder); localhardwareservice.setFlashlightEnabled(isEnable); } catch (Exception e) { e.printStackTrace(); } } 這樣就可以開啟閃光燈了。要使用的許可權:
[html] view plain<span style="font-size:18px;"> <uses-permission android:name="android.permission.FLASHLIGHT" /> <uses-permission android:name="android.permission.HARDWARE_TEST" /> </span> 2、用照相機來控制閃光燈這是思維的另一個方向。Camera自帶豐富的介面與Parameters,我們只管拿來使用就好了。[java] view plain<span style="font-size:18px;"> 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();</span> 如果這樣遇到問題的話,可以嘗試用camera的preview方法:[java] view plainprivate 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(); m_Camera.release(); m_Camera = null; } }
③ Android如何打開閃光燈
一、聲明閃光燈的許可權
<uses-permissionandroid:name="android.permission.CAMERA"/>
<uses-permissionandroid:name="android.permission.FLASHLIGHT"/>
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();
}
}
}
④ 手機如何設置來電閃光燈
一、以安卓手機為例,來電閃光燈怎麼設置?
Android手機用戶只需下載安裝「來電閃光燈」這款軟體即可獲得相應的功能。這款軟體的特點如下:
來電閃光燈是一支輕量的APP,最重要的是免費,可以讓你的手機在有人來電時發出閃光燈,就算在暗處也可以輕易地找到你的手機,亦可在收到簡訊時發出閃光燈,提醒您收到簡訊羅!
來電閃光包含以下功能
:
一般模式時啟用閃彎碰跡光;震動模式時啟用閃光;靜音模式時啟用閃光;收到簡訊時啟用閃光。
需要注意的是,想正常使用該軟體,需要在設置裡面的「輔吵滑助功能」中激活該APP的服務許可權。以OPPO手機為例,還需要進入安全中心,將軟體添加到「純凈後台」以及其他一鍵清理類軟體的清理白名單中,防止它被系統自動關閉。
進入軟體後,我們可以設定閃光燈閃動模式以及頻率,建議打開「亮屏不閃」並手動設定休眠時間,起到省電或打擾睡眠的作用。此外,切換到「通知」界面,我們還可將微信、簡訊、QQ等軟體勾選,當上述軟體收到推送消息時閃光燈也會工作,讓手機隨時盡顯逼格!
二、以蘋果手機為例,來電閃光燈埋並怎麼設置?
如果是蘋果iPhone產品的話,首先要打開這個功能(設置-通用-輔助功能-LED閃爍以示提醒)。
這個功能是需要在鎖屏閉屏的狀態下才會閃爍的,如果是在解鎖開屏的情況下,來電是不會閃爍發亮的。若在鎖屏閉屏狀態下還不可以,建議打開此功能後重啟一下設備。
⑤ 如何調用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);
⑥ 安卓手機里的手電筒閃光燈不亮是怎麼回事
可參考vivo手機的以下方式處理:
1、將手機更新軟體版本號後重啟再次打開閃光燈嘗試;
2、還原手機的所有設置:進入手機設置--系統管理/更多設置--備份與重置/恢復出廠設置中還原所有設置。該操作會導致登錄的第三方軟體賬號需要重新登錄,但不會清除手機存儲中的照片,視頻等文件,請確認不影響某些第三方軟體的使用後再進行還原所有設置操作。
3、可直接攜帶手機前往官方的客戶服務中心檢測處理,需進入瀏覽器搜索vivo官網--服務--服務中心--查看全部--選擇省市查詢當地的服務中心地址以及聯系方式。