Missing the bloat: Improving mobile user experience through SDK abstraction
Did you cognize on average a typical app uses 18 third-party SDKs, and more if it ’ s a game? SDK bloat and fatigue first innocently enough with product and technology squad asking the whole logical question: How can I amass the datum and use the service I need to make my app better and my occupation successful? There are numerous 3rd party integrations and SDKs available to aid you do this, as illustrate in the chart below. But before you cognise it, you ’ re using so many SDKs, your apps are bloated and fatigued with performance, unbalance, and security issues which ultimately—and ironically—result in a pathetic experience for your users. While it ’ s generally true that if you want to, you ’ ll need a way to understand user behavior and personalize those experiences, it ’ s also crucial to consider the impact these additions are having on your app ’ s performance. In a recent webinar with mParticle, we discuss how HeadSpin ’ s execution insights and mParticle ’ s SDK generalisation can help you make better choices and improve roving user experience for your apps. Below are some of the key point covered. What are the tell-tale mark that your app is suffer from SDK bloat and fatigue? 1.) Slow app builds 2.) Dependency hell 3.) Stability and performance issues What befall after you release your app into the existence? When real customer start complaining about thing like crashes, network number, overall wonkiness, and slow performance, chances are these are cause by architectural or bloat issues. Don ’ t wait for pathetic reviews before you do something about this. 4.) Security risk There is the problem you know and the problem you don ’ t know. Every single item that ends up in your app genuinely should be audited from a security position or you may find yourself at risk for even more insidious issues. If you observe yourself hold to audit many different binary and package in your app, you cognize you believably have an SDK bloat trouble. 5.) Data character If you observe thing like inconsistent naming or analytics events that are firing at the improper time, this can point to data quality problems rise from a decentralized information strategy. This is another frequent by-product of SDK bloat and fatigue. It ’ s critical to maintain federated information in sync. You need good information to feed into your user analytics tools for the reliable reporting you postulate to amend your app and grow your job. Pro tip: Tools like SUSA can handle this autonomously — upload your app and get results without writing a single test script. Ultimately, if you ’ re using multiple SDKs and integrations, it will all add up to create bloat and fatigue in your app. HeadSpin offers a number of different lense of analysis that can help you identify load caused by SDKs. 1.) CPU Time by Dependency One analysis that truly facilitate developers is being capable to see at-a-glance what the CPU time is by dependency. How it works:You simply upload your APK or IPA to HeadSpin ’ s Nimble app program along with the corresponding user flows for the app to step through. As the flow executes, Nimble analyzes the client-side performance of your application. In the analysis that we did for one retailer (shown above), you can see that it ’ s not precisely the application native codification that is eating up CPU clip, but besides a lot of third-party SDKs and libraries expend in the app, such asAppsFlyer, ThreatMetrics, Appboy, etc. We can run this analysis for different scenarios, like cold or warm startups, or other critical exploiter journeys, to see what proportion of CPU time these SDKs are consuming during these activities. 2.) Network Calls Made by SDKs Another helpful analysis with HeadSpin is the ability to see not just which SDKs are being loaded, but also all the mesh calls be made by third-party SDKs. How it work: HeadSpin executes execution testson your app running on real networks and devices in our global infrastructure, and our AI engine automatically analyzes all the client-server traffic to generate a dashboard that visualizes and prioritize the factors impacting your app ’ s performance. Waiting for slow splash screens when launching an app is something we can all relate to. In our analysis of the cold offset for one app (shown below), we immediately comment a number of SDKs, such asCrashlytics and Adjust, that be be loaded during the app delegate phase. In particular, a TCP connection (in orange) stood out for direct a disproportionately long time, especially in relation to the TLS handshake (in purple). The connection was being opened by the Adjust SDK, and when we appear up the destination IP address, it become out the SDK was test to connect to the fellowship ’ s emplacement all the way in Germany before any early app activities could take place. Now, let ’ s consider another analysis we did. We found that users of their app had to wait 16 seconds before their first opportunity to interact with the app, symbolise by the metrictime to interact (TTI). Drilling in further, we saw that calls to a social app be be serially loaded and this was contributing to 5.3 seconds of this time. Similarly, in the analysis we did for one finance app, 3rd company SDKs were a major contributor to slow launch time. For instance, we saw thatUrbanAirshiphosted on Google was redirecting to Asia, not the US as it should have. Network ring like this can be a black box for developers, especially if you ’ re using CocoaPods or another dependency handler to import the SDK. But the implications can really add up in terms of client-server performance, especially if a big number of calls are being made. What can you do to cut bloat and weariness in your apps? Here ’ s what we recommend: HeadSpin monitors, measures, and create recommendations to better mobile execution across covering, devices, and networks—no SDK required. The mParticle program is project to be your SDK abstraction layer and data hub, and does the employment of integrating with each individual app service so you don ’ t have to. Used together they can: If you ’ d like to acquire more about SDK bloat and how we can help, check out our on-demand webinar with Jeena James, VP of Developer Products at HeadSpin, Nathan Krishnan, Head of Customer Success at HeadSpin, and Sam Dozer, Sr. Director of Engineering at mParticle. The most popular mobile development SDKs are- Software development kits (SDK) are tools that assistant make applications for a specific platform. An SDK typically includes compilers, debuggers, libraries, documentation, analytics tools, and an API for all components to work together. An Application programming interface (API), on the other hand, enable the communication between two applications. An API let the on-demand exchange of information and provides a set of regulation for the information exchange. Software bloat is progressive software versions becoming slower and using more device and web resources. Some common reasons for software bloat are Network-aware applications can monitor net conditions like bandwidth, delays, or losses and use it to adjust the application performance consequently. Since SDKs ordinarily run in the background, they make network calls that go unnoticed by the exploiter. A network-aware application can stop these calls in case of slow/low network connectivity. Lead, Content Marketing, HeadSpin Inc. Piali is a dynamic and results-driven Content Marketing Specialist with 8+ years of experience in crafting engaging narratives and marketing collateral across diverse industries. She surpass in collaborating with cross-functional teams to develop innovational content strategies and deliver compelling, authentic, and impactful substance that vibrate with target audiences and enhances make authenticity. Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed. Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts..png)

