どうもこんばんわ。
姫宮さんはかまいたい 攻略しました。こういうのでいいんだよ。
それな
かわいい!
戯画、ゲームエンジンが使いやすい。
本題
Android 13
に Galaxy
とかiPhone
なんかに搭載されているフラッシュライト(懐中電灯)の明るさ調整機能が追加されたらしい。
ので試してみる。
https://developer.android.com/sdk/api_diff/t-dp2/changes/android.hardware.camera2.CameraManager
https://www.xda-developers.com/android-13-flashlight-brightness-adjustment/
Galaxy S7 Edge にはフラッシュライトの明るさ調整が存在する。Samsung Experience 懐かしい。
あの時はSDカードが刺さるって宣伝してたのに今は...
環境
なまえ | あたい |
---|
端末 | Google Pixel 6 Pro |
言語 | Kotlin |
Android | Tiramisu (Android 13 DP2) |
作る
Android 13 (ティラミス) 以上が必要です。
SDK Manager から入れましょう。
公式
https://developer.android.com/reference/android/hardware/camera2/CameraManager#turnOnTorchWithStrengthLevel(java.lang.String,%20int)
appフォルダ内 build.gradle
ライブラリとかはいらないです。
SDKのバージョンだけ13(Tiramisu)にしましょう。
MainActivity.kt
懐中電灯光らせるだけならカメラの権限すらいりません。
CameraCharacteristics.FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
が1以上を返していない場合は懐中電灯の明るさ調整機能に対応していません。
Pixel 6 Pro
で動いてることは確認済みなのでみんなも買おう。
turnOnTorchWithStrengthLevel
の第2引数が明るさレベルになっていて、この値を 1
からtorchMaxLevel
まで変化させることが出来ます。
Pixel 6 Pro
でCameraCharacteristics.FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
の返り値は128
でした。
明るさスライダーを付ける
明るさの変化がわかりにくいのでシークバーで可変出来るようにする。
activity_main.xml
適当にレイアウトを作りましょう。
MainActivity.kt
小規模なのでfindViewById
使いますが、出来ればViewBinding
を使うことをおすすめします。
ご褒美
APK置いておきます。
https://github.com/takusan23/AndroidTiramisuTorch/releases
ソースコード
Android Studio 最新版でも多分開けると思います。(更新しようとしたら容量不足でコケた...)
https://github.com/takusan23/AndroidTiramisuTorch
おわりに
Google Pixel だと PayPay のSMS認証来ないんですけどおま環ですか...