Android Development Outsourcing

If you are looking for a no-compromise Android product, outsource to us. Rest assured, all our innovations and best. design practices are applied in all our Android development projects.

Android is moving on and so are we…

Google keeps on releasing newer versions of OS, SDK, ADT Plugins, Add-On and other tools. InnovationM is tailgating.

 

The latest ADT Plugin offers new features and has stabilized existing features. These are powerful features and we are harnessing & adopting them in our application development and training programs. This has resulted in faster development with high quality.

Android SDK

Frequent releases of Android SDK poses a challenge in terms of catching up with it. But we are running fast too. We have been closely following all new releases and gone deeper in understanding new widgets, packages, APIs and bug fixes done and applied this knowledge well to our application development projects.

Add-On

Many Add-Ons from Google and other OEMs have been released. Be it Add-On for Maps API, Google USB Driver Package or Google TV Emulators, we know them well and we apply them as required.


 


Android Virtual Device & Emulator

We understand the power and features of Android Virtual Devices (AVD) and emulators and are well adopted and integrated in our application development projects. Emulating SD Cards, setting up screen sizes, skins & device densities or phone features like GPS, Keyboard, AVD / emulators are heavily relied upon for smooth development.
We add additional skin for new devices and integrate with AVD/Emulator to determine the application behaviour on the new skin. The SDK comes with adb (Android Debug Bridge) that coordinates between development environment and emulator/real device. Further we can emulate battery going down to 10% or vary phone signal strength to see the effect of the same on the behaviour of the application and many more.

Android Virtual Device and Emulator

Development Tools are family!

Android has provided a set of developer friendly and powerful tools. At InnovationM, we exploit these tools to the max to optimize our development time and quality standards.

Graphical Layout Editor

The Graphical Layout Editor tool from Android provides faster development. Over time, it has been enhanced such that it provides lot of flexibility and features in choosing the widgets, layouts and properties to enable faster development of user interfaces. This provides for optimization techniques and how the screen will look like on different screens sizes, densities, across different Android SDK Versions and more. We understand this tool very deep and this translates to faster and high quality UI design even for complex layouts. Design of layouts will be portable to different screen sizes and densities.

DDMS

Android provides DDMS perspective that contains lot of views that are using SDK Tools and Platform tools for faster development and debugging of application. Be it LogCat to see the logs or Threads View to nail down the performance issues. Be it using the Emulator Control to emulate the interrupts like a phone call coming or SMS being received. There are many command-line tools that can run directly from Android SDK directory from local machine.


Best Design and Coding Practices

Mobile device comes with limited CPU, memory and power. We very well understand the platform capabilities and limitations and the same have been integrated in our design and development approach. All our innovations and best design practices are applied in all our Android development projects. Whether it is for designing user interface, scheduling jobs, writing a background app, avoiding UI threads management for long operations or avoiding ANRs, our design team has all of it covered well.
Code Review (we believe in it and love the tools!)
At InnovationM, we believe that a well written code goes a long way in optimizing the performance and portability of the application. We use tools such as Lint Warnings View and Hierarchy Viewer to ensure good quality code and layouts.
Lint Warnings View provides errors and warning by scanning the code and providing a list to act upon. Hierarchy Viewer, on the other hand helps in fine tuning the layouts for faster rendering.
Best Usability, UX Practices
We have learnt over time on how to provide exciting and highly usable application to the user. Human being is lazy by nature and they don’t want to change their habits. We align and present the application to the user so that user is able to use it very easily without changing their habits. That brings the user closer to the application and might result in high and longer adoption. Best Usability and User Experience (UX) practices are followed at InnovationM, whether it is for designing the layout of an app or working out the navigation.

InnovationM Android best design practices
Re-usable Components
Over a period of time and because of our focus on Android, we were able to create a repository of re-usable components on Android. Be it creating a custom slider control or a set of animations, there is good chance that we may have some variant of it in our reusable repository. There is no loyalty, licensing required to use these components, just pure-play utilities and enablers. They (contractually) become part of our client’s IP once we use it to build the code / app for our clients.

Testing

Frequent OS releases, multiple OEMs, custom OEM frameworks, innovative form factors and carrier customization has led to Android fragmentation. Providing an optimum device test coverage is a challenge.
At InnovationM, we have developed a strategy to optimise device testing efforts & reach by classifying the devices into various family of devices based on factors like OS version, device form factor and other technical & OEM specifications. Efforts are then channelled to thoroughly test ‘representative’ devices in each family and thin testing on others. A right mix of testing using emulators, real devices and external ‘testing over web’ is used.
Testers use SDK Tools to emulate different situations like low battery, low signal strength, call interrupts etc during testing. Applications like aLogCat, WatchDog, Screen Capture are extensively used by InnovationM School of Android across various projects.


Android Test Lab

Android Innovation Lab in India
We have our own device inventory of Android devices at our Android Innovation Lab in India and we keep on adding new smartphones and tablets to our device inventory. Other than testing on Android emulator, our developers and testers ensure that we test the application on the device to determine the exact behavior.
Android Innovation Lab in UK
We have our own device inventory of Android devices at our Android Innovation Lab in India and we keep on adding new smartphones and tablets to our device inventory. Other than testing on Android emulator, our developers and testers ensure that we test the application on the device to determine the exact behavior.

Cloud-based Testing
For cases when the device is not available or cannot be acquired, InnovationM utilizes the services of services providers such as Keynote Device Anywhere and Perfecto Mobile.

Perfecto Mobile

Perfecto Mobile is a global leading provider of cloud-based testing, automation and monitoring solutions for mobile applications and websites, utilizing a wide selection of REAL mobile devices accessible via the web.

Keynote DeviceAnywhereTM is an enterprise-class, cloud-based, mobile application lifecycle management (ALM) testing & quality assurance platform. It is used by over 1,000 mobile developers and enterprises to deliver mobile applications, content and services faster while reducing downtime and testing costs.

Publishing Apps
We help in developing strategy for releasing apps to the end users – be it through Google Play, Amazon App Store, enterprise portals or your own distribution channel. We help to make the process of managing build for various devices and OS upgrades look easy.


Maintenance & Support

InnovationM provides post-release maintenance & support to client applications. Be it fixing any user issue or updating the app for a new Android OS release, we ensure a smooth post-launch experience for our clients.

Device Adaptation / Porting

When we design, we design not for one but for multiple target Android devices. We build enough abstraction, configurability & parameterization in our initial design or base build to ensure that the application is “reasonably” adapted to multiple Android devices from various OEMs. While we cannot achieve a “full portability” in the base version, but we ensure that process of adapting to multiple devices benefit from a thought-of design in the base build.