cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Anonymous
Not applicable

App Randomly Restarts

Hi, im facing problem, an app that has been working fine now suddenly restarts every few minutes/seconds on iOS. To clarify, PowerApps itself is not restarting, the app built ON PowerApps suddenly back to first page.

 

Session ID : 885af279-6ecf-4b63-8430-ff3161a4e4ba

PowerApps Version : 3.19023.14

IOS Version : 11.4.1

 

Thanks

 

1 ACCEPTED SOLUTION

Accepted Solutions

@Anonymous, thank you for the very detailed description.

 

The app is very likely restarting because you have 13 forms on a screen 🙂

 

Each field in a form has 4 controls * 13 forms * # of fields per form makes for a lot of controls. I would advise against this pattern, even if it would seem efficient.

 

Do all forms need to be filled out in the same instance of the app? Asked another way, which forms are most important to fill out in the same instance?

 

What I'd do here is create a main screen that has links to each form or group of forms. It would launch the right form. If one form needs to be completed before another, I'd submit the first form, get its ID, then pass its ID to another form to pull in as a parameter.

 

There's a lot of other ways of doing this, but big idea is to not have hundreds of controls on a single screen. It's one of those 'just because you could doesn't mean you should' things.

View solution in original post

14 REPLIES 14
Anonymous
Not applicable

hi,

 

any update ?

Hi @Anonymous, 

Can you share more about the setup of your app? How much data are you pulling in? Are you caching data using SaveData and LoadData? If so, what kind of data are you saving?

 

What iOS device is this and how much memory does it have?

Anonymous
Not applicable

Hi @Mr-Dang-MSFT ,

I am having the same problem. One of my app users with an iPhone 6 reported that the app restarts to the splash screen as a random event when she is trying to add a new record.

 

The app is set up with a splash screen that lets the user pick their username. Then it navigates to a standard browse gallery on BrowseScreen, like what is built automatically from "build an app from data". Adding a record navigates to the EditScreen. I modified this edit screen to have 13 editable forms, rather than have 13 different screens. OnVisible calls "NewForm" for two of the forms (A and B). The other 11 forms are not initialized with EditScreen.OnVisible. These forms initialize as "EditForm" when the user checks a Check Control. These forms are submitted when the user is done with each form. Forms A and B are submitted when the user is done with all data entry, and navigates back to the browse gallery (if it is a new record) or the DetailScreen (if it is an edited record). All 13 forms use global variables for defaults, rather than connecting to the data source for each new record. The app writes data to Google Sheets.

 

The random restart occurs after the EditScreen becomes visible. The user would press the "New Record" button on the BrowseScreen; there would be a long delay (without any signs of processing, not even the "marching ants"), then the EditScreen would become visible, then sometimes the whole app would restart to the Splash screen. In addition to slowing down the efficiency of data entry, it would also cause an extra record to be created.

 

The random restart problem may be linked to the slow transition problem I am trying to figure out here: (https://powerusers.microsoft.com/t5/Creating-Apps/Loadingspinner-Details/m-p/264244#M8777)

 

App ID: fc07ad5f-2724-4b67-9701-6c1acdef44d9

Session ID on iPhone: c793d558-ba2b-4939-b20e-0b147c5bd699

iOS Version 11.1.2

 

Thank you

@Anonymous, thank you for the very detailed description.

 

The app is very likely restarting because you have 13 forms on a screen 🙂

 

Each field in a form has 4 controls * 13 forms * # of fields per form makes for a lot of controls. I would advise against this pattern, even if it would seem efficient.

 

Do all forms need to be filled out in the same instance of the app? Asked another way, which forms are most important to fill out in the same instance?

 

What I'd do here is create a main screen that has links to each form or group of forms. It would launch the right form. If one form needs to be completed before another, I'd submit the first form, get its ID, then pass its ID to another form to pull in as a parameter.

 

There's a lot of other ways of doing this, but big idea is to not have hundreds of controls on a single screen. It's one of those 'just because you could doesn't mean you should' things.

Anonymous
Not applicable

@Mr-Dang-MSFT ,

Thank you for your quick response. I was suspicious that I was overloading the screen with forms and controls. It will be helpful for me to tell my team that multiple screens are better and to be able to back it up with advice from the PowerApps team.

Cheers.

Hi, I’m having the same issue.
My Powerapp however is a read only app that contains 1 gallery per page along with a combo box and a text field for filtering purposes.
The app pulls all data on start from SharePoint lists and creates a few collections from which the entire app operates.

Session ID: ba291be3-ff35-42af-9693-e6926208f9ee

Version: 3.19044.13

iOS: 12.2


@Fellmeth wrote:
The app pulls all data on start from SharePoint lists and creates a few collections from which the entire app operates.

How much data are you pulling in? I'd recommend that even if you pull in only 100s, you may want to drop the amount you show at any given time. Each record needs to be displayed in each gallery and the same is true for lookups you may have in text fields. Galleries are beautiful, but the images and data we want to show inside them can be heavy--especially if we slam the app with 1000s.

 

Think of search engines--they can bring back millions of results, but only show x amount at a time. Or when you're shopping on amazon, you don't just get text search results, but images as well--and that is also limited to x results at a time. 'Paging' is a well established pattern that you can bring into your apps too. 

 

To make this paging pattern, insert 2 icons for the up/down or left/right. These will increment a variable for the page number higher and lower. As a bonus, I'm showing you Coalesce which can provide a default when the variable is not yet declared (it's blank).

 

