All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Let users share packaged buttons too.
- Let users delete custom audios by swiping horizontally.
- Target Android 13 (API Level 33); Tests also run for that API level.
- Pull Requests template for contributors.
- Firebase Analytics.
- Firebase Crashlytics including last logs from each error.
- Firebase Performance Monitoring.
- Added Detekt static code analysis tool, as well as Ktlint for code style conventions.
- Setup Stale GitHub app.
- Codacy checks integration through GitHub.
- Multidex support for debug builds.
- Timestamp as suffix on
versionName
for debug builds. - Automatic code obfuscation and optimizations on release builds.
- Automated stack files integration by stackshare.io to easily communicate what's under the hood. Check
techstack.md
and see the magic.
- Brand NEW Look & Feel for the whole app.
- Min Android version required is KitKat (API Level 19).
- Circle CI config migrated to v2.1 using Orbs.
- Many dependencies to the latest versions including Gradle, Android Build Tools, AppCompat, Firebase and static code analyzers too.
- Migration to Android X.
- Checkstyle turned on again.
- Findbugs replaced with Spotbugs starting with
static-code-analysis
v3.x. - New ':model' module in Kotlin.
- New ':commons_file' and ':commons_android' modules.
- Changelog formatting.
- Default language to English.
- Gradle version to v7.4.2.
- Java compile version to v11.
- Better separation of responsibilities.
StrictMode
warnings now are logged to Crashlytics instead of the debugging notifier.LeakCanary
warnings now are logged to Crashlytics.- Refactor of Media Player setup for clearness.
- Replaced Stetho with Flipper.
- Replace usages of synthetic accessors for views in layouts to native view binding.
- Sharing buttons issues due to a bad permissions setup.
- Crashes when debugging because of a bug in library
StrictModeNotifier
. - Performance issue when saving a new audio button.
- Memory leak at the
MediaPlayer
which causes an increment on memory usage. - Many static code checks suggestions applied.
- Usage of resources like
InputStream
,OutputStream
andCursor
. - Stop exposing Firebase API configuration file.
- Library StrictModeNotifier for debug builds.
- Library Static Code Analysis because it's no longer actively maintained.
kotlin-android-extensions
plugin because it's no longer necessary.
- Share saved audios after long press.
- Support for Android O (API level 26).
- Static code checks to improve code quality using SCA.
- Setup release signing certificate.
- Test tools for the debug version: Stetho, different applicatonId and icon, Leak Canary.
- Performance when scrolling.
- Migrated to Gradle wrapper v4.1 as well as Android build tools.
- Refactor.
- Support for Content URI format when creating new buttons.
- Predefined audio messages.
- Save audio messages directly from WhatsApp by just sharing them.