apteligent - choosing the right sdks to optimize app performance
TRANSCRIPT
Choosing the Right SDKs to Optimize App PerformanceRobert Kwok, Co-Founder & CTO
©2016 Copyright Apteligent
Apteligent: Our SDK provides intelligence about bad user experiencesTransaction Failure
NetworkServices Error Crashes Slow apps
©2016 Copyright Apteligent
Trusted across the Enterprise app economyApteligent – The Single Source of Mobile Truth
23,000+
50B+
120
6
APPS
APP EVENTS PER MONTH
COUNTRIES
YEARS IN BUSINESS
©2016 Copyright Apteligent
Yea…I’m going to have to ask you to go ahead and put that SDK in your app…
Should I add an SDK to my app?
Source: Bill from the movie Office Space
©2016 Copyright Apteligent
• Typical app has 15 different SDKs• Ads, push notifications, analytics,
performance, etc.• More information is better, but is
it?• But…what if it causes my app to
crash, slow down, or drain the battery?
Should I add an SDK to my app?
Source: Bill from the movie Office Space
©2016 Copyright Apteligent
1. Will it crash my app?2. Will it slow down my app?3. Will it cause users to uninstall my app?4. Is my developer willing to use it?5. Test the Vendor
Apteligent’s SDK Safety Checklist
©2016 Copyright Apteligent
Check #1: Will it crash my app?Pre-Test Evaluation
•Was the SDK updated in the last 3-6 months?•How often is the SDK updated?•Which apps use the SDK?
Play it Safe: Limited Rollout A/B Test• Identify which crashes are due to SDKs, especially during key flows (login, search, purchase)
©2016 Copyright Apteligent
Check #1: Will it crash my app?•Check for Network Crashes• 20% of crashes is correlated with a network call1
•Twitter’s Fabric SDK had one of the worst network crash rate•Facebook’s SDK was one of the best
1 https://data.apteligent.com/research/network-crashes
©2016 Copyright Apteligent
Check #2: Will it slow down my app?Monitor App Load Time
• 50% of consumers consider app load time a major source of frustration
- 25% would leave a brand for unacceptable load times
• 46% of iOS apps and 53% of Android apps globally, across all categories, take more than 2 seconds to load2
200 300 400 500 600 700 800 900 1000 2000 >200005
101520253035404550
% of iOS Apps Load Time (mS)
200 300 400 500 600 700 800 900 1000 2000 >20000
10
20
30
40
50
60
% of Android Apps with Load Time (mS)
©2016 Copyright Apteligent
Check #2: Will it slow down my app?Monitor flows in the app that cause the user to wait
•Monitor the three most important flows in your app•e.g., Login, Search, Send Payment
•Measure how long the user is waiting•Measure how often the flow results in an error
©2016 Copyright Apteligent
Check #3: Will it cause users to uninstall my app?
•Does the SDK drain battery or use a lot of data?
•Every iOS and Android phone has a battery and data usage app
©2016 Copyright Apteligent
Check #3: Will it cause users to uninstall my app?Does the SDK drain battery or use a lot of data?
• Request Volume- Monitor increased network calls due to new SDKs
• Data Received and Sent- Monitor the amount of data your app sends and receives with each new
app version
©2016 Copyright Apteligent
Check #4: Is my developer willing to use it?Does it pass the developer test?
• Is it up to date?•Was the SDK built with the latest version of Xcode?•Does the SDK support Bitcode?
• Is it easy to integrate?•Does the vendor provide an example app?•Does it support Swift?•How long does it take to integrate?
• Possible Mobile Seaworthy Framework Checklist•https://possiblemobile.com/2016/05/ios-frameworks-part-1/
©2016 Copyright Apteligent
Check #5: Test the VendorDoes the Vendor Understand Mobile?
1. Designed for Mobile Use Cases• How does it handle offline?• What happens if your server goes down?• Does the SDK have a small memory and on-disk footprint?
2. Configurability• Can users opt out of the SDK?• Can you disable parts/all of the SDK?
3. Limits• iOS 100mb Wi-Fi limit
• Does it support Bitcode?• Android method count limit
©2016 Copyright Apteligent
1. Will it crash my app?2. Will it slow down my app?3. Will it cause users to uninstall my app?4. Is my developer willing to use it?5. Test the Vendor
Review: Apteligent’s SDK Safety Checklist
©2016 Copyright Apteligent
Thank You!www.apteligent.comdata.apteligent.com