up/right icon OnSelect
UpdateContext({pageNumber: Coalesce(pageNumber,1)+1})

left/down icon OnSelect
UpdateContext({pageNumber: Coalesce(pageNumber,1)-1})

Coalesce means, "If this thing is blank, use the fallback value (1). Then adjust +1 or -1 depending on what's clicked." It's basically a default.

 

Notice I used a context variable here. This is a good scenario for using a context variable rather than a global one--this way you can use the same variable name on each screen, yet have a different value for each one respective to the screen it is on.

 

Next, adjust the gallery to match that page number. Here's an example of showing 50 at a time:

LastN(
    FirstN(table,Coalesce(pageNumber,1)*50),
50
)

This means, "Starting from the top of the table, return a number of records in the table equal to the page number times the amount of records you want to show at a time (50). So page 1 will have the first 50 (#1-50), page 2 will have record #1-100.

 

But you don't want all 100 on page 2. You want the second set of 50. So LastN lets you restrict the number of records returned to the number you want to see on a 'page' starting from the bottom. You're achieving getting the nth set of records per page. 

 

Since 50 is used in multiple places, you can set it to a variable and reference the variable instead.

 

Note that this method works well for you since you're collecting the data anyway. Running it against the collections will not have delegation limits.

@Mr-Dang-MSFT 

 

Howdy Dang,
Thanks for the detailed reply and suggestions. Always great to hear from a forward thinker!

To re-cap my app is a central contact app with relationships relating to projects... it gives employees the power to search for contact based on project, company or related values (no images, just numbers and short text). All Data is pulled on start from Sharepoint and stored into collections, all galleries pull data from collections.
My main gallery is technically pulling in 100s of fields, though I thought that having activated all of the features under “App Settings”, specifically “Improved app rendering” and “Explicit column Selection”, that the data is being loaded as I scroll (therefore the massive delay in scrolling with “Improved app rendering” turned on). 22 rows fit in-screen in my main gallery, each row containing two fields. In total there are currently about 300 rows, there will be a few thousand once all the data is entered.

I'll implement your paging suggestion... does if function similar to a filter?

I work with serial & bus communication. Typically when designing a system I have tools to monitors cpu performance and memory. Is there no way to monitor the Powerapp? Something like a 1-100 number that I can stick up in the corner of my app. “1” meaning all good and “100” meaning app crashes.

Thanks,

Anonymous
Not applicable

Hi @Mr-Dang-MSFT 

 

we have had discussions with Microsoft Business Intelligence Engineer and the problem has been resolved by deactivating Improved app rendering so, the app uses classic rendering.

 

Thanks

Helpful resources

Announcements

Celebrating the May Super User of the Month: Laurens Martens

  @LaurensM  is an exceptional contributor to the Power Platform Community. Super Users like Laurens inspire others through their example, encouragement, and active participation. We are excited to celebrated Laurens as our Super User of the Month for May 2024.   Consistent Engagement:  He consistently engages with the community by answering forum questions, sharing insights, and providing solutions. Laurens dedication helps other users find answers and overcome challenges.   Community Expertise: As a Super User, Laurens plays a crucial role in maintaining a knowledge sharing environment. Always ensuring a positive experience for everyone.   Leadership: He shares valuable insights on community growth, engagement, and future trends. Their contributions help shape the Power Platform Community.   Congratulations, Laurens Martens, for your outstanding work! Keep inspiring others and making a difference in the community!   Keep up the fantastic work!        

