cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
ChadVKealey
Power Participant
Power Participant

App loading slow in PowerApps Mobile (Android & iOS), but fine in browser on same device

I have an app that's using data from a fairly large SharePoint list (~1,700 items). The list contains a column (FacultyUPN) with user emails (text column); that column is designated as an indexed column on the list in SP.

 

On the onstart property of the main screen, I'm filtering the data source to only items where User().Email = FacultyUPN and putting that into a collection. This should be a delegable function (I think).

 

Anyway, on a desktop/laptop (Windows, Mac, all the usual browsers) AND in Chrome and Safari mobile (on Android and iOS devices), it takes 15-20 seconds to complete that operation. Launching the same app in the PowerApps mobile app one either mobile platform, it takes approximately 2 minutes to load the data. I've tried clearing the cache in the app on my own phone (Moto Z Play, Android 8.0.0) and had a colleague do a fresh install on his phone (iPhone 8 with latest iOS) and the behavior was the same on both. 

1 ACCEPTED SOLUTION

Accepted Solutions
v-xida-msft
Community Support
Community Support

Hi @ChadVKealey,

Could you please share a bit more about the formula within the OnStart property of your main screen?

I think you have faced a Delegation issue with the formula that you provided within the OnStart property of your main screen, becaue the User().Email formula could not be delegated within the Filter function.

I have made a test on my side, the Delegation warning issue shows up as below:2.JPG

 

If you have faced Delegation issue with your formula, it means that you could not delegate the processing of data to the data source, instead, it would pull the data to your local device for processing locally. The large amount records of your SP list would cause a lot of memory consumption of your mobile device.

More details about Delegation in PowerApps, please check the following:

Delegation

In order to avoid this Delegation issue, please modify your formula within the OnStart property of your Main screen as below:

Set(CurrentUser, User().Email);
ClearCollect(
FilteredCollection,Filter('YourSPList',FacultyUPN=CurrentUser)
)

then try your app again to check if the issue is solved.

If the issue still exists, please take a try to turn off/disable "Delayed load" option within Advanced settings of App settings, then check if the issue is solved.

In addition, please also check and see if the following blog would help you improve your app's performance:

https://baizini-it.com/blog/index.php/2017/09/13/powerapps-improving-app-performance/

 

Best regards,

Kris

 

Community Support Team _ Kris Dai
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

2 REPLIES 2
v-xida-msft
Community Support
Community Support

Hi @ChadVKealey,

Could you please share a bit more about the formula within the OnStart property of your main screen?

I think you have faced a Delegation issue with the formula that you provided within the OnStart property of your main screen, becaue the User().Email formula could not be delegated within the Filter function.

I have made a test on my side, the Delegation warning issue shows up as below:2.JPG

 

If you have faced Delegation issue with your formula, it means that you could not delegate the processing of data to the data source, instead, it would pull the data to your local device for processing locally. The large amount records of your SP list would cause a lot of memory consumption of your mobile device.

More details about Delegation in PowerApps, please check the following:

Delegation

In order to avoid this Delegation issue, please modify your formula within the OnStart property of your Main screen as below:

Set(CurrentUser, User().Email);
ClearCollect(
FilteredCollection,Filter('YourSPList',FacultyUPN=CurrentUser)
)

then try your app again to check if the issue is solved.

If the issue still exists, please take a try to turn off/disable "Delayed load" option within Advanced settings of App settings, then check if the issue is solved.

In addition, please also check and see if the following blog would help you improve your app's performance:

https://baizini-it.com/blog/index.php/2017/09/13/powerapps-improving-app-performance/

 

Best regards,

Kris

 

Community Support Team _ Kris Dai
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

@v-xida-msft, thanks for that...it worked fine. I was making an assumption that PowerApps was evaluating the "User().Email" locally to get a text value to match against the remote value (also a text value). 

 

However, while this appears to be the case, it doesn't really explain why the App was so much faster to load in a browser vs. the mobile app. Perhaps in a browser context, PowerApps does convert User().Email to a text value to do the comparison?

Helpful resources

Announcements
2022 Release Wave 1 760x460.png

2022 Release Wave 1 Plan

Power Platform release plan for the 2022 release wave 1 describes all new features releasing from April 2022 through September 2022.

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Top Solution Authors
Top Kudoed Authors
Users online (1,395)