PostMaster (Part 1)- A library for integrating social media accounts in mobile apps

Aaditya Doshi
Novumlogic
Published in
3 min readAug 6, 2020
Photo by NordWood Themes on Unsplash

Introduction

Every mobile developer must have come across many projects where they are required to integrate social media handles like Facebook, Twitter, Instagram, etc. into their mobile application. Integration with such social media handles from mobile apps can be both challenging & tedious. Challenging because it requires a developer to do a lot of tasks like generating API keys, token generation, etc & follow different documentation for each platform. And tedious because such integration can be tiresome and soon turn into a menial job if have to be done repeatedly in many projects.

PostMaster library is an ideal example for mobile applications that require social media integration either for providing easy login options to its users, posting media content for marketing or advertising purpose, or simply for viewing content.

PostMaster library is a custom composer which enables its users to post on social media platforms such as Facebook, LinkedIn, Twitter, Telegram and Instagram without opening and using the pre-installed app for each platform.

Motivation & Idea behind writing PostMaster

Core motivation behind writing this library was to provide users with a single platform to post same content on multiple social media handles without opening each platform’s application. This in extension became a library that our developers would have as a ready-to-integrate jar/dependency to integrate social media platforms. Thus the team can now directly code for features pertaining to a particular social media without the need to write boiler-code for integrating the basic developer APIs, generating auth tokens, and other such basic prerequisites.

Problems faced while building PostMaster

  • Going through lengthy list of developer APIs and documentations for individual social media platforms
  • Making developer accounts, verifying business details and contract signing
  • Configuring platform login and getting the unique code (or Access Token/Access Code/Id) as per the user and keeping a track of the same
  • Getting all the user details that are to be displayed in the App such as name, email id, profile image etc. using the platform APIs and SDKs
  • Getting the approval from platform to use the platform permissions for accessing the user’s data, keeping the app for platform reviews, and making sure that the application adheres to all the privacy policies and marketing policies.
  • Posting on the platforms such as Facebook, LinkedIn and Twitter without requiring to download that platform’s particular mobile app on mobile device.
  • Posting image updates along with text
  • Posting on all the platforms at one go.
  • Accounts getting blocked due to violation in platform policy for posting content.
  • Making sure that the app works exactly the same in development mode and live mode.
  • Eliminating the need to test application on production, as the library has already been rigorously tested on production level.

Conclusion

This library turned out to be a boon for our team at Novumlogic. Now we have a library that we can just add as a dependency for integrating social media platforms and concentrate on highlighted features of the app. This not only saved us time but also made it easy for the team to understand how social media integration actually works and how they can integrate the same into other projects with ease.

Check out our upcoming posts where we go in-depth about integrating Facebook, LinkedIn, Twitter, and Instagram social media platforms into mobile applications.

--

--

Aaditya Doshi
Novumlogic

Mobile Developer | Graphic Designer | Tech Enthusiast | Caffeine Driven | Avid Learner | Marvel Cinematic Universe & Harry Potter Fan | Blues & Blues rock lover