We have clients who are sensitive to data usage due to using mobile devices in remote locations, and it’s been discovered that loading icons from the Material library on the gateway consumes a needlessly large amount of data (e: up to 40 MB over a few minutes just from SVGs). My questions are thus:
Would moving the icons into the Perspective Designer’s Image Management system and loading them from there reduce the amount of data usage the client sees? This was my initial response when I was told this problem, but I’m unsure if it will actually help since I presume retrieving the icon resources will require data no matter where they’re stored.
If not, what other approaches should be considered in order to limit the amount of data used by Perspective? The client claimed that all the work I’ve done in Perspective would be “dead in the water” if it weren’t as data-efficient as our current Vision implementation (though I am unsure of how performant the latter is, Perspective is apparently the worse of the two).
If there’s not much I can do, would it be a consideration to add in ways to improve Perspective’s data usage? I’m not knowledgeable enough to offer specific ways of doing so, but I’m sweating bullets over potentially losing several months of development effort in Perspective.
Thanks a ton in advance–any advice is greatly appreciated.
Hi, thanks for bringing this to our attention. Moving the icons to Perspective’s Image Management wouldn’t help as you’ll still need to use network to download them. What do you consider a non-insignificant amount of data? Some starting numbers would give me a good idea on what we’re working with. Also, just to clarify, you’re using the material icons we include? Not referencing icons from the actual site.
I’ve contacted the client and requested any data they have. The only thing they’ve offered so far is “up to 40MB of data every few minutes.” This is a surprising amount of data considering most of the pages that are loaded are tables with anywhere from 100 (commonly) to about 500 entries (rarely) that do not poll. I’ll try to glean some more specifics out of them.
And yes, I believe this is using the material icons as they’re included–using “material/icon_name” in object props as per documentation. The client specifically mentioned capturing traffic from Material as an outlier.
An interesting hypothesis, @jpark. Some sort of caching issue, perhaps?
EDIT: It is worth noting that I haven’t had the same designer memory issues you noted in your post, but we do have some Flex Repeaters throughout the project. Thanks for the insight!
A little more information: the client exclusively uses iPhones and the Perspective app. I have been unable to replicate the large memory usage (albeit I’m on an Android). Over 10 minutes of attempting to maximize the amount of loading I do (jumping from screen to screen, re-loading and changing the extremely large tables over and over, etc.), I only use up, at max, 2 MB of data. The problem may not be in the views we’re using, then, but may be something specific to iPhones or the iPhone version of the Perspective app.
Also, we are on a nightly build of 8.0.8 (b2020010702), and I believe the client has still seen this large usage since we upgraded.
Repeatedly saving the project while an intensive view is open over a 10 minute period only yielded approx. 7.5 MB of data usage, still nowhere near 40 MB.
I wish I had an iPhone to try the same thing on to see how that would fare, but alas.