Mobile application types we develop
Our Approach to mobile applications development
We start by listening to you to better understand the product you want to develop. An important first step for the Travolab team is to determine the type of mobile technology that would work best for the functionalities you want to implement. Our software architect or tech lead together with a project manager or one of our business analysts would work together with you to understand the business area you are involved in, the software choices of your competitors, but also more specific aspects of your organisation, such as your internal capabilities to maintain the application in the future. There are certain other aspects that count: your budget, the amount of time we have from the start to commercial launch. Here are some further thoughts on the types of choices we will make together with you.
Native mobile applications
These applications are created using native SDK and programming languages that are offered by Apple (iOS) and Google (Android) for a single platform. Our team can use Swift, Objective-C, Java.
- High performance and speed due to fewer layers of interaction between the program and underlying resources
- UX that was created by Apple and Google platform experts
- Full access to the platform API and SDK is available for the developers
Cross-Platform Native mobile applications
This type of application is compatible with multiple operating systems. Travolab experts have experience with React Native, Xamarin and Kotlin Multiplatform for such apps. Modules can be created in languages such as C, Swift, and Java.
- Reusable codebase for both platforms
- Less development times
Hybrid mobile applications
- Reusable codebase for both platforms
- Less development times
- Have limited functionality for interacting with mobile hardware
Progressive Web Applications
Our developers keep Apple’s Human Interface Guidelines and other UI and quality standards so no errors occur when publishing applications to the Apps Store and Play Market.
Technologies we use in our mobile applications
- Swift, Objective-C, C++, Java
- iOS, WatchOS, Android
- SQLite (Core Data), Realm
- HLS, MPEG-DASH
- Google maps, Apple maps, OpenStreetMap
- Firebase, Google, FB
Mobile application features we offer
Our mobile experts know how to create a mobile application using native iOS, Watch OS and Android platform.
Live video streaming
If you need to integrate live video streaming into your mobile application, we can find the best solution for you. If your project requirements are to use streaming with a low latency, we can implement the WebRTC solution with latency less than a second. On the other hand, HTTP Live streaming (HLS) has higher latency of 5-20 seconds. However, HLS is the most used streaming protocol that is supported by a number of devices and browsers. It has adaptive-bitrate capabilities that means delivering the optimal user experience by adapting the video quality based on device and connection. So, we suggest using HLS if video quality is important but latency is not. For example, streaming video from some event.
- If you need to supplement your server solution with a media server that will store and stream content, we have experience in several existing media servers on the market and would be able to recommend and test different options together with you. In addition to managing the saved content, the media servers we work with have ready-made SDKs for quick integration with the mobile applications.
We offer solutions based on ARKit and RealityKit. We have experience of using face tracking with Apple Neural Engine and front-facing camera that can be applied in user photos and videos. With AR we can add 2D or 3D elements to the live view using the front or rear camera of your device.
Navigation and maps
If you need a solution that is the most integrated with iOS, then Apple maps will suit you. On the other hand, google maps will work on two platforms iOS and Android. Such SDKs offer you a map display, add markers and overlays. Also, users can perform places search with autocomplete, get images and detailed information about a place.
- A good alternative, we propose to consider OpenStreetMap (OSM) and MapBox SDK. Its data is free. But server capacity is limited.
We follow the Apple Human Interface Guidelines and Android Developers Design Guidelines for visual and navigation patterns and quality guidelines for compatibility, performance, security. Adhering to this strategy is essential for the successful publication of the application in the App Store and Google Play. We suggest using animation that adds for better user experience and fun using your mobile app. We add Haptic Touch that provides haptic feedback if the user presses the screen. So, we can use it on home screen app icons to show Quick Actions.
When developing an application, you should immediately think about dark and light themes. Apple recommends publishing apps that support both. We can implement editing of the application theme on the server, which will allow the user to see the updated interface without installing a new version of the application.
Localization and Internalization
We offer localization using the standard Apple mechanism, which will work automatically when you change the phone language. Alternatively, users can change the language inside the application. This option will be more flexible, since you can change the application language without changing the system language and therefore without rebooting.
A very convenient solution would be the ability to edit localization files on the server. This will allow you to add new keys and fix old ones without re-publishing the application.
We take into account such features as the direction of the language. For example, Arabic has right-to-left script direction. So, for this language we can make a separate UI layout.
If your application requires adaptation for people with special needs, we can use such available mechanisms as VoiceOver (built-in screen reader) and Text to Speech (read the selected text in over 30 languages). We also develop a layout that dynamically adjusts to the font size of the system, which is very convenient for people with disabilities.
In order for the application to work offline, it is necessary to organize the storage of data on the user’s device. Core Data from Apple offers a turnkey solution for saving your data. Here you will find already implemented caching, synchronization with iСloud, versioning of the database. On the other hand, Realm is a lightweight solution. It is fully-featured, efficiently uses memory, disk space and battery life.
Privacy and security
We are concerned about protection and privacy of the user’s personal data.
We adhere to international standards General Data Protection Regulation (GDPR) and California Consumer Privacy Act (CCPA). One of the possible solutions can be OneTrust. It helps to collect and share user’s data in a proper way, displaying device permission notices.