Android contains several APIs that hold resources back. They need to be released before closing the current Activity or any other UI part. Doing things the old way, you are responsible for releasing these resources at the end of each activity. With complex tasks, it becomes quite hard to keep track of all of these resources. It is even more complicated when you use them in asynchronous tasks. A small programming overhead will eliminate this problem by replacing the async tasks with Rx streams and scheduling them on the background threads. So, Rx wrappers will ease thread handling. Here is how I use Rx wrappers to make them as awesome as possible:
Some Android Projects might require high or low level media processing. This article rounds up a few useful libraries, like FFmpeg, MP4Parser, Intel Media for Mobile, etc. All the libraries have both pros and cons. You need to carefully consider, according to your initial target API-s, devices, and specification, which one you’ll use . I won’t go into too much detail, the article’s main purpose is to help you decide which lib fits best for a given issue. The selected library or libraries can have great effect on the size of your final application, and will also affect the code complexity and amounts of future maintenance.
Logging is essential during development. Therefore, the Android SDK provides the public with a default logger. It is easy to use: we can add tags and also separate logs by different levels.
The SDK’s defult logger is not bad and it’s enough for the basics. But hopefully developers think logging should result in far more than just the basics.
At Wanari, we usually prefer native Android & iOS development and my colleagues have recently written quite a few articles on these topics. However, as a web developer, cross-platform mobile app development options stand closer to my heart. In this article, I provide an example for creating a custom Cordova plugin. Cordova is a […]
Introduction to the new Android ConstraintLayout
ConstraintLayout is a new Android layout type presented at the Google IO. It has several new features including a new Layout Editor built in the new Android Studio. (currently on the Canary channel v2.2 Preview 2) The reason for this new layout is to reduce the view hierarchy’s depth and complexity. By using ConstraintLayout, you can optimize and speed up the UI rendering phase of your application. It is compatible with all the currently available Views and ViewGroups and it is part of the Android Support Library. It works down to API level 9.
If you are a budding mobile (iOS or Android) developer, this could be a good place to start with your first release, but if you are a seasoned veteran, maybe this can widen your knowledge or even show you a few new ways worth trying.
If you let a version of your app out of your hand, you will know nothing about it – just bad reviews in the AppStore or on Google Play, but not a single detail you can rely on. This makes crashlogs a must have kit. I recommend you add crashlogs not only to the release versions of your app, but before the first alpha tests.
Your tests will transform into a meaningful report, not just “Something went wrong here and here…”.
Previously, there was one catch-all solution for crash reports, BugSense. But now there are far more, some are even integrated into beta test systems, like Fabric and many others.
The purpose of the article is to demonstrate a method on how to extend the capabilities of the Google Maps API on Android devices. Basically, Google Maps can render only a limited number of markers over the map, let’s say a few thousand, but with larger numbers it will start to lag and will ruin […]