We got some good feedback about last week’s development workshop, titled “Replacing Fragments with Conductors’ Controllers” so we decided to share the slides, too! Replacing Fragments Workshop: Click the link to instantly download the slides (and): Get rid of Fragments! 😉
#changintheworld #oneappatatime So, thousands of Hungarian college students turned their theses in last week. It was probably the peak in the middle of a sleep deprived period, as examinations are also still taking place. I decided to save all my key insights from this extraordinarily amazing period of time. (riiiight.) Hopefully it will help […]
It’s good to know what you can do in xml to draw something on the UI. I recently noticed that I and some colleagues tend to overcomplicate simple tasks, because we don’t really know the built-in possibilities. Sometimes the design requires a not too complex, but not so simple (e.g. a shape) drawing on the […]
If there is sensitive data to be stored when developing a mobile app, security is of utmost importance. Developers can make hackers’ work harder, but it’s almost impossible to totally prevent a data breach if they are at it. Key and encryption handling can be a real pain-in-the-ass. Storing encrypted data is one thing, but […]
More and more Android apps provide video editing based features. This library is not a complete wrapper for the most recent Mp4Parser library. However, it provides a few useful features that are usually used by these apps. If it does fit your application’s needs, feel free to implement those features based on the current implementation. The […]
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.