.jpg)
.jpg)
Missing the bloat: Improving mobile user experience through SDK abstraction
AI-Powered Key Takeaways

So, are you missing the bloat?
You ’ re super stoked about the awe-inspiring app you ’ ve built in Xcode or Android Studio—but the app builds are annoyingly slow. This may eat away at your productivity, but you figure it ’ s not really a showstopper, you can live with it. But those slow builds are an early indicator that you ’ ve got too much construction in your app.
Learning new APIs and keeping up with SDK updates is a constant drain on your clip. And issues are compounded when your app has too many dependencies. If you ’ re pass into issues with a addiction which relies on another dependency which has a conflict with this other dependency, your app is a likely candidate for SDK bloat.Identifying execution issues with HeadSpin



How to make a fitter app
Watch our webinar
FAQs
Q1: What are the democratic peregrine app development SDKs?
Q2: Is there a difference between SDKs and APIs?
Q3: What is software bloat?
Q4: What are network-aware applications, and how do they assist improve performance?
Piali Mazumdar
Missing the bloat: Improving roving user experience through SDK abstraction
4 Parts
-1280X720-Final-2.jpg)
Regression Intelligence practical guidebook for advanced users (Part 3)
-1280X720-Final-2.jpg)
Regression Intelligence practical guide for advanced users (Part 4)
Discover how HeadSpin can endow your occupation with superior testing capabilities







Discover how HeadSpin can invest your business with superior testing capabilities
Discover how HeadSpin can empower your business with superior testing capabilities
Connet Now


Automate This With SUSA
Test Your App Autonomously







.png)











