СПОСОБ И УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ ФОНОВЫМ ПРИЛОЖЕНИЕМ И ТЕРМИНАЛЬНЫМ УСТРОЙСТВОМ
METHOD AND DEVICE FOR CONTROLLING BACKGROUND APPLICATION AND TERMINAL DEVICE

ПЕРЕКРЕСТНАЯ ССЫЛКА НА СООТВЕТСТВУЮЩУЮ ЗАЯВКУ
[0001] Настоящая заявка основана на и заявляет о приоритете по китайской заявке №201410436455.8, поданной 29 августа 2014 г., полное содержание которой включено сюда посредством ссылки.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее изобретение относится к области терминальных устройств, и, более конкретно, к способу управления фоновым приложением, устройству для управления фоновым приложением и терминальным устройством.
УРОВЕНЬ ТЕХНИКИ
[0003] Поскольку терминальные устройства развиваются в интеллектуальном направлении, появляется все больше и больше приложений, и пользователи все чаще используют преимущества умных терминальных устройств. При использовании терминального устройства пользователь может оставлять несколько часто используемых приложений в фоновом рабочем состоянии. Часто используемые приложения включают Twitter, WeChat, QQ и т.д. Приложение, работающее в фоновом режиме на терминальном устройстве, можно назвать фоновым приложением. Если количество фоновых приложений невелико, они занимают небольшую часть ресурса памяти терминального устройства. При большом количестве фоновых приложений используется большая часть ресурса памяти терминального устройства, что влияет на скорость обработки данных терминальным устройством. Таким образом, важно знать, как управлять фоновым приложением в терминальном устройстве.
[0004] В предшествующем уровне техники способ управления фоновым приложением состоит в следующем. Задается максимальное пороговое значение, и терминальное устройство следит за тем, чтобы количество фоновых приложений не превышало максимальное пороговое значение. Если количество фоновых приложений меньше или равно максимальному пороговому значению, каждому из фоновых приложений разрешается находиться в фоновом рабочем состоянии. Если количество фоновых приложений превышает максимальное пороговое значение, фоновое приложение, занимающее самый большой объем памяти, может быть закрыто. Например, если предположить, что максимальным пороговым значением является 25, при количестве фоновых приложений 24 каждому из фоновых приложений разрешено находиться в фоновом рабочем состоянии. Если количество фоновых приложений составляет 26, фоновое приложение, занимающее самый большой объем памяти, может быть закрыто, чтобы освободить память.
[0005] В описанном выше способе решение о закрытии фонового приложения принимается путем определения, превышает ли число фоновых приложений максимальное пороговое значение. Если количество фоновых приложений превышает максимальное пороговое значение, фоновое приложение, занимающее самый большой объем памяти, может быть закрыто. Так как пользователь может пожелать, чтобы фоновое приложение, занимающее большой объем памяти, постоянно продолжало работать в фоновом режиме, закрытие фонового приложения может повлиять на взаимодействие с пользователем. Таким образом, с описанным выше способом управление фоновым приложением в терминальном устройстве не является полноценным, что влияет на взаимодействие с пользователем.
КРАТКОЕ ИЗЛОЖЕНИЕ
[0006] Настоящее изобретение относится к способу управления фоновым приложением, устройству для управления фоновым приложением и терминальному устройству, для решения проблем в предшествующем уровне техники.
[0007] Согласно первому аспекту вариантов осуществления настоящего изобретения, предусмотрен способ управления фоновым приложением, включающий:
создание списка приложений в соответствии с запущенными приложениями в операционной системе, причем список приложений, по крайней мере, включает идентификаторы запущенных приложений в операционной системе;
просмотр идентификаторов в списке приложений;
определение того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением;
определение того, содержит ли заданный белый список текущий просматриваемый идентификатор, и превышает ли число идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, причем заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем;
выбор идентификатора, соответствующего фоновому приложению, из списка приложений, и закрытие фонового приложения, соответствующего выбранному идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество превышает заранее определенное пороговое значение;
закрытие приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество превышает заранее определенное пороговое значение.
[0008] В сочетании с первым аспектом, в первой возможной реализации первого аспекта этап создания списка приложений, в соответствии с запущенными приложениями в операционной системе, включает в себя:
расчет приоритетов режима работы запущенных приложений в операционной системе, при котором приоритеты расставляются от высокого к низкому, например: передний план, видимый, заметный, фоновый;
установление последовательности идентификаторов запущенных приложений, в соответствии с приоритетами режима работы, от высокого к низкому, чтобы получить список приложений.
[0009] В сочетании с первой возможной реализацией первого аспекта, в соответствии со второй возможной реализацией первого аспекта, этап определения того, является ли фоновым приложение, соответствующее текущему просматриваемому идентификатору, включает в себя:
получение приоритета рабочего режима приложения, соответствующего текущему просматриваемому идентификатору;
определение того, что приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, если приоритет рабочего режима приложения, соответствующего текущему просматриваемому идентификатору, соответствует фоновому.
[0010] В сочетании с первой или второй возможной реализацией первого аспекта, в третьей возможной реализации первого аспекта этап выбора идентификатора, соответствующего фоновому приложению в списке приложений, включает в себя:
поиск одного или нескольких идентификаторов, предшествующих текущему просматриваемому идентификатору в списке приложений, и не включенных в заданный белый список;
выбор одного из одного или нескольких идентификаторов или выбор идентификатора, ближайшего к текущему просматриваемому идентификатору, из одного или нескольких идентификаторов, если обнаружен по крайней мере один идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список;
выбор текущего просматриваемого идентификатора, если не обнаружен идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список;
[0011] В сочетании с первым аспектом, в четвертой возможной реализации первого аспекта способ дополнительно включает в себя:
получение неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение;
определение того, превышает ли неактивный период времени первый заданный период времени;
закрытие приложения, соответствующего текущему просматриваемому идентификатору, если неактивный период времени превышает первый заданный период времени.
[0012] В сочетании с четвертой возможной реализацией первого аспекта, в пятой возможной реализации способ дополнительно включает в себя:
определение того, превышает ли неактивный период времени второй заранее определенный период времени, если неактивный период времени не превышает первый заданный период времени;
освобождение памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает второй заданный период времени, причем второй заданный период времени меньше, чем первый заранее определенный период времени.
[0013] В сочетании с первым аспектом, в шестой возможной реализации первого аспекта способ дополнительно включает в себя:
получение неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение;
определение того, превышает ли неактивный период времени третий заданный период времени;
освобождение памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает третий заданный период времени.
[0014] В сочетании с четвертой, пятой или шестой возможной реализацией первого аспекта, в седьмой возможной реализации первого аспекта этап получения неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, включает в себя:
подсчет периода времени, в течение которого приложение, соответствующее текущему просматриваемому идентификатору, не взаимодействует с другими процессами в операционной системе;
определение периода времени в качестве неактивного периода времени.
[0015] Согласно второму аспекту вариантов осуществления настоящего изобретения, предусмотрено устройство управления фоновым приложением, включающее:
блок создания, сконфигурированный для создания списка приложений в соответствии с запущенными приложениями в операционной системе, причем список приложений, по крайней мере, включает идентификаторы запущенных приложений в операционной системе;
блок просмотра, сконфигурированный для просмотра идентификаторов в списке приложений;
первый блок определения, сконфигурированный для определения того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением;
второй блок определения, сконфигурированный для определения того, содержит ли заданный белый список текущий просматриваемый идентификатор, и превышает ли число идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, причем заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем;
первый блок закрытия, сконфигурированный для:
выбора идентификатора, соответствующего фоновому приложению, из списка приложений, и закрытия фонового приложения, соответствующего выбранному идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество превышает заранее определенное пороговое значение;
закрытия приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество превышает заранее определенное пороговое значение.
[0016] В сочетании со вторым аспектом, в первой возможной реализации второго аспекта блок создания включает в себя:
подблок вычисления, сконфигурированный для расчета приоритетов режима работы запущенных приложений в операционной системе, при котором приоритеты расставляются от высокого к низкому, например: передний план, видимый, заметный, фоновый;
подблок определения последовательности, сконфигурированный для установления последовательности идентификаторов запущенных приложений, в соответствии с приоритетами режима работы, от высокого к низкому, чтобы получить список приложений.
[0017] В сочетании с первой возможной реализацией второго аспекта, во второй реализации второго аспекта первый блок определения включает в себя:
подблок получения, сконфигурированный для получения приоритета рабочего режима приложения, соответствующего текущему просматриваемому идентификатору;
первый подблок определения, сконфигурированный для определения того, что приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, если приоритет рабочего режима приложения, соответствующего текущему просматриваемому идентификатору, соответствует фоновому.
[0018] В сочетании с первой возможной реализацией или второй возможной реализацией второго аспекта, в третьей возможной реализации второго аспекта первый блок закрытия включает в себя:
подблок поиска, сконфигурированный для поиска одного или нескольких идентификаторов, предшествующих текущему просматриваемому идентификатору в списке приложений, и не включенных в заданный белый список;
подблок выбора, сконфигурированный для:
выбора одного из одного или нескольких идентификаторов или выбора идентификатора, ближайшего к текущему просматриваемому идентификатору, из одного или нескольких идентификаторов, если обнаружен по крайней мере один идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список;
выбора текущего просматриваемого идентификатора, если не обнаружен идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список.
[0019] В сочетании со вторым аспектом, в четвертой возможной реализации второго устройство дополнительно включает в себя:
первый блок получения, сконфигурированный для получения неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение;
третий блок определения, сконфигурированный для определения того, превышает ли неактивный период времени первый заданный период времени;
второй блок закрытия, сконфигурированный для закрытия приложения, соответствующего текущему просматриваемому идентификатору, если неактивный период времени превышает первый заданный период времени.
[0020] В сочетании с четвертой возможной реализацией второго аспекта, в пятой возможной реализации второго аспекта устройство дополнительно включает в себя:
блок определения, сконфигурированный для определения того, превышает ли неактивный период времени второй заранее определенный период времени, если неактивный период времени не превышает первый заданный период времени;
первый блок освобождения, сконфигурированный для освобождения памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает второй заданный период времени, причем второй заданный период времени меньше, чем первый заранее определенный период времени.
[0021] В сочетании со вторым аспектом, в шестой возможной реализации второго аспекта устройство дополнительно включает в себя:
второй блок получения, сконфигурированный для получения неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение;
четвертый блок определения, сконфигурированный для определения того, превышает ли неактивный период времени третий заданный период времени;
второй блок освобождения, сконфигурированный для освобождения памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает третий заданный период времени.
[0022] В сочетании с четвертой, пятой или шестой возможной реализацией второго аспекта, в седьмой возможной реализации второго аспекта первый блок получения и второй блок получения включают в себя:
подблок подсчета, сконфигурированный для подсчета периода времени, в течение которого приложение, соответствующее текущему просматриваемому идентификатору, не взаимодействует с другими процессами в операционной системе;
второй подблок определения, сконфигурированный для определения периода времени, выступающего в качестве неактивного периода времени.
[0023] Согласно третьему аспекту вариантов осуществления настоящего изобретения, предусмотрено терминальное устройство, включающее:
процессор;
память, сконфигурированную для хранения инструкций, исполняемых процессором; в котором процессор сконфигурирован на:
создание списка приложений в соответствии с запущенными приложениями в операционной системе, причем список приложений, по крайней мере, включает идентификаторы запущенных приложений в операционной системе;
просмотр идентификаторов в списке приложений;
определение того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением;
определение того, содержит ли заданный белый список текущий просматриваемый идентификатор, и превышает ли число идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, причем заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем;
выбор идентификатора, соответствующего фоновому приложению, из списка приложений, и закрытия фонового приложения, соответствующего выбранному идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество превышает заранее определенное пороговое значение;
закрытие приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество превышает заранее определенное пороговое значение.
[0024] Техническое решение, описанное в вариантах осуществления данного изобретения, предлагает следующие преимущества. Для того определения терминальным устройством фонового приложения, подлежащего закрытию, необходимо учитывать то, превышает ли количество фоновых приложений заданное пороговое значение, и включает ли заданный белый список идентификатор фонового приложения, подлежащего закрытию. Заранее определенный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем. То есть, пользователь не хочет закрывать любое из фоновых приложений, соответствующих идентификаторам в заданном белом списке. Для текущего просматриваемого идентификатора, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество фоновых приложений превышает заранее определенное пороговое значение, фоновое приложение будет выбрано и закрыто. Если заданный белый список не включает в себя текущий просматриваемый идентификатор, и число фоновых приложений превышает заранее определенное пороговое значение, приложение, соответствующее текущему просматриваемому идентификатору, закрывается. Поскольку фоновые приложения, назначенные пользователем, не закрываются необдуманно, фоновые приложения подлежат лучшему управлению по сравнению со способом в предшествующем уровне техники, при котором выполняемое приложение, занимающее самый большой объем памяти, может быть фоновым приложением, назначенным пользователем, и таким образом происходит улучшение взаимодействия с пользователем.
[0025] Следует понимать, что предшествующее общее описание и последующее подробное описание являются только иллюстративными и пояснительными, и не ограничивают изобретения, как заявлено.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0026] Прилагаемые чертежи, включенные в документ и составляющие часть данного описания, иллюстрируют варианты осуществления в соответствии с изобретением, и вместе с описанием служат для объяснения принципов изобретения.
[0027] На Фиг. 1 показана блок-схема, иллюстрирующая способ управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения;
[0028] На Фиг. 2 показана блок-схема, иллюстрирующая другой способ управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения;
[0029] На Фиг. 3 показана структурная схема, иллюстрирующая устройство управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения; и
[0030] На Фиг. 4 показана структурная схема, иллюстрирующая терминальное устройство, согласно примерному варианту осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
[0031] Ниже будет приведено подробное описание примерных вариантов осуществления, примеры которых проиллюстрированы на прилагаемых чертежах. Следующее описание ссылается на прилагаемые чертежи, на которых одинаковые номера на разных чертежах представляют собой одинаковые или аналогичные элементы, если не указано иное. Реализации, изложенные в последующем описании примерных вариантов осуществления, не являются всеми реализациями, соответствующими изобретению. Они являются просто примерами устройств и способов, которые соответствуют аспектам, связанным с изобретением, как изложено в прилагаемой формуле изобретения.
[0032] На Фиг. 1 показана блок-схема, иллюстрирующая способ управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения. Как показано на Фиг. 1, способ, используемый в терминальном устройстве, включает следующие этапы.
[0033] На этапе 11 создается список приложений, в соответствии с запущенными приложениями в операционной системе.
[0034] Как правило, на терминальном устройстве установлена операционная система. Часто используемыми операционными системами являются Android, Windows, IOS и так далее. На терминальное устройство можно устанавливать много приложений для удовлетворения различных потребностей пользователя. Пользователь также может настроить необходимые приложения. Эти приложения могут быть запущены только в операционной системе терминального устройства. Поэтому для управления фоновыми приложениями создается список приложений, в соответствии с запущенными приложениями в операционной системе. Список приложений содержит идентификаторы запущенных приложений в операционной системе. Идентификатор приложения может представлять собой, помимо прочего, имя, значок приложения и так далее.
[0035] Список приложений может содержать такую информацию, как идентификатор, последнее время запуска и приоритеты рабочего режима запущенных приложений в операционной системе. Список приложений, как минимум, содержит идентификаторы запущенных приложений в операционной системе.
[0036] На этапе 12 происходит просмотр списка приложений.
[0037] На этапе 13 происходит определение того, является ли приложение,
соответствующее текущему просматриваемому идентификатору, фоновым приложением;
[0038] Идентификаторы в списке приложений могут просматриваться, и просматриваемый идентификатор определяется как текущий просматриваемый идентификатор. Поскольку настоящее изобретение предназначено для управления фоновыми приложениями, в первую очередь происходит определение того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением.
[0039] Если приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, на этапе 14 происходит определение того, включает ли заданный белый список текущий просматриваемый идентификатор, и не превышает ли количество идентификаторов, соответствующих фоновым приложениям, заданное пороговое значение.
[0040] Если приложение, соответствующее текущему просматриваемому идентификатору не является фоновым приложением, выполняется этап 12.
[0041] Заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем, т.е. идентификаторы фоновых приложений, которые пользователь не хочет закрывать. Например, фоновым приложением, назначенным пользователем, может быть QQ, WeChat, Fetion, Baidu Map и так далее. Заданный белый список может содержать идентификаторы приложений, таких как QQ, WeChat, Fetion, Baidu Map и т.д.
[0042] Заданное пороговое значение может быть установлено в соответствии с аппаратной конфигурацией терминального устройства и согласно практическим требованиям. Например, заданное пороговое значение может быть установлено на 10, 20, 25 и т.д.
[0043] Если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений превышает заданное пороговое значение, на этапе 15 из списка приложений выбирается идентификатор, соответствующий фоновому приложению, и приложение, соответствующее выбранному идентификатору, закрывается.
[0044] Если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений превышает заданное пороговое значение, для обеспечения нормальной работы операционной системы и взаимодействия с пользователем, фоновое приложение может быть выбрано и закрыто.
[0045] Если заданный белый список не включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям, превышает заранее определенное пороговое значение, на этапе 16 приложение, соответствующее текущему просматриваемому идентификатору, закрывается.
[0046] Если заданный белый список не включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям, превышает заранее определенное пороговое значение, приложение, соответствующее текущему просматриваемому идентификатору, может закрыться непосредственно. Поскольку заданный белый список не включает текущий просматриваемый идентификатор, т.е. приложение, соответствующее текущему просматриваемому идентификатору не является фоновым приложением, заданным пользователем, приложение, соответствующее текущему просматриваемому идентификатору, может быть закрыто непосредственно, для сохранения ресурсов памяти и улучшения взаимодействия с пользователем.
[0047] Если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, или заданный белый список не включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, выполняется этап 12.
[0048] Согласно способу управления фоновым приложением, в соответствии с вариантами осуществления настоящего изобретения, для определения терминальным устройством фонового приложения, подлежащего закрытию, необходимо учитывать то, превышает ли количество фоновых приложений заданное пороговое значение, и включает ли заданный белый список идентификатор фонового приложения, подлежащего закрытию. Белый список включает в себя идентификаторы фоновых приложений, заданных пользователем. То есть, пользователь не хочет закрывать любое из фоновых приложений, соответствующих идентификаторам в заданном белом списке. Для текущего просматриваемого идентификатора, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество фоновых приложений превышает заранее определенное пороговое значение, фоновое приложение будет выбрано и закрыто. Если заданный белый список не включает в себя текущий просматриваемый идентификатор, и число фоновых приложений превышает заранее определенное пороговое значение, приложение, соответствующее текущему просматриваемому идентификатору, закрывается. Поскольку фоновое приложение, заданное пользователем, не закрывается необдуманно, фоновые приложения подлежат лучшему управлению по сравнению со способом в предшествующем уровне техники, при котором выполняемое фоновое приложение, занимающее самый большой объем памяти, может быть фоновым приложением, назначенным пользователем, и таким образом может быть улучшено взаимодействие с пользователем.
[0049] В качестве альтернативы, на этапе 11 процесс создания списка приложений, в соответствии с запущенными приложениями в операционной системе, включает в себя:
расчет приоритетов режима работы запущенных приложений в операционной системе;
установление последовательности идентификаторов запущенных приложений, в соответствии с приоритетами режима работы, от высокого к низкому, чтобы получить список приложений.
[0050] Как правило, приоритеты режима работы расставляются от высокого к низкому: передний план, видимый, заметный, фоновый. Таким образом, терминальным устройством могут быть рассчитаны приоритеты режима работы запущенных приложений в операционной системе, а затем идентификаторы запущенных приложений могут быть упорядочены, в соответствии с приоритетами режима работы, от высокого к низкому, для получения списка приложений.
[0051] Способ создания списка приложений в настоящем документе приводится в кратком виде. Есть несколько других способов создания списка приложений. Например, чтобы получить список приложений, идентификаторы запущенных приложений могут быть упорядочены в соответствии с приоритетами режима работы, от высокого к низкому. Другие способы создания списка приложений в настоящем документе не описаны.
[0052] Поскольку изменение в запущенных приложениях в операционной системе является малым за короткий период времени, в целях экономии ресурсов приоритеты режима работы запущенных приложений в операционной системе могут быть вычислены с помощью терминального устройства в соответствии с заданным периодом. Заданный период может быть установлен в соответствии с практическими требованиями. Например, заданный период может быть установлен на 30, 45, 60 секунд и так далее.
[0053] В качестве альтернативы, на этапе 13 происходит определение того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением, что включает в себя:
получение приоритета рабочего режима приложения, соответствующего текущему просматриваемому идентификатору;
определение того, что приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, если приоритет рабочего режима приложения, соответствующего текущему просматриваемому идентификатору, соответствует фоновому.
[0054] Поскольку терминальным устройством могут быть вычислены приоритеты рабочего режима запущенных приложений в операционной системе, фоновое приложение может быть определено в соответствии с приоритетом рабочего режима приложения, соответствующего текущему просматриваемому идентификатору. То есть, приложение, приоритет рабочего режима которого является фоновым, может быть определено в качестве фонового приложения.
[0055] В качестве альтернативы, на этапе 15 происходит выбор идентификатора, соответствующего фоновому приложению в списке приложений, что включает в себя:
поиск одного или нескольких идентификаторов, предшествующих текущему просматриваемому идентификатору в списке приложений, и не включенных в заданный белый список;
выбора одного из одного или нескольких идентификаторов или выбор идентификатора, ближайшего к текущему просматриваемому идентификатору, из одного или нескольких идентификаторов, если обнаружен по крайней мере один идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список;
выбор текущего просматриваемого идентификатора, если не обнаружен идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список;
[0056] Чтобы выбрать идентификатор, соответствующий фоновому приложению из списка приложений, в первую очередь выполняется поиск одного или нескольких идентификаторов, предшествующих текущему просматриваемому идентификатору в списке приложений, и не включенных в заданный белый список, т.е. сначала выполняется поиск фонового приложения, не заданного пользователем. Если найден по крайней мере один идентификатор, может быть выбран один из одного или нескольких идентификаторов, или идентификаторов, ближайших к текущему просматриваемому идентификатору. Если идентификатор не обнаружен, то есть, все фоновые приложения, соответствующие одному или нескольким идентификаторам, предшествующим просматриваемому идентификатору, являются фоновыми приложениями, заданными пользователем, может быть выбран текущий просматриваемый идентификатор.
[0057] Альтернативно, способ дополнительно включает в себя:
получение неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение;
определение того, превышает ли неактивный период времени первый заданный период времени;
закрытие приложения, соответствующего текущему просматриваемому идентификатору, если неактивный период времени превышает первый заданный период времени.
[0058] Чтобы избежать потери ресурсов памяти, в случае, когда заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, может быть получен неактивный период времени приложения, соответствующего текущему просматриваемому идентификатору. Если неактивный период времени превышает первый заданный период времени, приложение, соответствующее текущему просматриваемому идентификатору, может быть закрыто непосредственно. То есть, даже если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору неактивно в течение длительного времени, приложение может быть закрыто. Первый заданный период времени может быть установлен в соответствии с практическими требованиями. Например, первый заданный период времени может быть установлен на 3 минуты, 5 минут, 10 минут и так далее.
[0059] Например, что касается приложения QQ, оно может находиться в фоновом рабочем режиме, если пользователь не использует его. Если неактивный период времени QQ составляет больше десяти минут, даже если заданный белый список включает в себя идентификатор QQ, приложение может быть закрыто, чтобы сохранить ресурсы памяти.
[0060] Альтернативно, способ дополнительно включает в себя:
определение того, превышает ли неактивный период времени второй заранее определенный период времени, если неактивный период времени не превышает первый заданный период времени;
освобождение памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает второй заданный период времени, причем второй заданный период времени меньше, чем первый заранее определенный период времени.
[0061] Согласно приведенному выше примеру, если неактивный период времени, не превышает первый заданный период времени, можно определить, превышает ли неактивный период времени второй заданный период времени. Второй заданный период времени меньше, чем первый заданный период времени. Если неактивный период времени превышает второй заданный период времени, память, занимаемая интерфейсом пользователя в приложении, соответствующем текущему просматриваемому идентификатору, может быть освобождена. Если неактивный период времени не превышает второй заданный период времени, может быть просмотрен следующий идентификатор в списке приложений. Второй заданный период времени может быть установлен в соответствии с практическими требованиями. Например, второй заданный период времени может быть установлен на 3 минуты, 5 минут, 10 минут и так далее.
[0062] Например, что касается приложения QQ, оно может находиться в фоновом рабочем режиме, если пользователь не использует его. Если неактивный период времени QQ составляет больше пяти минут, даже если заданный белый список включает в себя идентификатор QQ, память, занимаемая пользовательским интерфейсом в приложении QQ, может быть освобождена, чтобы сохранить ресурсы памяти.
[0063] Как правило, приложение может включать в себя две части: логические коды и пользовательский интерфейс (UI). Пользовательский интерфейс включает в себя такие элементы, как фотографии и динамические изображения. В нормальном случае эти две части могут храниться в памяти. В системе Android пользовательский интерфейс может представлять собой визуальный интерфейс. Визуальный интерфейс представляет собой контейнер, используемый для хранения пользовательского интерфейса приложения. Поскольку логические коды занимают мало памяти, память, занимаемая пользовательским интерфейсом приложения, неактивный период которого превышает второй заданный период времени, может быть освобождена, вместо разрушения логических кодов приложения, и таким образом можно сберечь большие объемы ресурсов памяти. Если рабочий режим приложения сменяется режимом переднего плана, поскольку логические коды приложения сохранены, пользовательский интерфейс может быть восстановлен без влияния на пользователя.
[0064] Альтернативно, способ дополнительно включает в себя:
получение неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение;
определение того, превышает ли неактивный период времени третий заданный период времени;
освобождение памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает третий заданный период времени.
[0065] Соответственно, чтобы сберечь ресурсы памяти, в случае, когда заданный белый список не включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, может быть получен неактивный период времени приложения, соответствующего текущему просматриваемому идентификатору. Если неактивный период времени превышает третий заданный период времени, память, занимаемая интерфейсом пользователя в приложении, соответствующем текущему просматриваемому идентификатору, может быть освобождена.
[0066] Третий заданный период времени может быть установлен в соответствии с практическими требованиями. Например, третий заданный период времени может быть установлен на 3 минуты, 5 минут, 10 минут и так далее.
[0067] Например, что касается калькулятора, он может находиться в фоновом рабочем режиме, если пользователь не использует его. Если неактивный период времени калькулятора составляет больше пяти минут, поскольку заданный белый список не включает в себя идентификатор калькулятора, память, занимаемая пользовательским интерфейсом калькулятора, может быть освобождена, чтобы сохранить ресурсы памяти.
[0068] В качестве альтернативы, этап получения неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, включает в себя:
подсчет периода времени, в течение которого приложение, соответствующее текущему просматриваемому идентификатору, не взаимодействует с другими процессами в операционной системе;
определение периода времени в качестве неактивного периода времени.
[0069] Неактивное состояние приложения относится к состоянию, в котором процесс приложения не взаимодействует с другими процессами в операционной системе. Взаимодействие может включать в себя отправку запроса данных, ответ на запросы данных или запросы связи, отправленные другими процессами и так далее. Для получения неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, может быть подсчитан период времени, когда процесс приложения, соответствующего текущему просматриваемому идентификатору, не взаимодействует с другими процессами в операционной системе.
[0070] На Фиг. 2 показана блок-схема, иллюстрирующая другой способ управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения; Как показано на Фиг. 2, способ, используемый в терминальном устройстве, включает следующие этапы.
[0071] На этапе 21 рассчитываются приоритеты режима работы запущенных приложений в операционной системе.
[0072] Как правило, приоритеты режима работы запущенных приложений расставляются от высокого к низкому: передний план, видимый, заметный, фоновый. Способы расчета приоритетов режима работы запущенных приложений, используемых в различных операционных системах, могут отличаться. Например, в системе Android приоритеты режима работы запущенных приложений могут быть рассчитаны службой Activity Manager Service.
[0073] На этапе 22 происходит установление последовательности идентификаторов запущенных приложений, в соответствии с приоритетами режима работы, от высокого к низкому, чтобы получить список приложений.
[0074] Способ создания списка приложений в настоящем документе приводится в кратком виде. Есть несколько других способов создания списка приложений. Например, чтобы получить список приложений, идентификаторы запущенных приложений могут быть упорядочены в соответствии с приоритетами режима работы, от высокого к низкому. Другие способы создания списка приложений в настоящем документе не описаны.
[0075] Идентификатор приложения может представлять собой, помимо прочего, имя, значок приложения и так далее.
[0076] На этапе 23 происходит просмотр списка приложений.
[0077] Для отдельных просматриваемых идентификаторов процедуры управления фоновыми приложениями идентичны. В дальнейшем, примем текущий просматриваемый идентификатор в качестве примера.
[0078] На этапе 24 происходит получение приоритета рабочего режима приложения, соответствующего текущему просматриваемому идентификатору.
[0079] Если приоритет рабочего режима приложения, соответствующего текущему просматриваемому идентификатору, является фоновым, на этапе 25 приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, и далее следует этап 26.
[0080] Если приоритет рабочего режима приложения, соответствующего текущему просматриваемому идентификатору, не является фоновым, далее следует этап 40.
[0081] На этапе 26 определяется, включает ли заданный белый список текущий просматриваемый идентификатор.
[0082] Заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем, т.е. идентификаторы фоновых приложений, которые пользователь не хочет закрывать. Например, фоновым приложением, назначенным пользователем, может быть QQ, WeChat, Fetion, Baidu Map и так далее. Заданный белый список может содержать идентификаторы приложений, таких как QQ, WeChat, Fetion, Baidu Map и т.д.
[0083] Если заданный белый список включает текущий просматриваемый идентификатор, на этапе 27 происходит определение того, не превышает ли количество идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение.
[0084] Заданное пороговое значение может быть установлено в соответствии с аппаратной конфигурацией терминального устройства и согласно практическим требованиям. Например, заданное пороговое значение может быть установлено на 10, 20, 25 и т.д.
[0085] Если количество идентификаторов, соответствующих фоновым приложениям в списке приложений превышает заданное пороговое значение, на этапе 28 выполняется обнаружение одного или нескольких идентификаторов, предшествующих текущему просматриваемому идентификатору в списке приложений, и не входящих в заданный белый список.
[0086] Если найден по крайней мере один идентификатор, на этапе 29 может быть выбран один из одного или нескольких идентификаторов, или идентификаторов, ближайших к текущему просматриваемому идентификатору, затем следует этап 31.
[0087] Если идентификатор не обнаружен, на этапе 30 выбирается текущий просматриваемый идентификатор, и далее следует этап 31.
[0088] На этапе 31 приложение, соответствующее выбранному идентификатору, закрывается, и следует этап 40.
[0089] Если количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, на этапе 32 происходит получение неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, и определяется, превышает ли неактивный период времени первый заданный период времени.
[0090] Если неактивный период времени превышает первый заданный период времени, на этапе 33 приложение, соответствующее текущему просматриваемому идентификатору, закрывается, и следует этап 40.
[0091] Чтобы избежать потери ресурсов памяти, в случае, когда заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, может быть получен неактивный период времени приложения, соответствующего текущему просматриваемому идентификатору. Если неактивный период времени превышает первый заданный период времени, приложение, соответствующее текущему просматриваемому идентификатору, может быть закрыто непосредственно. То есть, даже если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору неактивно в течение длительного времени, приложение может быть закрыто. Первый заданный период времени может быть установлен в соответствии с практическими требованиями. Например, первый заданный период времени может быть установлен на 3 минуты, 5 минут, 10 минут и так далее.
[0092] Например, что касается приложения QQ, оно может находиться в фоновом рабочем режиме, если пользователь не использует его. Если неактивный период времени QQ составляет больше десяти минут, даже если заданный белый список включает в себя идентификатор QQ, приложение может быть закрыто, чтобы сохранить ресурсы памяти.
[0093] Если неактивный период времени не превышает первый заданный период времени, на этапе 34 определяется, превышает ли неактивный период времени второй заданный период времени.
[0094] Если неактивный период времени превышает второй заданный период времени, на этапе 35 память, занятая пользовательским интерфейсом приложения, соответствующего текущему просматриваемому идентификатору, освобождается, и следует этап 40.
[0095] Если неактивный период времени не превышает второй заданный период времени, следует этап 40.
[0096] Согласно приведенному выше примеру, если неактивный период времени, не превышает первый заданный период времени, можно определить, превышает ли неактивный период времени второй заданный период времени. Второй заданный период времени меньше, чем первый заданный период времени. Если неактивный период времени превышает второй заданный период времени, память, занимаемая интерфейсом пользователя в приложении, соответствующем текущему просматриваемому идентификатору, может быть освобождена. Если неактивный период времени не превышает второй заданный период времени, может быть просмотрен следующий идентификатор в списке приложений. Второй заданный период времени может быть установлен в соответствии с практическими требованиями. Например, второй заданный период времени может быть установлен на 3 минуты, 5 минут, 10 минут и так далее.
[0097] Например, что касается приложения QQ, оно может находиться в фоновом рабочем режиме, если пользователь не использует его. Если неактивный период времени QQ составляет больше пяти минут, даже если заданный белый список включает в себя идентификатор QQ, память, занимаемая пользовательским интерфейсом в приложении QQ, может быть освобождена, чтобы сохранить ресурсы памяти.
[0098] Поскольку память, занятая пользовательским интерфейсом приложения, неактивный период которого превышает второй заданный период времени, освобождается, может быть сохранен большой объем ресурсов памяти. Если рабочий режим приложения сменяется режимом переднего плана, пользовательский интерфейс может быть восстановлен без влияния на пользователя.
[0099] Если заданный белый список не включает текущий просматриваемый идентификатор, на этапе 36 происходит определение того, не превышает ли количество идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение.
[00100] Если количество идентификаторов, соответствующих фоновым приложениям в списке приложений превышает заданное пороговое значение, на этапе 37 приложение, соответствующее текущему просматриваемому идентификатору, закрывается, и следует этап 40.
[00101] Если заданный белый список не включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям, превышает заранее определенное пороговое значение, приложение, соответствующее текущему просматриваемому идентификатору, может закрыться непосредственно. Поскольку заданный белый список не включает текущий просматриваемый идентификатор, т.е. приложение, соответствующее текущему просматриваемому идентификатору не является фоновым приложением, заданным пользователем, приложение, соответствующее текущему просматриваемому идентификатору, может быть закрыто непосредственно, для сохранения ресурсов памяти и улучшения взаимодействия с пользователем.
[00102] Если количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, на этапе 38 происходит получение неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, и определяется, превышает ли неактивный период времени третий заданный период времени.
[00103] Если неактивный период времени превышает третий заданный период времени, на этапе 39 память, занятая пользовательским интерфейсом приложения, соответствующего текущему просматриваемому идентификатору, освобождается, и следует этап 40.
[00104] Если неактивный период времени не превышает третий заданный период времени, следует этап 40.
[00105] Соответственно, чтобы сберечь ресурсы памяти, в случае, когда заданный белый список не включает в себя текущий просматриваемый идентификатор, и количество идентификаторов, соответствующих фоновым приложениям в списке приложений, не превышает заданное пороговое значение, может быть получен неактивный период времени приложения, соответствующего текущему просматриваемому идентификатору. Если неактивный период времени превышает третий заданный период времени, память, занимаемая интерфейсом пользователя в приложении, соответствующем текущему просматриваемому идентификатору, может быть освобождена.
[00106] Третий заданный период времени может быть установлен в соответствии с практическими требованиями. Например, третий заданный период времени может быть установлен на 3 минуты, 5 минут, 10 минут и так далее.
[00107] Например, что касается калькулятора, он может находиться в фоновом рабочем режиме, если пользователь не использует его. Если неактивный период времени калькулятора составляет больше пяти минут, поскольку заданный белый список не включает в себя идентификатор калькулятора, память, занимаемая пользовательским интерфейсом калькулятора, может быть освобождена, чтобы сохранить ресурсы памяти.
[00108] Этап 40 является последним.
[00109] На Фиг. 3 показана структурная схема, иллюстрирующая устройство управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения. Как показано на Фиг. 3, устройство включает в себя блок создания 31, блок просмотра 32, первый блок определения 33, второй блок определения 34 и первый блок закрытия 35.
[00110] Блок создания 31 сконфигурирован для создания списка приложений в соответствии с запущенными приложениями в операционной системе, причем список приложений, по крайней мере, включает идентификаторы запущенных приложений в операционной системе.
[00111] Блок просмотра 32 сконфигурирован для просмотра идентификаторов в списке приложений.
[00112] Первый блок определения 33 сконфигурирован для определения того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением.
[00113] Второй блок определения 34 сконфигурирован для определения того, содержит ли заданный белый список текущий просматриваемый идентификатор, и превышает ли число идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, причем заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем.
[00114] Первый блок закрытия 35 сконфигурирован для:
выбора идентификатора, соответствующего фоновому приложению, из списка приложений, и закрытия фонового приложения, соответствующего выбранному идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество превышает заранее определенное пороговое значение;
закрытия приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество превышает заранее определенное пороговое значение.
[00115] При использовании устройства управления фоновым приложением, в соответствии с вариантами осуществления настоящего изобретения, для определения терминальным устройством фонового приложения, подлежащего закрытию, необходимо учитывать то, превышает ли количество фоновых приложений заданное пороговое значение, и включает ли заданный белый список идентификатор фонового приложения, подлежащего закрытию. Белый список включает в себя идентификаторы фоновых приложений, заданных пользователем. То есть, пользователь не хочет закрывать любое из фоновых приложений, соответствующих идентификаторам в заданном белом списке. Для текущего просматриваемого идентификатора, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество фоновых приложений превышает заранее определенное пороговое значение, фоновое приложение будет выбрано и закрыто. Если заданный белый список не включает в себя текущий просматриваемый идентификатор, и число фоновых приложений превышает заранее определенное пороговое значение, приложение, соответствующее текущему просматриваемому идентификатору, закрывается. Поскольку фоновое приложение, заданное пользователем, не закрывается необдуманно, фоновые приложения подлежат лучшему управлению по сравнению со способом в предшествующем уровне техники, при котором выполняемое фоновое приложение, занимающее самый большой объем памяти, может быть фоновым приложением, назначенным пользователем, и таким образом может быть улучшено взаимодействие с пользователем.
[00116] В качестве альтернативы, блок создания 31 содержит подблок вычисления и подблок определения последовательности.
[00117] Подблок вычисления сконфигурирован для расчета приоритетов режима работы запущенных приложений в операционной системе, при котором приоритеты расставляются от высокого к низкому, например: передний план, видимый, заметный, фоновый.
[00118] Подблок определения последовательности сконфигурирован для установления последовательности идентификаторов запущенных приложений, в соответствии с приоритетами режима работы, от высокого к низкому, чтобы получить список приложений.
[00119] В качестве альтернативы, блок определения 33 содержит подблок получения и первый подблок определения.
[00120] Подблок получения сконфигурирован для получения приоритета рабочего режима приложения, соответствующего текущему просматриваемому идентификатору.
[00121] Первый подблок определения сконфигурирован для определения того, что приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, если приоритет рабочего режима приложения, соответствующего текущему просматриваемому идентификатору, соответствует фоновому.
[00122] В качестве альтернативы, первый блок закрытия 35 содержит подблок поиска и подблок выбора.
[00123] Подблок поиска сконфигурирован для поиска одного или нескольких идентификаторов, предшествующих текущему просматриваемому идентификатору в списке приложений, и не включенных в заданный белый список.
[00124] Подблок выбора сконфигурирован для:
выбора одного из одного или нескольких идентификаторов или выбора идентификатора, ближайшего к текущему просматриваемому идентификатору, из одного или нескольких идентификаторов, если обнаружен по крайней мере один идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список;
выбора текущего просматриваемого идентификатора, если не обнаружен идентификатор, предшествующий текущему просматриваемому идентификатору в списке приложений, и не включенный в заданный белый список.
[00125] В качестве альтернативы, устройство дополнительно содержит первый блок получения, третий блок определения и второй блок закрытия.
[00126] Первый блок получения сконфигурирован для получения неактивного периода времени приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение.
[00127] Третий блок определения сконфигурирован для определения того, превышает ли неактивный период времени первый заданный период времени.
[00128] Второй блок закрытия сконфигурирован для закрытия приложения, соответствующего текущему просматриваемому идентификатору, если неактивный период времени превышает первый заданный период времени.
[00129] В качестве альтернативы, устройство дополнительно содержит блок обнаружения и первый блок освобождения.
[00130] Блок обнаружения сконфигурирован для определения того, превышает ли неактивный период времени второй заранее определенный период времени, если неактивный период времени не превышает первый заданный период времени.
[00131] Первый блок освобождения сконфигурирован для освобождения памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает второй заданный период времени, причем второй заданный период времени меньше, чем первый заранее определенный период времени.
[00132] В качестве альтернативы, устройство дополнительно содержит второй блок получения, четвертый блок определения и второй блок освобождения.
[00133] Второй блок получения сконфигурирован для получения неактивного периода времени заданного приложения, соответствующего текущему просматриваемому идентификатору, если белый список не включает в себя текущий просматриваемый идентификатор и количество не превышает заранее определенное пороговое значение.
[00134] Четвертый блок определения сконфигурирован для определения того, превышает ли неактивный период времени третий заданный период времени.
[00135] Второй блок освобождения сконфигурирован для освобождения памяти, занятой пользовательским интерфейсом в приложении, соответствующем текущему просматриваемому идентификатору, если неактивный период времени превышает третий заданный период времени.
[00136] В качестве альтернативы, первый блок получения и второй блок получения содержат подблок подсчета и второй подблок определения.
[00137] Подблок подсчета сконфигурирован для подсчета периода времени, в течение которого приложение, соответствующее текущему просматриваемому идентификатору, не взаимодействует с другими процессами в операционной системе.
[00138] Второй подблок определения сконфигурирован для определения периода времени, выступающего в качестве неактивного периода времени.
[00139] Что касается устройств в вышеописанных вариантах осуществления, конкретные способы выполнения операций для отдельных модулей были подробно описаны в вариантах осуществления, относящихся к способам управления фоновым приложением, и не описываются здесь снова.
[00140] На Фиг. 4 показана принципиальная схема, иллюстрирующая устройство 800 для управления фоновым приложением, согласно примерному варианту осуществления настоящего изобретения. Например, устройство 800 может быть мобильным телефоном, компьютером, терминалом цифрового вещания, оборудованием для приема и отправки сообщений, игровым контроллером, планшетом, медицинским оборудованием, спортивным оборудованием, карманным компьютером и так далее.
[00141] Как показано на Фиг. 4, устройство 800 может включать в себя один или несколько следующих компонентов: компонент обработки 802, память 804, компонент питания 806, компонент мультимедиа 808, компонент аудио 810, интерфейс ввода/вывода (I/O) 812, компонент сенсора 814, и компонент связи 816.
[00142] Компонент обработки 802 обычно управляет всеми операциями устройства 800, например, операциями, связанными с дисплеем, телефонными звонками, передачей данных, работой камеры и записи. Компонент обработки 802 может включать в себя один или несколько процессоров 820 для выполнения инструкций, связанных со всеми или некоторыми этапами вышеописанных способов. Кроме того, компонент обработки 802 может включать в себя один или несколько модулей, которые облегчают взаимодействие между компонентом обработки 802 и другими компонентами. Например, компонент обработки 802 может включать в себя мультимедийный модуль для облегчения взаимодействия между компонентом мультимедиа 808 и компонентом обработки 802.
[00143] Память 804 сконфигурирована для хранения различных типов данных для поддержки работы устройства 800. Примеры таких данных включают в себя инструкции для любых типов применения или способов эксплуатации устройства 800, контактные данные, данные телефонной книги, сообщения, фотографии, видео и т.д. Память 804 может быть реализована с использованием любого типа энергозависимых или энергонезависимых запоминающих устройств, или их комбинации, например, статического оперативного запоминающего устройства (SRAM), электрически стираемого программируемого ПЗУ (EEPROM), стираемого программируемого ПЗУ (EPROM), программируемого ПЗУ (PROM), ПЗУ (ROM), магнитной памяти, флэш-памяти, магнитного или оптического диска.
[00144] Компонент питания 806 обеспечивает питание различным компонентам устройства 800. Компонент питания 806 может включать в себя систему управления электропитанием, один или более источников питания, а также любые другие компоненты, связанные с производством, управлением и распределением электроэнергии в устройстве 800.
[00145] Компонент мультимедиа 808 включает в себя экран, обеспечивающий выходной интерфейс между устройством 800 и пользователем. В некоторых вариантах осуществления экран может включать в себя жидкокристаллический дисплей (LCD) и сенсорную панель (TP). Если экран включает в себя сенсорную панель, экран может быть выполнен в виде сенсорного экрана для получения входных сигналов от пользователя. Сенсорная панель включает в себя один или несколько сенсорных датчиков для определения прикосновений и жестов на сенсорной панели. Сенсорные датчики могут определять не только границу прикосновения или движения пальца, но также и продолжительность и давление, связанные с прикосновением или движением. В некоторых вариантах осуществления компонент мультимедиа 808 включает переднюю и/или заднюю камеры. Передняя и задняя камера могут получать внешние мультимедийные данные, когда устройство 800 находится в режиме работы, например, в режиме фотографирования или в режиме видео. Каждая из камер может представлять собой систему фиксированных оптических линз, или иметь фокус и возможность оптического увеличения.
[00146] Компонент аудио 810 сконфигурирован для вывода и/или ввода звукового сигнала. Например, компонент аудио 810 включает в себя микрофон («MIC»), сконфигурированный для приема внешнего аудио сигнала, когда устройство 800 находится в режиме работы, например, в режиме вызова, режиме записи и в режиме распознавания голоса. Принятый аудио сигнал может в дальнейшем сохраняться в памяти 804 или передаваться с помощью компонента связи 816. В некоторых вариантах осуществления компонент аудио 810 включает в себя динамик для вывода аудио сигналов.
[00147] Интерфейс ввода/вывода 812 обеспечивает интерфейс между компонентом обработки 802 и модулями интерфейса периферийных устройств, таких как клавиатура, колесо управления, кнопки и тому подобное. Кнопки могут включать в себя, помимо прочего, кнопку «домой», кнопку громкости, кнопку пуска и кнопку блокировки.
[00148] Компонент датчика 814 включает в себя один или несколько датчиков для оценки состояния различных аспектов устройства 800. Например, компонент датчика 814 может обнаружить открытое/закрытое состояние устройства 800, относительное положение компонентов (например, дисплея и клавиатуры) устройства 800, изменение положения устройства 800 или компонента устройства 800, наличие или отсутствие контакта пользователя с устройством 800, ориентацию или ускорение/замедление устройства 800 и изменение температуры устройства 800. Компонент датчика 814 может включать в себя бесконтактный датчик, сконфигурированный для обнаружения присутствия близлежащих объектов без физического контакта. Компонент датчика 814 может также включать в себя датчик света, такой как датчик изображения CMOS или CCD, для использования в получении изображений. В некоторых вариантах осуществления компонент датчика 814 может также включать в себя акселерометр, гиродатчик, магнитный датчик, датчик давления или датчик температуры.
[00149] Компонент связи 816 сконфигурирован для обеспечения проводной или беспроводной связи между устройством 800 и другими устройствами. Устройство 800 может получить доступ к беспроводной сети на основе стандарта связи, такого как WIFI, 2G, 3G или их комбинации. В одном примерном варианте осуществления компонент связи 816 принимает широковещательный сигнал или трансляцию связанной информации от внешней системы управления вещанием по широковещательному каналу. В одном примерном варианте осуществления компонент связи 816 дополнительно включает в себя модуль связи малого радиуса действия (NFC) для обеспечения связи ближнего радиуса действия. Например, модуль NFC может быть реализован на основе технологии радиочастотной идентификации (RFID), технологии ассоциации инфракрасной передачи данных (IrDA), технологии ультра-широкополосного вещания (UWB), технологии Bluetooth (ВТ) и других технологий.
[00150] В примерных вариантах осуществления устройство 800 может быть реализовано с одной или несколькими специализированными интегральными схемами (ASIC), цифровыми процессорами сигналов (DSP), устройствами цифровой обработки сигналов (DSPD), программируемыми логическими устройствами (PLD), программируемыми вентильными матрицами (FPGA), контроллерами, микроконтроллерами, микропроцессорами или другими электронными компонентами, для реализации описанных выше способов, согласно вариантам осуществления настоящего изобретения.
[00151] В примерных вариантах осуществления предусмотрен также энергонезависимый машиночитаемый носитель данных с инструкциями, такой как память 804 с инструкциями, и инструкции выполняются процессором 820 устройства 800 для реализации описанных выше способов. Например, энергонезависимый машиночитаемый носитель данных может представлять собой ПЗУ, оперативное запоминающее устройство (ОЗУ), CD-ROM, магнитную ленту, гибкий диск, оптическое устройство хранения данных и тому подобное.
[00152] Предусматривается энергонезависимый машиночитаемый носитель данных, включая хранящиеся в нем команды, которые, при выполнении процессором терминального устройства, заставляют терминальное устройство осуществить способ управления фоновым приложением. Способ включает:
создание списка приложений в соответствии с запущенными приложениями в операционной системе, причем список приложений, по крайней мере, включает идентификаторы запущенных приложений в операционной системе;
просмотр идентификаторов в списке приложений;
определение того, является ли приложение, соответствующее текущему просматриваемому идентификатору, фоновым приложением;
определение того, содержит ли заданный белый список текущий просматриваемый идентификатор, и превышает ли число идентификаторов, соответствующих фоновым приложениям в списке приложений, заданное пороговое значение, если приложение, соответствующее текущему просматриваемому идентификатору, является фоновым приложением, причем заданный белый список включает в себя идентификаторы фоновых приложений, назначенных пользователем;
выбор идентификатора, соответствующего фоновому приложению, из списка приложений, и закрытие фонового приложения, соответствующего выбранному идентификатору, если заданный белый список включает в себя текущий просматриваемый идентификатор, и количество превышает заранее определенное пороговое значение;
закрытие приложения, соответствующего текущему просматриваемому идентификатору, если заданный белый список не включает в себя текущий просматриваемый идентификатор и количество превышает заранее определенное пороговое значение.
[00153] Другие варианты осуществления изобретения будут очевидны для специалистов в данной области при рассмотрении описания и изучении изобретения. Предполагается, что эта заявка охватывает любые изменения, варианты применения или адаптацию изобретения, согласно изложенным общим принципам, и включая такие отклонения от настоящего изобретения, которые известны или являются обычной практикой в данной области. Предполагается, что описание и примеры будут рассматриваться только в качестве примера, с истинной сущностью и объемом изобретения, указанным в прилагаемой формуле изобретения.
[00154] Следует понимать, что настоящее изобретение не ограничивается точной конструкцией, описанной выше и проиллюстрированной на сопроводительных чертежах, и что различные модификации и изменения могут быть сделаны без отступления от объема изобретения. Предполагается, что объем изобретения ограничивается только прилагаемой формулой изобретения.