Logo
blank Skip to main content

Enhancing an MDM Platform with a Custom Audio Player in a Continued Partnership

MDM
C#

Several years ago, Apriorit delivered a secure mobile device management (MDM) solution to our client, and we have been collaborating on projects ever since. So when our client needed to add a custom audio player to their MDM solution, they entrusted us with this task.

Apriorit specialists covered the full development cycle from initial requirements research to product support and post-release upgrades. With our help, the clientโ€™s team could focus on tasks within their area of expertise and get a reliable, competitive, and convenient audio player.

The client

Our client is a US-based communications company that provides a mobile device management solution for organizations with strict security requirements. This solution allows their customers to securely manage Android devices and provide communication services to end users.

To make the MDM platform more competitive, our client decided to add a custom audio player for music and audiobooks. 

The challenge

To be competitive in a saturated audio streaming market, our client required a solution that could:

  • Provide the same convenience and audio playback features as the best audio streaming applications on the market
  • Form pricing and process payments and refunds within the app
  • Play music smoothly on devices with a poor internet connection
  • Support both music streaming and playing locally stored audio files
  • Comply with requirements of the music provider to access their music library

The result

Our client got two competitive Android apps for their MDM system: an audiobook player for uploaded books and a music player for streaming. The last app also successfully passed compliance testing with the music providerโ€™s requirements. Thanks to that, the app can allow users to stream a wide variety of recordings.

After we added the apps to the MDM system, the client was able to deliver more services to their current users and attract new ones.

Our solution

Since we had already worked with this client on implementing the MDM system, our team had a good understanding of their business requirements, environment, and communication preferences. Thus, we could focus on the main task โ€” working on a technical solution for the media player.

After analyzing the clientโ€™s requirements and API data from the music provider, we did the following:

  • Offered to split one app into a separate audiobook player and music player
  • Created basic architectures for the two apps
  • Designed UIs for the apps

We suggested first delivering and integrating an audiobook player into the MDM system and then adding music player functionality to it. This way, we can more efficiently test audio playing features. As a result of the suggested action plan, the client could quickly add this functionality to their product and start offering a new Android app.

Once the client approved this plan, we gathered a team of Apriorit experts, selected a suitable tech stack, and started development.

Our team for custom audio player development

Planning your own media delivery project?

Partner with Apriorit to get all the expertise and assistance you need.

How we did it

We divided the project into five stages that cover all key elements of the software development life cycle. Hereโ€™s the roadmap that helped our team turn the clientโ€™s vision into a competitive product:

5 stages of custom audio player development

Stage 1: Project discovery

Our team performed an initial analysis of the clientโ€™s and providerโ€™s requirements when the client first approached us with the idea of a new application for their MDM system. However, conducting a thorough project discovery phase helped us collect all project requirements, assess the competition, and identify risks to take into account during development.

In addition to eliciting requirements, we benchmarked popular audio streaming applications like Spotify and YouTube Music. The results provided us with target metrics for our appโ€™s performance and an understanding of user expectations towards streaming services.

We identified the following technical challenges to address during development:

  • Handling tens of thousands of requests per day on the provider side
  • Processing and playing back a large number of tracks simultaneously with a poor internet connection
  • Managing payments within the app
  • Passing strict compliance requirements with the music provider

With these challenges in mind, we improved our initial architecture design and technical requirements for the app. We also created a delivery schedule.

Stage 2: Developing an audiobook player

After some research on available audio playing solutions, we chose ExoPlayer as the engine for our application. This open-source Android media player supports both playing local audio files and streaming audio. Itโ€™s flexible and could be customized according to our clientโ€™s requirements. An Apriorit designer also created a custom, intuitive UI for the player.

Our audiobook player allows MDM administrators to:

  • Upload audio files
  • Manage files via an admin panel
  • Add and delete books from an internal app store of the MDM system
  • Play audiobooks on end-user devices

Developing an audiobook player as a separate application allowed us to test the solution and verify the correctness of our technical approach. This also allowed our client to monetize the audiobook application right away while we kept working on the music player.

Related project

Improving a Windows Audio Driver to Obtain a WHQL Release Signature

Explore how we helped a British audio technology company improve the UI of their software, enhance their custom Windows driver, and get WHQL certified.

Project details
Improving a Windows Audio Driver to Obtain a WHQL Release Signature

Stage 3: Developing a music player

We started work on a music player with improving the initial technical specification and creating the UI. Then, we implemented basic application components and a music search feature. To ensure that we implemented it correctly, we partially integrated the application with the music providerโ€™s service and tested it on Android tablets.

Our tests and integrations were successful, so we started adding more features to the app, such as: 

  • Music purchasing
  • Playback
  • Music pricing management via the web page

Many users of our clientโ€™s MDM system have a poor internet connection, which disrupts music streaming and detracts from the user experience. To address this issue, we implemented caching of popular songs on our Amazon S3 instance. Caching allowed the Apriorit team to improve the appโ€™s performance, reduce infrastructure load, and ensure smooth streaming.

Finally, we fully integrated the app with the music provider.

Stage 4: Establishing compliance with the providerโ€™s requirements

A crucial part of this project was to confirm that client solutions comply with provider requirements. We used a test account of the music providerโ€™s service to integrate our app. It provided only limited access to music in the providerโ€™s database. To get full access, we needed to comply with the providerโ€™s requirements and buy a production account.

Compliance testing took one week. During this time, the music provider verified that our Android app provided the same quality of music purchasing and streaming as their own application. We also discussed several issues with the app on the providerโ€™s side.

After successful compliance testing, our client started monetizing the new app and providing new services to their users.

Stage 5: Adding more features

We continued to enhance the app with new features after its release. The key features we added at the end of the project were:

  • Internal reporting. This feature allows the client to generate various reports on audio player usage in their MDM system.
  • Refunds. End users needed to be able to get refunds for purchases of content that had issues. During development, we encountered cases of double spending and cooperated with the music provider to solve this issue. Adding refunds improved end-user satisfaction with the app and helped the client avoid content-related risks.

The impact

Our decision to divide an audio player into two apps and release the audiobook feature first allowed the client to start monetizing the new player early. During the first couple of weeks after the final release, the client sold several thousand songs via their MDM system.

The new features we delivered helped the client to attract new end users, improve the competitiveness of their product, and monetize it in new ways.

Looking for a mobile and web development partner?

Reach out to leverage our experience in development, testing, and support of apps for these platforms.

Have a question?

Ask our expert!

Tell us about your project

Send us a request for proposal! Weโ€™ll get back to you with details and estimations.

Book an Exploratory Call

Do not have any specific task for us in mind but our skills seem interesting?

Get a quick Apriorit intro to better understand our team capabilities.

Book time slot

Contact us