Case Study: K4 Connect Universal App

Built a container application using Xamarin, for the client, K4 Connect , which helped its customers

K4 Connect engaged Insight Consultants to build a container application using Xamarin, to help their customers to use their existing familiar user interface across all their devices, both mobile and desktop. This case study outlines the details of this project. 

Client Overview

K4 Connect is a technology company, based out of Raleigh, NC, provide solutions that serve and empower older adults and individuals living with disabilities, enhancing their lives by integrating the latest in smart technologies into a single responsive system.

Business Objective

Building a container application that will allow K4 Connect customers to use their existing familiar user interface across all their devices, both mobile and desktop

Solution

Create a hybrid webview app using Xamarin for mobile and desktop platforms including a websocket based API for accessing underlying platform features

 

Result

Successfully built an application using Xamarin that runs on multiple platforms that users can use to control various devices around their homes.

 

Deliverables

Single Xamarin solution that includes application on four platforms

○ iOS

○ Android

○ MacOS

○ Windows

Desktop installer packages for Windows and MacOS

Unit tests for all bridge API commands

Web page to demonstrate each bridge API command

Web Browser

The application should load to a full screen browser

○ iOS – WKWebview

○ Android – native Chrome webview

○ MacOS / Windows – Chrome Embedded Framework as embedded process

Webview should support WebRTC natively

○ WKWebView requires a shim

Webview should inject custom K4Connect CA public cert for network requests

○ Resources

○ AJAX

○ Websockets (WSS)

Application should inspect outbound resource requests (image loading, etc) and if file is available in a designated local content cache directory, intercept the request and return it to the webview

 

The application was implemented using a WebView inside the Xamarin shell. The WebView communicated with a web socket server (part of the same application) that invoked native code to perform operations like using the Camera, accessing the file system, push notifications, serial ports, alarms, local storage using SQLite etc. We were responsible for writing this native code that the web socket server communicated with. The tasks involved studying and implementing operating system specific APIs and testing on multiple devices.

To explore more case studies, go to: Technology Services Homepage

Contact Us

Continue reading...