Building solutions together

Today mobile devices account for the largest percentage of internet traffic and are quickly becoming the primary platform for personal computing.

Since day one of our companys inception we have been cultivating and developing our Software development capabilities for mobile devices. We are very proud to have 100+ mobile projects under our belt and these range from simple mobile applications, to complex apps that have high reliability demands and utilize different sensors, cameras, GPS and other device capabilities. These applications can be integrated into wide range of hardware devices including smartphones, tablets, in-car head units, in-home, in-office and in wearable devices. Additionally, we have experience packaging both mobile products for the end user and complex SDK and background services.

The key components of our value proposition in mobile development are:

  • • Development for all key modern mobile platforms — iOS, Android, Windows Phone and others
  • • Native, hybrid, cross-platform and mobile web development
  • • Integration of mobile applications with web and embedded solutions, Cloud backends, BaaS systems and broad variety of 3rd party services
  • • Research, prototyping, MVP and full-scale product development
  • • Utilization of Idea-to-market approach — we perform all of development stages: from ideation to UX Design to software engineering and finally to application release

Elaboration

During the elaboration phase our team of highly experienced Product Managers and Designers collaborate with the client to develop the initial documents that define the applications behavior. They begin with use-cases and basic scenarios that gain insight into how the application will operate from the users perspective. At this stage you are able to envision how the application will look and behave.

Our team also has the capabilities to create simple prototypes that enable clients to test the device prior to any actual development.

Mobile UX & Design

Our UX & Design team has extensive experience delivering the best user experience for a variety of mobile applications—native, hybrid and mobile web apps. Our UX designers work in close collaboration with both mobile product managers and mobile software architects to develop a user experience that is consistent and compliant across different platforms and has great usability and visual appeal.

Please visit our UI & Design page to learn more about this service offering.

Elaboration and research

During the elaboration phase, our mobile engineers make recommendations on the best development approach based on the product definition, the potential platform choices and any implementation limitations.

They act as architects and document all technical requirements of the applications: devices selection, requirements to the server-side API and dependencies on 3rd-party libraries and services.

Feel free to visit the Elaboration process webpage to learn more details about this service offering.

Native application development

TekWissen recommends usage of the native development approach in most (though not all) cases.

This approach has the following benefits:

  • • Ability to deliver high-quality, reliable applications with smooth, nice-looking native UI
  • • Native UI provides better user experience with the application
  • • Independence from 3rd party libraries and tools, which minimize support costs
  • • More optimal memory and battery consumption
  • • Ability to implement all functionalities enabled by this platform
  • • Eases new feature development and ongoing support
  • • Faster startup time

We are aware that a notable disadvantage of this approach is that more effort is required to develop the application for several platforms. In this case, hybrid or mobile web applications are viable alternatives to native apps.

Hybrid (cross-platform) application development

The effort to create hybrid applications combines both native and HTML5 development. This approach is widely used to create cross-platform applications or applications that bring HTML5-like user experiences into mobile app. Our experience with technologies for hybrid application development includes:

  • • HTML5
  • • WebKit
  • • Cordova/Phonegap
  • • Titanium
  • JavaScript libraries
    • • jQuery/jQuery Mobile
    • • Sencha Touch
    • • Leaflet
    • • xui.js

Some important restrictions of hybrid applications to consider are execution speed and memory consumption. To tackle these challenges, we use the latest tools, libraries and approaches to deliver the best experience to the user. These allow us to reduce startup time, memory usage and increase the applications speed and responsiveness.

Mobile web application development

Sometimes functionality of a mobile application may be effectively delivered in the form of a web, HTML5/CSS3/JavaScript-based application that is optimized for usage via mobile devices. In these cases, we utilize the latest technological approaches to bring a quality level user experience to your application. This includes support of features like flexible layouts, small high-density screens, gestures, caching for faster loading and other features, all of which remove the boundary between usability and visual appeal of your mobile web application and native mobile apps.

Feature development

The TekWissen team has experience with all angles of mobile application development, including the following areas:

Media

Media streaming (both video and audio), DRM, media management and developing custom controls for media playback.

  • • Video and audio streaming
  • • Developing custom controls for media playback
  • • Audio/Video/Image capture and post-processing
  • • Support of DRM media
  • • Brightcove Cloud Video
  • • Graphics and animation with OpenGL
  • • RenderScript (Android), CoreGraphics (iOS)

Security

Using data encryption libraries, secure protocols and security audits.

  • • GSS (provides a standard set of security-related services)
  • • Security (interfaces for managing certificates, public and private keys, and trust policies)
  • • CommonCryptor (interface for symmetric encryption using AES-128, AES-192, AES-256, DES, Triple-DES, CAST, RC4 stream cipher, Blowfish block cipher)
  • • Java Cryptography Extension (encryption, key generation, MAC)
  • • Hardware-level encryption

Connectivity

Using open or private protocols (VoIP, XMPP, RCSe) and different interfaces.

  • • Wi-Fi and Cellular Radio
  • • Wi-Fi P2P, Wi-Fi Direct
  • • Bluetooth
  • • NFC (Android)
  • • SIP
  • • USB Host and Accessory / Accessory Development Kit (Android only)
  • • PUSH/Google Cloud Messaging support
  • • Social networks integration (Facebook, Twitter, Google+)
  • • Connecting devices through the headset port