Check out the Copilot Studio Cookbook today!

We are excited to announce our new Copilot Cookbook Gallery in the Copilot Studio Community. We can't wait for you to share your expertise and your experience!    Join us for an amazing opportunity where you'll be one of the first to contribute to the Copilot Cookbook—your ultimate guide to mastering Microsoft Copilot. Whether you're seeking inspiration or grappling with a challenge while crafting apps, you probably already know that Copilot Cookbook is your reliable assistant, offering a wealth of tips and tricks at your fingertips--and we want you to add your expertise. What can you "cook" up?   Click this link to get started: https://aka.ms/CS_Copilot_Cookbook_Gallery   Don't miss out on this exclusive opportunity to be one of the first in the Community to share your app creation journey with Copilot. We'll be announcing a Cookbook Challenge very soon and want to make sure you one of the first "cooks" in the kitchen.   Don't miss your moment--start submitting in the Copilot Cookbook Gallery today!     Thank you,  Engagement Team

Announcing Power Apps Copilot Cookbook Gallery

We are excited to share that the all-new Copilot Cookbook Gallery for Power Apps is now available in the Power Apps Community, full of tips and tricks on how to best use Microsoft Copilot as you develop and create in Power Apps. The new Copilot Cookbook is your go-to resource when you need inspiration--or when you're stuck--and aren't sure how to best partner with Copilot while creating apps.   Whether you're looking for the best prompts or just want to know about responsible AI use, visit Copilot Cookbook for regular updates you can rely on--while also serving up some of your greatest tips and tricks for the Community. Check Out the new Copilot Cookbook for Power Apps today: Copilot Cookbook - Power Platform Community.  We can't wait to see what you "cook" up!      

Tuesday Tip | How to Report Spam in Our Community

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: How to Report Spam in Our Community We strive to maintain a professional and helpful community, and part of that effort involves keeping our platform free of spam. If you encounter a post that you believe is spam, please follow these steps to report it: Locate the Post: Find the post in question within the community.Kebab Menu: Click on the "Kebab" menu | 3 Dots, on the top right of the post.Report Inappropriate Content: Select "Report Inappropriate Content" from the menu.Submit Report: Fill out any necessary details on the form and submit your report.   Our community team will review the report and take appropriate action to ensure our community remains a valuable resource for everyone.   Thank you for helping us keep the community clean and useful!

Community Roundup: A Look Back at Our Last 10 Tuesday Tips

As we continue to grow and learn together, it's important to reflect on the valuable insights we've shared. For today's #TuesdayTip, we're excited to take a moment to look back at the last 10 tips we've shared in case you missed any or want to revisit them. Thanks for your incredible support for this series--we're so glad it was able to help so many of you navigate your community experience!   Getting Started in the Community An overview of everything you need to know about navigating the community on one page!  Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Community Ranks and YOU Have you ever wondered how your fellow community members ascend the ranks within our community? We explain everything about ranks and how to achieve points so you can climb up in the rankings! Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Powering Up Your Community Profile Your Community User Profile is how the Community knows you--so it's essential that it works the way you need it to! From changing your username to updating contact information, this Knowledge Base Article is your best resource for powering up your profile. Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Community Blogs--A Great Place to Start There's so much you'll discover in the Community Blogs, and we hope you'll check them out today!  Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Unlocking Community Achievements and Earning Badges Across the Communities, you'll see badges on users profile that recognize and reward their engagement and contributions. Check out some details on Community badges--and find out more in the detailed link at the end of the article! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Blogging in the Community Interested in blogging? Everything you need to know on writing blogs in our four communities! Get started blogging across the Power Platform communities today! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Subscriptions & Notifications We don't want you to miss a thing in the community! Read all about how to subscribe to sections of our forums and how to setup your notifications! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Getting Started with Private Messages & Macros Do you want to enhance your communication in the Community and streamline your interactions? One of the best ways to do this is to ensure you are using Private Messaging--and the ever-handy macros that are available to you as a Community member! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Community User Groups Learn everything about being part of, starting, or leading a User Group in the Power Platform Community. Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Update Your Community Profile Today! Keep your community profile up to date which is essential for staying connected and engaged with the community. Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Thank you for being an integral part of our journey.   Here's to many more Tuesday Tips as we pave the way for a brighter, more connected future! As always, watch the News & Announcements for the next set of tips, coming soon!

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Top Solution Authors
Top Kudoed Authors
Users online (3,948)