IP Library › Granted Patent US 12,536,060
Granted Patent B2
US 12,536,060 · App. 18/479,036 · Granted Jan 27, 2026

Techniques for mitigating errors tied to software applications

Inventors: Madhusudan Rao (Dublin, CA); Kenneth I. Cohen (San Francisco, CA); Nora J. Shoemaker (Mountain View, CA); Victoria L. Shurman (Santa Clara, CA)
Assignee: Apple Inc.
G06F11/0766G06F11/302G06F21/53
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,536,060
App. No.
18/479,036
Granted
Jan 27, 2026
Kind
B2
Abstract

Disclosed herein is a technique for mitigating errors tied to software applications. According to some embodiments, the technique can be implemented by a server device, and include the steps of (1) identifying at least one error associated with a user of a software application, (2) identifying at least one client device associated with the user and on which the software application is installed, and (3) providing, to the at least one client device, an indication of the at least one error to cause the software application to, in conjunction with being loaded and/or displayed on the at least one client device: display a user interface that includes information derived from the indication, wherein the user interface is sandboxed from the software application in a manner that prevents the software application from observing activity that occurs within the user interface.

Claims (55)

1 . A method for mitigating errors tied to software applications, the method comprising, at a server device:

identifying at least one error associated with a user of a software application;

identifying at least one client device associated with the user and on which the software application is installed; and

providing, to the at least one client device, an indication of the at least one error to cause the software application to, in conjunction with being loaded and/or displayed on the at least one client device, wherein providing the indication comprises:

sandboxing an overlay user interface that includes information derived from the indication;

displaying, within a main user interface of the software application, the overlay user interface; and

permitting the software application to suppress the overlay user interface for a particular period of time that, when lapsed, causes the software application to display the overlay user interface.

2 . The method of claim 1 , wherein the information describes at least one issue associated with the at least one error.

3 . The method of claim 2 , wherein the at least one issue comprises at least one of: invalid credential information associated with the user and/or the software application, or invalid configuration information associated with the user and/or the software application.

4 . The method of claim 2 , wherein the server device identifies the at least one error by detecting the at least one issue.

5 . The method of claim 1 , wherein:

the overlay user interface permits the user to provide input for mitigating the at least one error, and

user activity comprises the user providing the input.

6 . The method of claim 1 , wherein the indication causes the software application to cache the indication until the software application is loaded and/or displayed.

7 . A non-transitory computer readable storage medium configured to store instructions that, when executed by a processor included in a server device, cause the server device to mitigate errors tied to software applications, by carrying out steps that include:

identifying at least one error associated with a user of a software application;

identifying at least one client device associated with the user and on which the software application is installed; and

providing, to the at least one client device, an indication of the at least one error to cause the software application to, in conjunction with being loaded and/or displayed on the at least one client device, wherein providing the indication comprises:

sandboxing an overlay user interface that includes information derived from the indication;

display displaying, within a main user interface of the software application, the overlay user interface; and

permit the software application to suppress the overlay user interface for a particular period of time that, when lapsed, causes the software application to display the overlay user interface.

8 . The non-transitory computer readable storage medium of claim 7 , wherein the information describes at least one issue associated with the at least one error.

9 . The non-transitory computer readable storage medium of claim 8 , wherein the at least one issue comprises at least one of:

invalid credential information associated with the user and/or the software application, or

invalid configuration information associated with the user and/or the software application.

10 . The non-transitory computer readable storage medium of claim 8 , wherein the server device identifies the at least one error by detecting the at least one issue.

11 . The non-transitory computer readable storage medium of claim 7 ,

wherein:

the overlay user interface permits the user to provide input for mitigating the at least one error, and

user activity comprises the user providing the input.

12 . The non-transitory computer readable storage medium of claim 7 , wherein the indication causes the software application to cache the indication until the software application is loaded and/or displayed.

13 . A method for mitigating errors tied to software applications, the method comprising, at a client device:

receiving, from a server device, an indication of at least one error associated with a software application installed on the client device;

storing the indication;

detecting a launch and/or display of the software application;

prompting the software application for permission to display information associated with the indication of the at least one error; and

in response to receiving permission from the software application:

sandboxing an overlay user interface that includes information derived from the indication;

causing the software application to display the overlay user interface that includes the information; and

permit the software application to suppress the overlay user interface for a particular period of time that, when lapsed, causes the software application to display the overlay user interface.

14 . The method of claim 13 , wherein:

the method is implemented by a software application manager executing on the client device, wherein the method further comprises the software application manager enabling execution of a plurality of software applications, and

the plurality of software applications includes the software application.

15 . The method of claim 13 , wherein storing the indication comprises storing the indication into a cache that is accessible to the client device.

16 . The method of claim 15 , further comprising:

receiving, from the server device, a second indication that the error has been mitigated; and

removing the indication from the cache.

17 . The method of claim 13 , wherein the information describes at least one issue associated with the at least one error.

18 . The method of claim 13 , further comprising:

enabling, using the overlay user interface, valid credential information associated with a user of the client device to be provided, or

enabling, using the overlay user interface, valid configuration information associated with the user and/or the software application to be provided.

19 . The method of claim 13 , wherein the at least one error comprises at least one of:

invalid credential information associated with the user and/or the software application, or

invalid configuration information associated with a user and/or the software application.

20 . The method of claim 13 , wherein the indication causes the software application to cache the indication until the software application is loaded and/or displayed.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2023
From: RAO, MADHUSUDAN; COHEN, KENNETH I.; SHOEMAKER, NORA J.; SHURMAN, VICTORIA L.
To: APPLE INC.
Reel/Frame 065299/0690 →
Continuity (2)
Provisional Application 63491027 · Mar 17, 2023
Related Publication 20240311220A1 · Sep 19, 2024
References Cited (24)
US 7970705B2 · Patterson · 2011 [cited by applicant]
US 8095464B2 · Patterson et al. · 2012 [cited by applicant]
US 10032160B2 · Desai · 2018 [cited by examiner]
US 11344812B1 · Parisi et al. · 2022 [cited by applicant]
US 11809528B2 · Tsai · 2023 [cited by examiner]
US 11823145B2 · Wong · 2023 [cited by examiner]
US 20070239983A1 · Shlomai · 2007 [cited by examiner]
US 20100299230A1 · Patterson et al. · 2010 [cited by applicant]
US 20120296824A1 · Rosano · 2012 [cited by applicant]
US 20130019310A1 · Ben-Itzhak · 2013 [cited by examiner]
US 20140025581A1 · Calman · 2014 [cited by examiner]
US 20160110798A1 · Woo · 2016 [cited by examiner]
US 20160132880A1 · O'Regan · 2016 [cited by examiner]
US 20190266587A1 · Lin et al. · 2019 [cited by applicant]
US 20210133698A1 · Zhang et al. · 2021 [cited by applicant]
US 20210173902A1 · Tsai · 2021 [cited by examiner]
US 20220172183A1 · Wong · 2022 [cited by examiner]
US 20240104186A1 · Wadhwa · 2024 [cited by examiner]
US 20240152885A1 · Wong · 2024 [cited by examiner]
JP 2016143396A · 2016 [cited by applicant]
WO 2018225492A1 · 2018 [cited by applicant]
European Patent Application 24159763.2—Extended European Search Report dated Jul. 8, 2024. [cited by applicant]
United Kingdom Application 2402690.8—Combined Search and Exam Report dated Aug. 13, 2024. [cited by applicant]
Japanese Patent Application No. 2024-040800—First Office Action dated Sep. 25, 2025. [cited by applicant]