• Stars
    star
    449
  • Rank 97,024 (Top 2 %)
  • Language
    Kotlin
  • License
    Apache License 2.0
  • Created almost 2 years ago
  • Updated 29 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Modern flashlight app with dim functionality on Android 13+

FlashDim

API release fdroid license last commit Codacy Badge

FOSSA Status

FlashDim



Detailed App Review by 'Explaining Android'

Featured on Sam Beckman: Top 20 Android Apps 2023 Featured on Sam Beckman: The Best Free and Open Source Apps in 2023 Featured on Sam Beckman: Top 20 Android Apps I Can't live without in 2023! Featured on HowToMen: 20 Best Android Apps 2023! Featured on HowToMen: Best Android Apps - December 2022

Read Medium article


About this project

Starting with Android 13, it's possible to control multiple brightness levels of the flashlight.
To be able to use this new feature I've developed this app.

Inspired by polodarb/Flashlight-Tiramisu πŸ’›
Custom SeekBar built with code from massoudss/waveformSeekBar πŸ’›

Features

  • πŸ”¦ dimming your flashlight level by level
  • 🎚 shortcut buttons for different brightness levels
  • πŸ†˜ SOS flash button
  • πŸ“« morse code flash mode
  • ⏲️ Interval / BPM mode
  • ⚑ quick settings tile for fast access
  • πŸ”Š press both volume buttons for easy flashlight toggle
  • πŸ”’ private, no ads, no internet connection
  • πŸ’― modern Material You (M3) design elements
  • 🎨 app colors adapt to device's system colors

Download

Get it on Google Play Get it on F-Droid

Verification

The APK files can be verified using apksigner.

apksigner verify --print-certs -v example.apk

Google Play Store
The output should look like this:

Verifies
Verified using v1 scheme (JAR signing): false
Verified using v2 scheme (APK Signature Scheme v2): false
Verified using v3 scheme (APK Signature Scheme v3): true

The certificate content and digests should look like this:

DN: CN=Android, OU=Android, O=Google Inc., L=Mountain View, ST=California, C=US
Certificate Digests:
  SHA-256: 4b:05:58:fa:9d:2e:32:b0:1c:d0:00:7b:13:66:35:b5:ac:67:b5:ca:63:ff:c2:ef:e2:58:9a:80:20:e8:ca:4f
  SHA-1:   47:2d:b2:9e:57:df:be:48:09:55:3b:f9:c1:d8:15:a5:e3:ed:27:82
  MD5:     14:cc:12:d7:6b:29:9a:79:64:ac:36:c8:56:ec:a5:78

F-Droid and GitHub (signed using the same key)
The output should look like this:

Verifies
Verified using v1 scheme (JAR signing): false
Verified using v2 scheme (APK Signature Scheme v2): true

The certificate content and digests should look like this:

DN: OU=FlashDim, O=Cyb3rKo OpenSource, L=GitHub / F-Droid, C=DE
Certificate Digests:
  SHA-256: ea:78:69:1c:ba:41:86:00:a4:56:32:89:b1:33:f9:d0:0d:3d:0c:24:a5:f5:4c:5c:59:ee:1c:95:2b:b0:e1:1d
  SHA-1:   28:cf:15:ea:1c:93:1a:04:67:2d:8e:b0:2f:01:77:9b:03:90:f8:dd
  MD5:     09:05:c3:62:fa:94:a0:2e:c4:9c:d0:4e:b8:a3:cc:99

Supported Devices

The full functionalizy of this app is ONLY AVAILABLE for devices which support the dim functionality of the flashlight (hardware limited).
Here's a list of devices I know of which do work FOR SURE. If you've used a device that works too please let me know so I can add it here.

  • Google Pixel 6 series
  • Google Pixel 7 series
  • nearly every Samsung phone with Android 13
  • many other phones from different manufacturers

Exluded devices (Play Store) / Unsupported devices