Device integration
  • • Support different devices, screen sizes, densities (mainly Android)
  • • Interaction with other applications (sharing, data processing)
  • • Background services (both iOS and Android)
  • • Location and Sensors--accelerometer, gyroscope, barometer, temperature, GPS, and more
  • • Phonebook and Messaging
  • • Calendar
  • • Telephony
  • • Web Browser and WebKit
  • • Native Development Kit (Android)

Maps and navigation

Using native and custom maps and navigation applications.

  • • Google Maps API
  • • MapKit (classes for embedding a map interface into your application and for reverse-geocoding coordinates)
  • • Bing Maps
  • • Route Me
  • • Yandex.Maps
  • • OSMdroid (Open Street Maps) offline routing and navigation based on OpenStreetMap

Payments/merchants
  • • Store Kit (unlock features, sell new services, and provide added value to your app using the Store Kit framework to enable in-app purchases of new content)
  • • In-App Purchase/In-app Billing--one time and subscription-based
  • • PayPal
  • • Visa/Mastercard
  • • Coupon systems via QRCodes, BarCodes, NFC, Passbook

Advertising and analytics
  • • Google Analytics (enterprise-class web analytics delivered on Googles world-class platform)
  • • Flurry Analytics (harness the power of industry-leading mobile app analytics for free)
  • • iAd (embed iAd rich media ads into your app that allow users to interact with advertisements without having to leave their app)

Integration with 3rd-party services and APIs

Our engineers have considerable experience in connecting mobile applications with different 3rd-party APIs. These include popular social networks and services (like LinkedIn, Facebook, Google, Foursquare, and Twitter), as well as custom solutions with REST API.

  • Social Networks — there are many ways to connect an application to a social network in order to share and post statuses or information from within the application. We have the capabilities and knowledge to connect your device to the social network of your choice.
  • Custom API — many services do not provide easy to use SDK to their services. In these scenarios, our engineers can implement custom solutions in order to connect to the available functionality. We have experience working with different open protocols for authorization, data management, and API call. In addition, our engineers are able to advise the server-side team on how to create clear, modular and optimized APIs for mobile usage.

DeveOps services, automation and testing

Our DeveOps services secure the agile processes in our delivery team, namely—continuous integration and infrastructure setup. The infrastructure in Mobile development consists of repositories, issue-tracking systems, build servers, unit testing, functional and manual testing and distributing the application. In cases when we use an internally developed backend, our DeveOps team also supports installation of this infrastructure, staging and testing environments and other tasks needed for the server-side development.

We recommend using the following tools for the infrastructure of a mobile development project:

  • • Jira issue tracker with GreenHopper plug-in to support Agile development
  • • GitLab for source-code management
  • • Jenkins for automatic builds and testing
  • • Frank/Calabash for testing mobile applications (BDD)
  • • TestFlight for distributing applications between a QA and a product teams and also to receive test reports

Our development approach includes automated testing--unit and functional. We use a wide arsenal of tools that allow us to create automated tests, validate them, run them on our CI system and send test reports to all stakeholders.

The world of Automated testing is very dynamic and evolves very quickly. We make sure to keep up with the latest advances by constantly updating our expertise and tools. Currently we have expertise in: Robolectric, Espresso, UI Automator, Calabash, Frank.

Mobile backend as a service (MBaaS) Integration with commercial MBaaS solutions

BaaS solutions can be a very effective method of accelerating product release and shortening its time to market.

We continuously analyze existing MBaaS solutions such as:

  • • Kinvey
  • • Parse
  • • Moblico
  • • Backendless

We are able to provide expert evaluation of the most appropriate proprietary MBaaS for the required project.


We embrace the most cutting edge technologies, platforms and tools so that we can deliver the best products to our customers. Currently, we support the following major platforms:

Android

We cover development for all kinds of Android devices—smartphones, tablets, phablets for both high- and low-end markets. Our arsenal of tools include but is not limited to:

  • • Native Development: Java, C/C++, OpenGL, RenderScript, SQLite
  • • HTML5/Hybrid Development: WebKit, Titanium, Cordova/PhoneGap
  • • Cross-platform Development: Unity 3d, Xamarin
  • • Mobile Web: jQuery Mobile, Sencha Touch, Leaflet

iOS

We develop applications for iPhones, iPads, iPad Minis and iPods and have vast experience in supporting multiple iOS versions simultaneously (up to iOS 7). We have the ability to develop:

  • • Natively: Objective-C, OpenGL, SQLite
  • • HTML5/Hybrid Development: WebKit, Titanium, Cordova/PhoneGap
  • • Cross-platform Development: Unity 3d, Xamarin
  • • Mobile Web: jQuery Mobile, Sencha Touch, Leaflet

Windows Phone

We have experience in developing Windows Phone applications starting from WP7 and moving to WP8. We support a wide variety of devices and state-of-the-art approaches to deliver high quality applications for this platform:

  • • Native Development: .NET, C#, WPF, XNA
  • • HTML5/Hybrid Development: WebKit, Titanium, Cordova/PhoneGap
  • • Cross-platform Development: Unity 3d, Xamarin
  • • Mobile Web: jQuery Mobile, Sencha Touch, Leaflet

We also have expertise and experience with other mobile platforms like BlackBerry/J2ME, etc.