IP Library › Granted Patent US 12,386,653
Granted Patent B2
US 12,386,653 · App. 17/469,248 · Granted Aug 12, 2025

Starting method for applications which are closed based on the insuficient memory of the system

Inventors: Qiulin Chen (Shanghai, CN); Bailin Wen (Hangzhou, CN); Xicai Chen (Shenzhen, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06F9/485G06F9/48G06F9/4843G06F9/4881G06F12/023
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,386,653
App. No.
17/469,248
Granted
Aug 12, 2025
Kind
B2
Abstract

An application start method includes obtaining a target application list when a size of free memory is greater than a preset threshold. The target application list is used to store one or more application identifiers of one or more applications whose memory is released. The application start method further includes starting, in the background, a process of an application identified in the target application list.

Claims (52)

1. An application start method performed by a terminal, the application start method comprising:

storing, by the terminal, a target application list when a first size of free memory of the terminal is greater than a preset threshold;

releasing, by the terminal, a memory occupied by one or more applications, wherein the target application list is a list of one or more application identifiers of the one or more applications whose memory is released;

starting, in a background of the terminal and when the first size is greater than a preset threshold, a process of at least one application identified by at least one application identifier of the one or more application identifiers listed in the target application list;

starting, in the background, an activity of the at least one application; and

starting, in the background, a process of an associated application, wherein the associated application is associated with the at least one application.

2. The application start method of claim 1 , further comprising:

creating a new task for the at least one application;

creating a first application stack when a second stack does not comprise any application stack, wherein the first application stack is located at a bottom of the second stack; and

storing the new task in the first application stack.

3. The application start method of claim 1 , further comprising:

creating a new task for the at least one application; and

storing the new task in a first application stack when the first application stack is comprised in a second stack,

wherein the first application stack further stores a task for a first application other than the one or more applications,

wherein the first application stack is located at a top of the second stack, and

wherein the new task is stored close to a bottom of the first application stack.

4. The application start method of claim 1 , wherein a second size of memory occupied by the at least one application is not greater than the first size, wherein a priority of the at least one application ranks in a top n of priorities of the one or more applications, and wherein n is greater than zero.

5. The application start method of claim 1 , wherein a second size of memory occupied by the at least one application is not greater than the first size, and wherein a quantity of times of using the at least one application is not less than a preset quantity of times.

6. A terminal, comprising:

a plurality of applications;

memory configured to store instructions; and

a processor coupled to the memory and configured to execute the instructions to cause the terminal to:

store, in the memory, a target application list when a first size of free memory of the memory is greater than a preset threshold;

release, by the terminal, memory occupied by one or more applications, wherein the target application list is a list of one or more application identifiers of the one or more applications, of the plurality of applications, whose memory is released;

start, in a background of the terminal and when the first size is greater than the preset threshold, a process of at least one application identified by at least one application identifier of the one or more application identifiers listed in the target application list;

start, in the background, an activity of the at least one application; and

start, in the background, a process of an associated application that is associated with the at least one application.

7. The terminal of claim 6 , wherein the processor is further configured to execute the instructions to cause the terminal to:

create a new task for the at least one application;

create a first application stack when a second stack does not comprise any application stack, wherein the first application stack is located at a bottom of the second stack; and

store the new task in the first application stack.

8. The terminal of claim 6 , wherein the processor is further configured to execute the instructions to cause the terminal to:

create a new task for the at least one application; and

store the new task in a first application stack when the first application stack is comprised in a second stack,

wherein the first application stack stores a task for a first application other than the one or more applications,

wherein the first application stack is located at a top of the second stack, and

wherein the new task is stored close to a bottom of the first application stack.

9. The terminal of claim 6 , wherein a second size of memory occupied by the at least one application is not greater than the first size, wherein a priority of the at least one application ranks in a top n of priorities of the one or more applications, and wherein n is greater than zero.

10. The terminal of claim 6 , wherein a second size of memory occupied by the at least one application is not greater than the first size, and wherein a quantity of times of using the at least one application is not less than a preset quantity of times.

11. A computer program product comprising instructions that are stored on a non-transitory computer-readable medium and that, when executed by a processor, cause a terminal to:

store a target application list when a first size of free memory of the terminal is greater than a preset threshold;

release, by the terminal, a memory occupied by one or more applications, wherein the target application list is a list of one or more application identifiers of the one or more applications, of the terminal, whose memory is released;

start, in a background of the terminal and when the first size is greater than the preset threshold, a process of at least one application identified by at least one application identifier of the one or more application identifiers listed in the target application list;

start, in the background, an activity of the at least one application; and

start, in the background, a process of an associated application that is associated with the at least one application.

12. The computer program product of claim 11 , wherein a second size of memory occupied by the at least one application is not greater than the first size, wherein a priority of the at least one application ranks in a top n of priorities of the one or more applications, and wherein n is greater than zero.

13. The computer program product of claim 11 , wherein a second size of memory occupied by the at least one application is not greater than the first size, and wherein a quantity of times of using the at least one application is not less than a preset quantity of times.

14. The computer program product of claim 11 , wherein

the instructions, when executed by the processor further cause the terminal to:

create a new task for the at least one application;

create a first application stack when a second stack does not comprise any application stack, wherein the first application stack is located at a bottom of the second stack; and

store the new task in the first application stack.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2021
From: CHEN, QIULIN; WEN, BAILIN; CHEN, XICAI
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 057413/0943 →
Priority Claims (1)
CN 201610680862.2 · Aug 17, 2016 · national
Continuity (3)
Continuation 16277559 · Feb 15, 2019
Continuation PCTCN2017079792 · Apr 7, 2017
Related Publication 20210406062A1 · Dec 30, 2021
References Cited (59)
US 5907701A · Hanson · 1999 [cited by applicant]
US 6859928B2 · Wright · 2005 [cited by examiner]
US 6910210B1 · Chew · 2005 [cited by applicant]
US 7275150B2 · Pagan · 2007 [cited by examiner]
US 9250958B2 · Mark et al. · 2016 [cited by applicant]
US 9451159B2 · Li et al. · 2016 [cited by applicant]
US 9535771B2 · Watson et al. · 2017 [cited by applicant]
US 9588805B2 · Yuan · 2017 [cited by examiner]
US 9639399B2 · Chen · 2017 [cited by examiner]
US 9684428B2 · Wu · 2017 [cited by examiner]
US 9965188B2 · Qiao · 2018 [cited by examiner]
US 10102034B2 · Luo et al. · 2018 [cited by applicant]
US 10114661B2 · Funk et al. · 2018 [cited by applicant]
US 10264319B2 · Magahern et al. · 2019 [cited by applicant]
US 10268515B2 · Zhang · 2019 [cited by examiner]
US 10747467B2 · Dzeryn et al. · 2020 [cited by applicant]
US 10853028B2 · Zhou · 2020 [cited by examiner]
US 11132219B2 · Chen · 2021 [cited by examiner]
US 11656843B2 · Zhou · 2023 [cited by examiner]
US 20020109725A1 · Suzuki · 2002 [cited by examiner]
US 20050080874A1 · Fujiwara et al. · 2005 [cited by applicant]
US 20050265531A1 · Mika · 2005 [cited by applicant]
US 20060085787A1 · Breslaw · 2006 [cited by applicant]
US 20060136882A1 · Noonan et al. · 2006 [cited by applicant]
US 20060218502A1 · Matthews et al. · 2006 [cited by applicant]
US 20080016397A1 · Pagan · 2008 [cited by examiner]
US 20120102504A1 · Iyer et al. · 2012 [cited by applicant]
US 20120324481A1 · Xia · 2012 [cited by examiner]
US 20130124917A1 · Das · 2013 [cited by applicant]
US 20140143791A1 · Mark et al. · 2014 [cited by applicant]
US 20140208328A1 · Chen · 2014 [cited by examiner]
US 20150278033A1 · Hou · 2015 [cited by applicant]
US 20180307600A1 · Wang et al. · 2018 [cited by applicant]
CN 101142556A · 2008 [cited by applicant]
CN 102117234A · 2011 [cited by applicant]
CN 102129475A · 2011 [cited by applicant]
CN 102984580A · 2013 [cited by applicant]
CN 103024190A · 2013 [cited by applicant]
CN 103116532A · 2013 [cited by applicant]
CN 103530235A · 2014 [cited by applicant]
CN 105242973A · 2016 [cited by applicant]
CN 105335099A · 2016 [cited by applicant]
CN 105335244A · 2016 [cited by applicant]
CN 105701025A · 2016 [cited by applicant]
CN 105740078A · 2016 [cited by applicant]
CN 105786552A · 2016 [cited by applicant]
CN 105824700A · 2016 [cited by applicant]
EP 2993584A1 · 2016 [cited by applicant]
IN 102609276A · 2012 [cited by applicant]
JP 2012027621A · 2012 [cited by applicant]
KR 20070087133A · 2007 [cited by applicant]
KR 20070113245A · 2007 [cited by applicant]
KR 20130127445A · 2013 [cited by applicant]
TW 201232400A · 2012 [cited by applicant]
WO 2004021187A2 · 2004 [cited by applicant]
WO 2014089734A1 · 2014 [cited by applicant]
WO 2015074458A1 · 2015 [cited by applicant]
Kim et al., “Accelerating Application Start-Up with Non-Volatile Memory in Android Systems,” 2015 IEEE, pp. 15-25. [cited by applicant]
Prodduturi, R., “Effective Handling of Low Memory Scenarios in Android using Logs,” XP55244585, M.Tech Dissertation Report, Jun. 20, 2013, 75 pages. [cited by applicant]