Performance
SDKs are often an important resource for mobile developers. However, with every new library, it is important to be sure that it doesn't degrade the performance of ones own app or harm their user's experience. In this section, we'll highlight a few of our performance benchmarks to hopefully give you some piece of mind.
[info] WIP
All of these data have been collected from various experiments that may not match your app's use of the SDK exactly. We'd love to work with you to measure performance in your use-cases so we can ensure that it always works in the best way possible.
Battery life
Use of the SDK in normal phone conditions has negligible impact on battery life. If user location is enabled, the SDK still increase an app's battery impact by only 1% in most circumstances and never more than 3%.
CPU and Memory
Set's impact on your app's CPU and memory requirements is in generally very small. Average CPU usage is less than 1%, with occasional sub-second usage of around 25% on the A9 chipset. Those spikes will increase depending on your usage of the SDK, primarily how frequently you utilize the Track API.
Network usage
By default, the Set SDK doesn't track any raw data about your users. Instead, Recipes are sent over the air to the mobile device and monitored locally. When there are matches to remotely configured Recipes, a lightweight ping is used to initiate a push request or other service. Outside of those cases, there are no data requirements of the Set SDK.
Permissions
The Set SDK doesn't require any permissions beyond the ability to send push notifications. Even if you don't intend on sending push notifications through our developer dashboard, the SDK still requires those permissions to launch. Read more in the permissions section.
Crash rates
It is critical that any mobile SDK have little to no impact on an apps crash rate. We pride ourselves on an extremely low crash rate. We are still collecting data to give a precise number, let's talk if you need those numbers earlier.
Push notifications
Push notifications sent through the Set Dashboard are delivered using the APN from Apple. Because of this, some notification timing is in Apple's hands. For Recipe triggered notifications, Set delivers those notifications to the APN in real time. Based on Apple's own weighting system for your app, those notifications may be sent immediately.
[success] Congrats!
Now you're ready to run the SDK.
Get in touch
- If you need help, shoot us a message at [email protected] or ping us on our Slack community.
- If found a bug, or have a feature request, add an Issue on the SetSDK Repo.
- Follow us on Twitter for product updates: @everyset