中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

android如何通過led實現手電筒功能

發布時間:2021-09-27 11:35:55 來源:億速云 閱讀:127 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關android如何通過led實現手電筒功能的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

具體內容如下

第一步 添加權限:

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

第二步 實現手電筒工具類:

import android.hardware.Camera;import android.hardware.Camera.Parameters;import android.os.AsyncTask;/** *Caution: On some devices, this method may take a long time to complete. It is best *to call this method from a worker thread (possibly using android.os.AsyncTask) to *avoid blocking the main application UI thread. */public class FlashlightUtil extends AsyncTask<String, String, String> { private Camera camera; private int cameraId = 0; // 此功能目前不實用,這里不做實現 , 但不能刪除 private Parameters parameters; public boolean isTorch = false; private boolean canFinish = false; private static FlashlightUtil flashlightUtil; private FlashlightUtil() { } /**  * 設置手電筒開關,打開或關閉手電筒,根據手電筒的狀態來設置相反的狀態 void 2016年1月12日  */ public static void setSwitch() {  if (null == flashlightUtil) {   flashlightUtil = new FlashlightUtil();   flashlightUtil.execute("");  }  flashlightUtil.setONOFF(); } @Override protected String doInBackground(String... params) {  // TODO Auto-generated method stub  while (!canFinish) {   if (null == camera) {    camera = Camera.open(cameraId);   }   parameters = camera.getParameters();   if (isTorch) {    if (parameters.getFlashMode().equals(Parameters.FLASH_MODE_OFF)) {     // 打開鎂光燈     parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);     camera.setParameters(parameters);     camera.startPreview();    }   } else {    if (parameters.getFlashMode().equals(      Parameters.FLASH_MODE_TORCH)) {     // 關閉鎂光燈     camera.stopPreview(); // 關掉亮燈     camera.release(); // 關掉照相機     camera = null;    }   }  }  return null; } /**  * 此功能暫時關閉  * @hide  */ public FlashlightUtil setCameraId(int cameraId) {  this.cameraId = cameraId;  return flashlightUtil; } /**  * 打開關閉手電筒,默認第一次為打開 2016年1月12日  */ private void setONOFF() {  isTorch = !isTorch; }}

第三步 添加手電筒按鈕的觸發事件(這里是在布局文件中通過onclick實現的)

/** * 打開手電筒 */public void openFlashlight(View view) { FlashlightUtil.setSwitch() ;}

手電筒功能比較簡單,這里實現了一步開啟關閉。

感謝各位的閱讀!關于“android如何通過led實現手電筒功能”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

广宁县| 华阴市| 汶上县| 贵德县| 台山市| 沽源县| 九寨沟县| 西峡县| 闵行区| 玛沁县| 合山市| 壤塘县| 东丰县| 汾西县| 闻喜县| 鄂伦春自治旗| 宜宾县| 正镶白旗| 江达县| 彰武县| 兴义市| 新龙县| 九龙县| 应城市| 荣成市| 延津县| 沁水县| 满洲里市| 湖州市| 如东县| 漾濞| 丰都县| 夏邑县| 陵川县| 綦江县| 长丰县| 鲁甸县| 高尔夫| 龙里县| 澄城县| 彭泽县|