anvil
QKSMS
Our great sponsors
anvil | QKSMS | |
---|---|---|
8 | 56 | |
1,256 | 4,410 | |
0.9% | - | |
9.5 | 0.0 | |
6 days ago | 11 months ago | |
Kotlin | Kotlin | |
Apache License 2.0 | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
anvil
-
Refactoring our Dependency Injection using Anvil
Handling DI at scale can be a challenging task in avoiding circular dependencies, build bottlenecks, and poor developer experience. To solve these challenges and make it easier for our developers, we adopted Anvil, a compiler plugin that allows us to invert how developers wire, hook up dependencies and keep our implementations loosely coupled. However, before we get into the juicy details of using this new compiler plugin, let's talk about our current implementation and its problems that we are trying to solve.
-
Having both Dagger and Hilt at the same time? 🤔
I would recommend checking out Anvil for multi-module setup as it can provide an easier migration path than Hilt while also providing similar features.
-
Whetstone: A DI framework for Android that simplifies working with Dagger 2 using Anvil
In terms of of what Anvil is I'd really recommend reading the README It's a lot more flexible than Hilt and provides a code generation hook so if you have a codebase specific DI pattern you can also set that up to be auto-generated with a custom annotation if you desire.
-
Anvil, generating factories without kapt, and module structure.
Recently I've been looking into Anvil as an alternative to Dagger and realised that it can handily generate factories for you without kapt. That brings some exciting potential for build time improvement so I was eager to try it out. However very quickly I got stuck.
-
Multiplatform dependency injection libraries equivalent to Dagger/Anvil
I'm currently using Dagger and Anvil for my DI needs. It's been working really well, especially around what Anvil permits in terms of multibindings defined on the type declaration rather than in a module. For example:
-
Toying with Kotlin's Context Receivers
Have you considered something like Dagger + Anvil (https://github.com/square/anvil) ? It works well enough that it gets out of your way. Is it doing insane things in the background at compilation time ? Absolutely. But it's worth it. And to save time in debug, you can shim in dagger-reflect to avoid the cost of having to run annotation processors.
-
N26 Path To Anvil
For more details, check the official documentation: Anvil Dagger Factory Generation.
-
N26 Path to Anvil
And finally, testing: Anvil offers a replace module feature that is handful to provide new dependencies during tests. For that, we create helper modules called testing and we provide fake dependencies of those replacing the production modules. Developers that include the testing in their test classpath can automatically interact with our testing utilities (or create their own, if required). To be completely honest here, it is more of an ongoing process.
QKSMS
-
Apple announces that RCS support is coming to iPhone next year
Third-party SMS and MMS messaging apps already exist on Android, such as QKSMS,[1] Simple SMS Messenger,[2] and a large number of proprietary apps. There isn't a shred of evidence that these non-default SMS/MMS apps increase spam to any measurable extent compared to SMS/MMS apps that are preinstalled on phones.
[1] QKSMS: https://github.com/moezbhatti/qksms
[2] Simple SMS Messenger: https://github.com/SimpleMobileTools/Simple-SMS-Messenger
-
replacing stock apps with FOSS alternatives..
Alternatives: Connect You, Koler, QKSMS
- Google is about to make life more difficult for custom ROM fans
- What is your favorite app that doesn't have a good open source alternative?
- Trouble setting conversation title (of group messages)
-
All my Open Source App Alternatives
Try QKSMS it is more visually pleasing.
- Signal is dropping SMS support and both QKSMS and Silence are no longer maintained. Is there a good, open source alternative? Preferably that encrypts your texts locally and allows for backups?
-
QKSMS unable to attach audio file?
I have just added a feature request "add support for audio file attachments" at https://github.com/moezbhatti/qksms/issues/1921
- Access to QKSMS
- What SMS apps are you using?
What are some alternatives?
kotlin-inject - Dependency injection lib for kotlin
Simple-SMS-Messenger - An easy and quick way of managing SMS and MMS messages without ads.
Dagger2 - A fast dependency injector for Android and Java.
traccar-sms-gateway - Traccar SMS Gateway for Android
koin - Koin - a pragmatic lightweight dependency injection framework for Kotlin & Kotlin Multiplatform
matrix-sms-bridge - Matrix bridge, that allows you to bridge matrix rooms to SMS with one telephone number only.
dikt - Simple and powerful DI for kotlin multiplatform
Partisan-SMS - Encrypted SMS messenger for Android
Theatre - Pet project using Clean Architecture + MVVM + Reactive Extensions + Android Architecture Components. The data are fetched from LondonTheatreDirect API. ðŸŽ
android-smsmms - Library for easily sending SMS and MMS for Android devices
AndroidArchitectureTemplate
mobile-gateway - Mobile Gateway for Nuntium (aka Local Gateway)