This Week’s Links
Fragmented Podcast – Ep #92 – Learning Kotlin – Dealing with Static-ness and (companion) Objects Costs
This week in this second episode of their learning Kotlin series, Donn (@donnfelker) and Kaushik (@kaushikgopal) talk about Kotlin’s support for static members … or lack thereof. Kotlin as a language was designed so there’s no such thing as a “static member” in a class. But there are times when having static members can be useful. So what do we do in those cases? Do we just avoid static members? Are there better alternatives? What are the costs with some of these approaches?
Your Next Growth Market on Google Play: Launch Your Title in Russia
Russia is on tap to be the next emerging market for Android development. Statistics show the Russian people are very engaged in terms of smartphone mobile usage, and Russia is one of the top countries in terms of apps downloaded per person. Check out this post for some tips for getting your app ready for Russia.
Deep Dive on Ember Events
This post looks into the difference between Ember actions and DOM events and why it matters. Interactive examples and code snippets included.
Two-Way Data Binding on Android: Observing Your View with XML
Take a look at three different ways to apply two-way Data Binding to your objects in your XML layouts. Two-way Data Binding is a technique of binding your objects to your XML layouts so that both the object can send data to the layout and the layout can send data to the object.
Android Banking Trojan Misuses Accessibility Services
Accessibility services can be used not only by disabled users but by malware as well. Infiltration by misusing accessibility services can read text from display activity, set itself as default messaging app and click on behalf of user. This post takes takes a detailed look at the Trojan including the distribution vector, samples, C&C server, functionality, targeted banks, and a video demonstration.
Common Mistakes When Doing Clean Architecture in Android
Huteri Manze explores three common mistakes people have fallen into when implementing clean architecture, including not being able to move logic from Activity/Fragment to Presenter/ViewModel, not thinking about a unit test, and not thinking about modularity/separation.
Stop Ignoring Android Lint, Use It
Alex Florescu presents his case for using Android Lint, which he contends is one of the most powerful tools in your Android arsenal. While it can be a bit noisy, Florescu tells how to use these warnings and turn Lint back into a useful tool.
Code Review – 3 Reasons Why Your App Deserves It
In this article, Droids on Roids tells you about the process of peer code review: what it is, what it is not and why they believe its presence is crucial for successful software development.
Platform vs. Language
People frequently make the mistake of conflating a programming language with the platform. It’s an easy mistake to make because these days, most major platform vendors have one language (or two) that they closely tie to and associate with the platform. Click to read why you should separate the two.
Use Cases for Wearables
Android Wear 2.0 is focused on bringing standalone apps on smartwatches, but that does not invalidate the key principles that should be followed when designing wearable applications: glanceability and micro user interactions. The team at Novoda did a small exercise to list how different categories of applications could benefit from a wearable version, allowing users to access some of the main features directly from the wrist.
Jobs(these are pulled from Androiddevdigest.com/jobs) Lead Android Developer (m/f) at Freeletics GmbH Principal Android Engineer Senior Android Engineer Android Developer Need to hire an Android professional? Post a job here |
Our Battle with the OutOfMemory Army
The Lalafo crew outlines their battle with OutOfMemory errors. After applying these fixes outlined in the post, their OOM errors dropped from 70% to 3% of all crashes.
Using Kotlin in Your Android Production Code
If you’ve read dozens of articles about using Kotlin for Android, and maybe even tried it out on your own, but something’s keeping you from using Kotlin in your production code, this article explains why you should make the switch.
Videos
Caster.io RxJava 2 – compose() Operator
Learn to use the RxJava compose
operator to apply modifications to an existing reactive stream using a Transformer
. In this lesson you will learn how to add a compose operator to your reactive stream, the purpose of a Transformer
, and how to reuse groups of operators using compose.
Caster.io Android Things – Working with an Alphanumeric Character Display via I²C Output
This lesson is going to show you how to interact with the Android Things Peripheral IO APIs to understand and communicate with an I2C output peripheral. In this case a 4-digit Alphanumeric Character Display. Using this peripheral to code an IoT Android app.
Open Source
SmartCropper
A library for cropping images in a smart way that can identify the border and correct the cropped image. Applicable to ID cards, business cards, documents and other photos that need to be cropped.