The following list shows phones, which were manually excluded by myself in the Google Play Store, because of unsupported flashlight dimming functionality.
If the list contains any phone which does has a dimmable flashlight, please let me know.

  • Asus ROG Phone 6 (ASUS_AI2201)
  • Google Pixel 4 (google flame)
  • Google Pixel 4 XL (google coral)
  • Google Pixel 4a (5G) (google bramble)
  • Google Pixel 5 (google redfin)
  • Google Pixel 5a 5G (google barbet)
  • OnePlus 11R 5G (OnePlus OP5961L1)
  • OnePlus Nord CE 2 Lite 5G (OnePlus OP535DL1)
  • Oppo CPH2145 (OPPO OP4F1BL1)
  • Oppo CPH2249 (OPPO OP4F81L1)
  • Oppo CPH2293 (OPPO OP52E1L1)
  • Oppo CPH2461 (OPPO OP533FL1)
  • Oppo Reno6 Z 5G (OPPO OP4FA7L1)
  • realme 10 Pro+ 5G (realme RE58A5L1)
  • realme GT Master Edition (realme RE54ABL1)
  • realme ηœŸζˆ‘GT 2 (realme RE58B2L1)
  • Xiaomi 12T Pro (Xiaomi diting)

Screenshots

Contribute

Of course I'm happy about any kind of contribution.

For creating issues there's no real guideline you should follow. If you create pull requests please try to use the syntax I use. Using a unified code format makes it much easier for me and for everyone else.

Used Icons

πŸ’›
Github icons created by Laisa Islam Ani - Flaticon
Information icons created by Freepik - Flaticon
Link icons created by Creaticca Creative Agency - Flaticon
Morse code icons created by Freepik - Flaticon
Restart icons created by AlternativeStd - Flaticon
Settings icons created by Freepik - Flaticon
Start button icons created by Freepik - Flaticon
Ui icons created by flashicon - Flaticon
Vibrate icons created by Bombasticon Studio - Flaticon
Volume icons created by Freepik - Flaticon

License

Copyright 2023, Cyb3rKo

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

More Repositories

1

pincredible

Modern and secure Android app to help you remember any PIN
Kotlin
80
star
2

pazzword

The most intelligent password evaluator app
Kotlin
53
star
3

instagram-unliker

Simple python script for removing your Instagram likes
Python
12
star
4

logviewer-for-openhab-app

Simplified mobile access to the log of openHAB running frontail
Kotlin
7
star
5

about-icons

Android library to easily give credit if using icons which require attribution
Kotlin
5
star
6

android-licenses-library

Lightweight Android library which provides most common licenses in formatted and plain text
HTML
4
star
7

jabcode-android

Android library for reading JAB codes
Kotlin
4
star
8

social-media-hosts-blocklists

Social media hosts blocking lists
4
star
9

quicktrust

The fastest way to verify app signatures
Kotlin
3
star
10

backpack-apps

Android Tools App Collection - Handy, Modern, Secure
Kotlin
3
star
11

awesome-environment

🌍 A list of environmentally friendly and sustainable products and companies. 🌍
2
star
12

inf-schule-loesungen

Inoffizielle LΓΆsungen und ErklΓ€rungen zu inf-schule
TeX
2
star
13

blokada-tiktokhosts

TikTok blocking list for Blokada v4
2
star
14

quaetor-public

HTML
2
star
15

raspi-speedtester

Fully automatic speedtest for Raspberry Pi with CSV logging
Python
2
star
16

stevenblack-hosts-trimmed

πŸ”’ Hosts-only adaptation of StevenBlacks hosts files. Optimized for Fortinets FortiOS Fabric Connectors.
Python
1
star
17

cyb3rko

1
star
18

m3o-kotlin

(Handcrafted) M3O Kotlin Client Library
Kotlin
1
star
19

fedokde-handbook

My personal notes and scripts for my Fedora KDE setup
Shell
1
star
20

cavedroid

The Unofficial Mobile Client for the Cavetale Server
Kotlin
1
star
21

cavetale-api

Unofficial API for the Cavetale Minecraft Server
Kotlin
1
star