May 29, 2018

What makes the ideal mobile SDK ?

What makes the ideal mobile SDK ?

This week, released version 2.0 of the mobile data SDK. This is a significant milestone for our company and for the mobile developer community.

SDKs or Software Development Kits are pieces of embedded code that collect data from mobile apps in exchange for tangible benefits to the end-user. In our expert opinion, the ideal mobile data SDK should be based on the below-stated principles.

Core tenets for a mobile data SDK
  1. Consent :
    The SDK must obtain user consent through explicit opt-in.
  2. Security :
    The SDK must encrypt and protect user data from app to cloud.
  3. Privacy :
    The SDK must inform about privacy policies and data sharing.
  4. Value :
    The SDK must elaborate the benefits and value to the user.

Lately, mobile location data is in high demand. A location SDK collects the user's real-world location from apps on the user's mobile phone. Such an SDK should implement the core tenets and also include the below-mentioned features.

Core features for a mobile location SDK
  1. Accuracy : The SDK must collect high quality GPS location data with accuracy better than 25 meters
  2. Experience : The SDK must maintain or enhance the mobile app experience for the user.
  3. Battery : The SDK must conserve battery and only collect data when needed. The SDK must not engage in high-frequency continuously-timed GPS pings, resulting in rapid battery drain.
  4. Transparency : The SDK must not collect location data in the background without abundantly informing the user.
Compliance with Privacy Regulations

Most countries have their own version of privacy regulation and consumer data protection law. The Commission Nationale de l'Informatique et des Libertés or CNIL has an awesome interactive map that highlights the data protection and consumer privacy policies for each country. Singapore has the Personal Data Protection Act or PDPA. Australia has the Australian Privacy Principles or APP. Canada has the Personal Information Protection and Electronic Documents Act or PIPEDA. California has the California Online Privacy Protection Act or CalOPPA. The EU has the General Data Protection Regulation or GDPR which went into effect just last week.

To comply with global privacy regulations, mobile data SDKs need to implement the below indicated 3 step process for explicit user notice and consent.

As a California company that operates globally, has been privacy-compliant from day one. The mobile data SDK explicitly requests permission from the user, displays CITYDATA's privacy policy and terms of use. The SDK collects mobile data only if user consent is obtained and recorded. Users can change their consent at any time. Users can request a copy of their data, or even request the deletion of their data at any time.

GeoSDK v2.0

CITYDATA's shiny new GeoSDK implements the core tenets and features of an ideal mobile data SDK. Our SDK also includes the below features:

  • Change-of-state detection
  • Movement
  • Activity
  • Arrival
  • Departure
  • Dwell time
  • Transition time
  • Multimode data collection
  • Foreground only
  • Optional background (not recommended)
  • In-app event tags
  • Level-up events
  • Tagged user actions
  • Optional transaction events
  • High accuracy location data
  • GPS up to 25m accuracy
  • WiFi access point detection
  • Bluetooth sensor detection
  • Security and encryption
  • JSON payload encryption
  • Payload compression
  • API key fingerprinting
  • NTP server synchronization
  • Device and OS compatibility
  • From Jelly Bean (4.2.2)
  • To Android Oreo (8.1.0)
  • minSdkversion 17
  • Power event detection
  • Charging / full power
  • Cable plug / unplug
  • Offline data collection
  • Transmission on connection
  • Detailed Documentation
  • Integration steps
  • Rest API Usage
  • Visual Dashboard
Forever FREE

The GeoSDK is free to integrate, free to use, and free forever.

Not only is the SDK free, even provides free geo-analytics and location-based insights for app developers. Our AI platform processes the mobile data sent by the SDK to infer people movement and construct actionable cohorts. Some might think we're crazy for not charging for our SDK; we would rather partner with developers at every given opportunity than monetize every aspect of our platform and service. For developers who'd prefer to look through the SDK source code prior to integrating with their mobile apps, we are very open (no pun intended) to opening our source code and sharing the inner workings. For publishers and enterprise customers, we also offer a white-label version of our SDK so that you can make it your own.

In our next blog post, we will dive deeper into how app developers can leverage the GeoSDK, analytics and insights to increase user engagement by customizing and personalizing the mobile app experience.

Powered by is a San Francisco based startup that has been featured in the GovTech 100 list for 2018, 2019, and 2020, an exclusive list of innovative companies that provide technology products and solutions for the public sector. We provides People Intelligence™ as a service for smarter cities and real-world businesses. By combining public and private data, our technology platform unlocks deep insights that were previously inaccessible to city departments. makes it easy for city leaders to make data-driven decisions to create social impact and engage with local communities. Our AI platform, technology, and service are designed to make cities smarter, safer, and sustainable.