Mobile applications need to be updated for many reasons. It’s common for an initial release of a new app to contain bugs that weren’t caught in sandbox and developer environments, for example, or for a misunderstanding of workflow to pass through the UAT stage unnoticed.
Beyond this, once an app is live and mature, it will still need to evolve in line with many factors including (but not limited to): new business requirements, regulatory updates, alignment with new OS and hardware capabilities, and of course in our world modifications to support new Salesforce releases.
Whenever Salesforce patches make their way into pre-release orgs our daily test runs kick off and identify the change. These tests run on 15+ org setups and report back any issues that might have been observed. One such observation was reported back during the early days of Summer ‘17 patch rollouts into pre-release. The issue manifested itself initially as the inability to complete the authentication flow on iOS devices built with Salesforce Mobile SDK v4.0.2 and lower.
During the investigations into the issue, we raised a notification on our trust site to keep our partners and customers aware of the risk of the behaviour. We also developed some internal work-arounds. If the issue wasn’t fixed prior to Summer ‘17 making it’s way into our partners’ sandboxes, these would let us unblock them from their development and testing processes.
We also discovered that the bug broke the vanilla experience of browsing standard Visualforce pages on iOS Safari; this could be bad if it got through into production.
Hybrid Apps Open the Door for Containerisation
There are essentially two different approaches to building mobile apps: native and hybrid. It is important to understand the high-level differences to put this article in context to then see how we can leverage Container Apps to de-skill, de-risk and accelerate our time to market.
One of the most exciting things about our Application Delivery Framework (ADF) is that it’s constantly growing and evolving, to allow our partners and customers to push the boundaries of what can be achieved with mobile apps on the Salesforce platform. As such, it’s vital that we help our community stay abreast of all the new MobileCaddy features and updates as they’re released.
With that in mind, I’ve decided to record and publish my regular discussions with Paul, our CTO, Todd, our Chief Mobile Technical Architect, and Frank, our Lead Product Engineer. In these sessions we’ll be covering what’s new with MobileCaddy, and will be sharing this with you to provide a first-hand look at everything we’ve been working hard on to improve.
So what’s new with MobileCaddy this month?
Operating and supporting any enterprise application in the context of mobile is challenging, because you don’t have control over that app’s underlying operating systems, nor can you predict new updates, upgrades, or patches being released.
This presents a problem for those responsible, because changes to an OS can cause mobile apps to suffer in their performance, or even stop working entirely. When those apps have been deployed into functions which are critical to the daily running of the business, that effectively renders the employees or community users relying on the app incapable as well, which simply can’t be allowed to happen.
So, firstly… Understand your app
You need to be aware of all the various components which make up your application, how they interact with each other, and what relationship they have with the OS.
Any number of things within your app can change without your knowledge, and the various elements and supported systems mean that continual testing is an absolute necessity to avoid app failure. This becomes even more important when applications are supporting business critical processes and workflows.