The client's organization has a culture of inclusion and they strongly believe in giving voice to everyone in the organization. They were looking to build a casual communication platform where everybody in the organization could express their views and build a strong bond amongst themselves. The platform should help management to share company achievements and updates and staff could express their opinions, discuss and raise concerns.
The platform was supposed to be built for the web as well as on mobile. The mobile app was crucial as casual communication platform users should get a comfort and convenience to express themselves.
The clients were looking for a reliable mobile app development partner who could help them build an app that-
Brings high staff engagement
Deliver a native app's performance and experience while serving web content from the CMS
As delivering a rich and engaging experience was a goal, we have chosen to build the app using native android SDKs. For engagement, we have implemented push notifications that keep the staff of the organization engaged with the app.
We have implemented push notifications to engage users with the app. Also we have integrated organization's employee directory with the app so that the app can determine users' departments and teams to push a relevant notification to them.
The content is segregated under various heads like News, Announcements, Posts to make staff to engage with content with easy.
The app fetches content from CMS using Restful APIs. The web content is rendered on lightweight native rendering component rather than to load it on full-fledged webviews to keep performance high. This was a major engineering challenge, as CMS content was full-fledged HTML which was getting conveniently rendered on the web but few were breaking on the app. We resolved the challenge by customizing the native renderer as per requirement.
Yet another challenge was 'Links', the web content of CMS contains elements like images, anchor which contain external links. The native renderer used to restrict such links to keep the platform secured from XSS attacks. We have customized the renderer to allow links from the same domain. The youtube links in the content are opened in the youtube app on the users’ android devices to give a native experience. In the same fashion other links are handled by their specialised apps installed on users’ devices.
The content is loaded in batched of 20 items at a time when a user reaches the bottom of the list while scrolling next batch is 20 items are loaded. The interface is built to be very responsive to the users’ actions and provide a pleasant experience.