Creating BuildVariants with Gradle

Creating BuildVariants with Gradle

When creating an application, sometimes at some point we want to get several versions of our application that differ in some more or less important details. To easily obtain different versions of your application, just make a few changes in Gradle.
Read more
Solving a data flow diagram using PromiseKit

Solving a data flow diagram using PromiseKit

Before they start coding, most programmers begin by creating a data flow diagram to know exactly how each piece of code is supposed to work (in other words, how it should behave). If the behavior of the application is not complex, you do not have to sketch it, although it is a good habit. However with more complicated behavior, it is hard to properly code such flow.
Read more
CallKit – how to configure it?

CallKit – how to configure it?

iOS 10 offers many new features. One of them is CallKit, the framework which allows our application to seamlessly integrate with the user interface of a phone. CallKit may be used in applications to allow users to receive incoming calls and perform outgoing calls with the phone-provided UI. VoIP call can be muted or suspended. It is also possible to make video calls.
Read more
Speech Recognizer API – what do you need to know?

Speech Recognizer API – what do you need to know?

In iOS 10 we can use SFSpeechRecognizer API, which allows transcription in real-time or using pre-recorded audio files. The outcome of such transcription is not only a text, but also alternative interpretations of the audio, length of spoken words and level of accuracy of recognized words (range 0.0 - 1.0). API allows for the analysis of more than 50 languages. Using SFSpeechRecognizer API in an application is trivial, it boils down to four steps.
Read more
Swift switch or, the fun conditions are

Swift switch or, the fun conditions are

I would like you to get acquainted with a switch conditional statement in Swift, using the rubber duck method. I assume that you already know the concept of the switch statement, therefore, I will show you what is new in Swift. Let's play with conditions!
Read more
Clean Architecture – reactive approach

Clean Architecture – reactive approach

Clean Architecture can be approached in several ways. One solution is to use RxJava 2, and in this post we will take a close look at this approach.In the presentation layer we will use the proven standard Model View Presenter, in the domain layer we will have UseCases with a single responsibility, and in the data layer we will apply Repository Pattern. All of this will be controlled with RxJava streams.
Read more
BDD using JGiven – how it can make your work easier?

BDD using JGiven – how it can make your work easier?

BDD or Behavior-Driven-Development is a method of programming in which business clients, developers and testers describe the behavior of the application with the help of scenarios. The scenarios are written using agreed notation and language, so that they are understood by all parties.
Read more
Custom Quick Tiles Settings in Android 7

Custom Quick Tiles Settings in Android 7

In recent editions of Android system, settings underwent a small revolution. The main settings screen has been reorganized, new options have been added. Android Lollipop introduced shortcuts to quickly switch most important settings so that they are visible immediately after expanding the upper panel. Android Nougat, along with the API 24, provided us with the ability to add our own settings there, related to our application.
Read more

Get to know us better

Project estimation

Check out how we use our knowledge in practice, and make your project with us.

Why choose us?

Logo Mobile Trends Awards

Mobile Trends Awards 2017

Nomination in M-commerce category

17

clients reviews

Clutch logo
Logo Legalni bukmacherzy

Legal Bookmakers Award 2019

Best Mobile App

60+

projects in portfolio