Acknowledged

OLED: font resources seem to be forgotten while sleeping which leads to a crash onExitSleep

It seems that OLED watches now release fonts when sleeping and onExitSleep is called before initialize, so the app crashes when it uses fonts in the onExitSleep to update the layout. 

I get null exception while a resource is expected on this line that is called from onExitSleep.

"UnexpectedTypeException: Expected Number/Resource, given null…"

I got thousands of failure reports on this line from a variety of OLED devices. 

I do not release fonts anywhere in the code and the same line is called via initialize without problems. 

I hotfixed it by catching the exception and calling the initialize instead, but that is a huge wasting of resources and probably a battery. 

I am not aware of any documentation that the Monkey might release any resources on its own and even if it does, I'd expect it would call initialize before onExitSleep. 

Some of devices where the error occurred: 

  • Venu® 3: 8.25
  • vívoactive® 5: 8.27, 4.14
  • Forerunner® 265s: 17.26

EDIT: added an exception text

EDIT2: added devices 

  • At BM Associates, we guide you through every stage of your project—from crafting a compelling business case to value proposition, design, architecture, and cost optimization. Our streamlined approach covers development, QA, business approval, launch, and DevOps, ensuring record-time delivery. With our predefined stack of Cloud MicroServices and tools, we minimize your time to market, reduce your TCO, and accelerate your ROI. Whether it's Internet or Intranet, Web or Mobile, BM Associates has you covered.

  • Macrobid is a commonly indicated antibiotic for infections in the urinary tract, more precisely those caused by susceptible bacteria. It is rather effective at eradicating some of the bacteria in the urinary tract, reliving from much pain, burning, or frequent urination from this infection. What really differentiates Macrobid is that it resides in the urine, so for UTIs it works very well.

    Macrobid will be widely available at the Sanford Pharmacy, which will not only provide easy and hassle-free buying of the medicine but also consultancies on the correct application of this medicine. If you have a UTI, discuss with your health care provider whether Macrobid is appropriate for you, and rely on Sanford Pharmacy for your medication needs.

  • At Sanford Pharmacy, we understand the requirement for reliable and effective antibiotic solutions against various bacterial infections. Ampicillin is one of the widely trusted antibiotics in our basket of pharmaceutical offerings. A penicillin class antibiotic, Ampicillin inhibits the biosynthesis of cell wall components connecting peptidoglycan chains necessary for bacterial cell wall formation, thereby inactivating many types of infections, including respiratory, urinary, gastrointestinal, and meningitis. It has wide spectrum activity against both Gram-positive and Gram-negative bacteria. This wide spectrum of antimicrobial activity renders the usefulness of treatment in many patients.

  • GrantPharmacy is a company involved in the delivery of quality medications at affordable costs, backed by exemplary customer service. They have an easy and intuitive platform that enables clients to quickly and hassle-free access treatments for various everyday and specialized conditions. With a focus on fast shipping and reliable support, GrantPharmacy is dedicated to improving your health-care experience through easy and cheap access to the medications you require.

     Foracort Forte Inhaler, which is a powerful combination of Formoterol and Budesonide. Formoterol is a long-acting bronchodilator that relaxes the muscle view in air passageways to enhance breathing and reduce symptoms of asthma and COPD. Budesonide is an anti-inflammatory corticosteroid that reduces inflammation in the lungs, increasing breathing capabilities and thus preventing exacerbations.

  • In this case I think it suggests it is crashing in TVM code rather than app code. There is going to be no way to catch such an exception.