Android - CameraManager 控制闪光灯

需要注意的是安卓不同版本间会有一些变化,安卓7.0以上和7.0以下的版本有所区别

安卓 7.0 以上:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@TargetApi(Build.VERSION_CODES.N)
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
public void flashControl(boolean enable) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
try {
CameraManager cameraManager = (CameraManager) getApplicationContext().getSystemService(Context.CAMERA_SERVICE);
String[] ids = cameraManager.getCameraIdList();
for (String id : ids) {
CameraCharacteristics c = cameraManager.getCameraCharacteristics(id);
Boolean flashAvailable = c.get(CameraCharacteristics.FLASH_INFO_AVAILABLE);
Integer lensFacing = c.get(CameraCharacteristics.LENS_FACING);
if (flashAvailable != null && flashAvailable && lensFacing != null && lensFacing == CameraCharacteristics.LENS_FACING_BACK) {
cameraManager.setTorchMode(id, enable);
}
}
} catch (CameraAccessException e) {
e.printStackTrace();
}
}
}

安卓 7.0 以下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Camrea camera = Camera.open();
Camera.Parameters parameters = camera.getParameters();
// 开启闪光灯
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameters);
// 关闭闪光灯
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(parameters);

// 最后需要在销毁函数中回收资源
@Override
public void onDestroy() {
super.onDestroy();
camera.release();
}

Typecho 主题 MoeGallery

MoeGallery 是一个暗色调、响应式的简约单页相册主题

预览:https://album.redneno.me/

GitHub: https://github.com/boxlab/typecho-theme-MoeGallery

NodeMCU 开发学习笔记

这篇文章记录了我的 NodeMCU 学习过程

引脚定义

接口定义

NodeMCU Pin Definition

GPIO 与 I/O 索引表

IO索引 ESP8266针脚 IO索引 ESP8266针脚
0 GPIO 16 7 GPIO 13
1 GPIO 5 8 GPIO 15
2 GPIO 4 9 GPIO 3
3 GPIO 0 10 GPIO 1
4 GPIO 2 11 GPIO 9
5 GPIO 14 12 GPIO 10
6 GPIO 12

其中 D0(GPIO16) 只能用于 GPIO 读取/写入,不支持中断和 PWM/I2C/OW

PHP: 我的世界颜色代码转换 HTML

我的世界:§

§和一个字符可以组成是我的世界中控制字体颜色样式(如木牌、服务器名称)的标识符。例如:

1
§cEnd of The Century §lSurvival

上面这段文字在我的世界中的显示效果即为:

End of The Century Survival

现在我们需要通过代码来对颜色标识符进行转换,使其成为可以被浏览器解析的 HTML 代码

Centos7 搭建 Minecraft 水桶服(超详细)

环境

我们至少需要一个 Java8 的运行环境来支持 MC 服务器

安装 Java8

更详细的安装步骤请查阅我的另一篇文章(但没有必要) CentOS7 安装 Java(openjdk)

你可以使用下面的命令快速安装 openjdk-1.8.0

1
yum install java-1.8.0-openjdk

Python3 利用心形线函数打印心形

思路

  1. 将字符串分割成列表

  2. 嵌套两个 for 循环,“绘制”出直角坐标系网格

  3. 计算心形函数,将函数内(结果<=0)的部分填充字符,函数外填充空格

  4. 逐行追加到列表中

  5. 打印输出

Unity3d 实现 SSAA 抗锯齿

什么是 SSAA

超级采样抗锯齿(Super-Sampling Anti-aliasing,简称SSAA)此是早期抗锯齿方法,比较消耗资源,但简单直接,先把图像映射到缓存并把它放大,再用超级采样把放大后的图像像素进行采样,一般选取2个或4个邻近像素,把这些采样混合起来后,生成的最终像素,令每个像素拥有邻近像素的特征,像素与像素之间的过渡色彩,就变得近似,令图形的边缘色彩过渡趋于平滑。再把最终像素还原回原来大小的图像,并保存到帧缓存也就是显存中,替代原图像存储起来,最后输出到显示器,显示出一帧画面。

Python 基础练习之回文判断

偶然在一个群里看到了这个题目

输入一个字符串,如果这个字符串是顺读、倒读都相同(例如“上海自来水来自海上”、“ABCBA”)的回文,那么返回 True,反之返回 False

CentOS7 安装 Java8(openjdk-1.8)

首先检查系统是否已经安装了 Java 环境

1
2
$ java
-bash: java: command not found

也可以使用 rpm 查看是否安装了相关的包

1
rpm -qa |grep java

ServerStatus-Hoshino 云监控程序

多服务器监控探针、云监控服务器和客户端

GitHub: https://github.com/boxlab/ServerStatus

演示

https://monitor.boxmoe.cn/

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×