СПОСОБ ОБРАБОТКИ И УСТРОЙСТВО ДЛЯ ПРИКЛАДНОЙ ПРОГРАММЫ
PROCESSING METHOD AND DEVICE FOR APPLICATION PROGRAM

[0001] Настоящая заявка испрашивает приоритет по патентной заявке Китая №201410203339.1, с называнием "Processing method and device for application program", поданной 14 мая 2014 г., полное содержание которой включено в данный документ в качестве ссылки.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее изобретение относится к области электронных терминалов и, в частности, к способу обработки и устройству для прикладной программы.
УРОВЕНЬ ТЕХНИКИ
[0003] В настоящее время существует много прикладных программ, разработанных для мобильных телефонов, планшетов и других электронных терминалов, и обычно имеется место выполнения нескольких приложений, работающих одновременно в одном электронном терминале. Кроме того, работа приложения обычно выполняется в двух формах: одно приложение выполняется на переднем плане, т.е. выполняется непосредственно в окне или интерфейсе, который показан на экране с отображением текущего интерфейса запущенного приложения, которое может взаимодействовать с пользователем электронного терминала через отображаемый интерфейс. Другая форма представляет собой выполнение в фоновом режиме. Это означает, что на экране не отображается текущий интерфейс приложения, однако приложение продолжает выполняться и может быть переключено в любое время на передний план и отображено.
[0004] В процессе практического использования электронных терминалов обычно существуют требования к переключению приложений с выполнения на переднем плане в фоновый режим. Например, если пользователь открывает приложение для воспроизведения музыки и запускает воспроизведение музыки, пользовательский интерфейс приложения для воспроизведения музыки будет рассчитываться в процессе выполнения приложения для воспроизведения музыки, а затем будет отображаться, а содержимое интерфейса может включать в себя кнопку управления воспроизведением, обложку альбома, информацию о композиции, прокрутку текста песен и так далее. В это время пользователь может переключать приложение для воспроизведения музыки, чтобы оно выполнялось в фоновом режиме, запустить приложение резервного копирования данных терминала, затем пользовательский интерфейс, включающий в себя кнопку управления резервного копирования и расписание резервного копирования, будет рассчитываться в процессе выполнения приложения резервного копирования и отображаться. Во время выполнения резервного копирования пользователь может переключиться на главную страницу для осуществления других операций, которые можно не повторять в данном документе.
[0005] Для таких мест выполнения, способ обработки на предшествующем уровне техники состоит в следующем: если приложение переключается на выполнение в фоновом режиме, то оно непрерывно продолжает выполнять один и тот же процесс, что и на переднем плане, таким образом, все данные, службы и пользовательские интерфейсы приложения могут продолжать обрабатываться таким же образом, как они выполнялись на переднем плане, только со скрытым интерфейсом пользователя. Когда приложение снова переключается на выполнение на переднем плане, то может быть отображен пользовательский интерфейс.
[0006] При вышеупомянутом выполнении прикладных программ обработки существуют по меньшей мере следующие проблемы: поскольку выполняется один и тот же процесс, что и на переднем плане, при переключении приложения на выполнение в фоновом режиме, может быть задействовано множество ресурсов для обработки, и пользователь, как правило, не интересуется пользовательским интерфейсом фоновой программы в практических ситуациях местах, поэтому такой способ обработки может привести к избыточному расходованию ресурсов для обработки и относительно низкой эффективности использования ресурсов.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0007] Для решения проблем в фоновом режиме, варианты осуществления настоящего изобретения представляют собой способ обработки и устройство для прикладной программы обработки, которая может эффективно сэкономить ресурсы обработки электронного терминала для повышения эффективности использования ресурсов.
[0008] В соответствии с первым аспектом вариантов осуществления настоящего изобретения, обеспечивается способ обработки для прикладной программы, который может включать в себя:
[0009] переключение прикладной программы с выполнения на переднем плане на выполнение в фоновом режиме, в котором процессы вышеупомянутой прикладной программы включают в себя процесс пользовательского интерфейса и процесс программной части; и
[0010] завершение процесса пользовательского интерфейса вышеупомянутой прикладной программы и продолжение выполнения процесса программной части вышеупомянутой прикладной программы.
[0011] В соответствии со вторым аспектом вариантов осуществления настоящего изобретения, обеспечивается устройство обработки для прикладной программы, которое может включать в себя:
[0012] первый блок переключения, выполненный с возможностью переключения прикладной программы с выполнения на переднем плане на выполнение в фоновом режиме, в котором процессы вышеупомянутой прикладной программы включают в себя процесс пользовательского интерфейса и процесс исполнения программы,
[0013] блок завершения, выполненный с возможностью завершения процесса пользовательского интерфейса вышеупомянутой прикладной программы после того, как вышеупомянутый первый блок переключения переключит прикладную программу с выполнения на переднем плане на выполнение в фоновом режиме; и
[0014] блок выполнения, выполненный с возможностью продолжения выполнения процесса программной части вышеупомянутой прикладной программы после того, как вышеупомянутый первый блок переключения переключит прикладную программу с выполнения на переднем плане на выполнение в фоновом режиме.
[0015] Решения, обеспечиваемые вариантами осуществления изобретения, могут иметь следующие преимущества: за счет раздельного выполнения процесса пользовательского интерфейса и процесса выполнения прикладной программы, когда прикладная программа переключатся на выполнение в фоновом режиме, при этом, процессы программной части, необходимые для пользователя, могут продолжать выполняться, а процессы пользовательского интерфейса, которые пользователя не интересуют, могут быть завершены. Решения, по сравнению со способом в смежных технологиях, где операции прикладной программы собираются в один процесс для выполнения и все программы прикладной программы продолжают выполняться в фоновом режиме, могут сэкономить ресурсы обработки центрального процессора и объем памяти, занимаемый расчетами пользовательского интерфейса, когда прикладная программа переходит на выполнение в фоновом режиме, таким образом, могут снизить потребление энергии электронного терминала для достижения экономии энергии при одновременном выполнении многих прикладных программ; и могут не только повысить эффективность поддержки ресурсов, но также и уменьшить нагрев электронного терминала, вследствие устранения избыточного расходования ресурсов обработки центрального процессора в электронном терминале.
[0016] Необходимо понимать, что вышеизложенное общее описание и последующее подробное описание являются только иллюстративными и пояснительными и не ограничивают изобретение.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0017] Сопроводительные чертежи, которые включены в описание и являются его частью, иллюстрируют варианты осуществления в соответствии с настоящей заявкой на изобретением и вместе с описанием служат для объяснения принципов настоящей заявки.
[0018] Фиг. 1 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с примером варианта осуществления.
[0019] Фиг. 2 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с другим примером варианта осуществления.
[0020] Фиг. 3 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с другим примером варианта осуществления.
[0021] Фиг. 4 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с другим примером варианта осуществления.
[0022] Фиг. 5 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с другим примером варианта осуществления.
[0023] Фиг. 6 представляет структурную блок-схему устройства обработки для прикладной программы.
[0024] Фиг. 7 представляет структурную блок-схему другого устройства обработки для прикладной программы.
[0025] Фиг. 8 представляет структурную блок-схему другого устройства обработки для прикладной программы.
[0026] Фиг. 9 представляет структурную блок-схему другого устройства обработки для прикладной программы.
[0027] Фиг. 10 представляет структурную блок-схему другого устройства обработки для прикладной программы.
[0028] 11 представляет структурную блок-схему устройства обработки для прикладной программы в соответствии с примером варианта осуществления.
[0029] Фиг. 12 представляет структурную блок-схему устройства обработки для прикладной программы в соответствии с другим примером варианта осуществления.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[0030] Ниже приведены подробные примеры вариантов осуществления, примеры которых приведены на сопроводительных чертежах. Нижеприведенное описание ссылается на сопроводительные чертежи, на которых одни и те же позиции на разных чертежах обозначают одни и те же или одинаковые элементы, если не указано иное. Варианты исполнения, изложенные в нижеприведенном описании примеров осуществления, не представляют собой все варианты исполнения в соответствии с настоящей заявкой. На самом деле, они являются просто примерами аппаратов и способов в соответствии с аспектами, относящимися к настоящей заявке, как изложено в прилагаемой формуле изобретения.
[0031] Фиг. 1 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с примером варианта осуществления. Как показано на фиг. 1, способ обработки для прикладной программы используется в терминале и включает в себя следующие этапы.
[0032] На этапе S11: прикладная программа переключается с выполнения на переднем плане на выполнение в фоновом режиме, в котором процессы вышеупомянутой прикладной программы включают в себя процесс пользовательского интерфейса и процесс программной части.
[0033] Различие между режимом работы прикладной программы в соответствии с настоящим изобретением и режимом работы прикладной программы в соответствии со смежной технологией заключается в том, что прикладная программа в смежной технологии обычно имеет только один процесс, а подпрограммы служб, данных, алгоритмов и графическая часть совмещены в этом процессе. Тем не менее, в настоящем раскрытии изобретения, некоторые коды прикладной программы являются подпрограммами, связанными со службой, данными и алгоритмом прикладной программы, которые могут быть объединены в процесс программной части для выполнения; а другие коды прикладной программы не имеют большого влияния на базовую службу, данные или алгоритм и являются обычно некоторыми подпрограммами, связанными с пользовательским интерфейсом, и эти подпрограммы могут быть объединены в процесс пользовательского интерфейса для выполнения.
[0034] Например, кнопка управления воспроизведением, обложка альбома, информация о композиции, прокрутка текста песен и так далее в прикладной программе для воспроизведения музыки может быть отнесено к процессу пользовательского интерфейса для выполнения, чтобы эти программы могли быть завершены при переключении в фоновый режим. Тем не менее, служебные программы прикладной программы, такие как воспроизведение музыки, загрузка музыкальных данных и т.д., могут быть отнесены к процессу программной части для выполнения, поэтому эти программы могут продолжать выполняться даже при переключении в фоновый режим. Аналогично, многие приложения, такие как радио, резервное копирование, исходное приложение и приложение прогноза погоды и т.п., могут применять аналогичный способ, который относится к процессу пользовательского интерфейса или к процессу программной части с возможностью раздельного выполнения.
[0035] На этапе S12: процесс части пользовательского интерфейса вышеупомянутой прикладной программы завершается, а процесс программной части вышеупомянутой прикладной программы продолжает выполняться.
[0036] При этом, так как настоящее изобретение применяет способ раздельного выполнения процесса пользовательского интерфейса и процесса выполнения программы, как описано на этапе S11, эти два процесса могут обрабатываться по-разному при переключении на выполнения в фоновом режиме. С одной стороны, прикладная программа только переключается с выполнения на переднем плане на выполнение в фоновом режиме, а не закрывается. Таким образом, для обеспечения полного набора функций приложения терминала выполнение прикладной программы в фоновом режиме продолжает обеспечивать соответствующую службу, а именно продолжает выполнять соответствующий процесс выполнения вышеупомянутой прикладной программы. С другой стороны, когда пользователь переключает прикладную программу в фоновый режим для отображения другого интерфейса или выключения экрана, пользователю уже не нужен пользовательский интерфейс прикладной программы, выполняющейся в фоновом режиме. Тем не менее, вычисление этих пользовательских интерфейсов может занимать больше ресурсов обработки процесса программной части, которые иногда в несколько раз превышают ресурсы исполняемой части. Таким образом, в целях снижения загруженности ресурсов при выполнении прикладной программы в фоновом режиме, ее пользовательский интерфейс больше не нужно вычислять, и именно процесс пользовательского интерфейса завершается.
[0037] Дополнительно, фиг. 2 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с другим примером варианта осуществления. Как показано на фиг. 2, способ может включать в себя следующие этапы.
[0038] На этапе S13: когда прикладная программа переключается с выполнения в фоновом режиме на выполнение на переднем плане, упомянутый процесс пользовательского интерфейса возобновляется в соответствии с вышеупомянутым процессом логической части программы.
[0039] При этом, хотя процесс пользовательского интерфейса завершается во время выполнения прикладной программы в фоновом режиме, пользовательский интерфейс прикладной программы должен быть отображен точно в то время, когда прикладная программа переключается на выполнение на переднем плане. Если прикладная программа переключается на выполнение на переднем плане, пользовательский интерфейс может быть перезапущен и полностью самостоятельно возобновлен. Поэтому после перезапуска пользовательского интерфейса состояние процесса программной части должно быть проверено в первую очередь, а соответствующий пользовательский интерфейс текущего процесса программной части должен быть вычислен.
[0040] Дополнительно, фиг. 3 представляет функциональную блок-схему способа обработки для прикладной программы в соответствии с другим примерном варианта осуществления. Как показано на фиг. 3, перед выполнением этапа S11 способ может дополнительно включать в себя следующие этапы.
[0041] На этапе S14: при запуске вышеупомянутой прикладной программы происходит считывание идентификатора исполняемой части и/или идентификатора графической части в файле конфигурации вышеупомянутой прикладной программы.
[0042] При осуществлении разработки прикладной программы разработчик может применить соответствующую идентификацию в файле конфигурации прикладной программы для обеспечения соответствия стратегии разделения процесса выполнения программной части и процесса пользовательского интерфейса в соответствии с настоящим изобретением. Способами идентификации могут быть: запись меток процессов, которые не могут быть завершены, например, запись меток сервера, данных и т.п. с использованием: «процесс» или «программная часть». «Процесс» или «программная часть», показанные здесь, могут быть рассмотрены в качестве идентификаторов процесса программной части для того, чтобы, когда прикладная программа выполняется операционной системой, программы, соответствующие метке «программная часть», собираются в процесс программной части для выполнения, а другие программы располагаются в процессе пользовательского интерфейса для выполнения. Можно пояснить, что в файле конфигурации прикладной программы, выполняемой в фоновом режиме, программы, связанные с пользовательским интерфейсом, могут также быть помечены с использованием идентификаторов процесса пользовательского интерфейса, аналогично программы с идентификаторами процесса пользовательского интерфейса располагаются в процессе пользовательского интерфейса для выполнения, а другие программы выполняются как процессы программной части, которые не могут быть завершены, даже в фоновом режиме. В противном случае, не только программы, связанные с пользовательским интерфейсом, могут быть обозначены с помощью идентификаторов процесса пользовательского интерфейса, а также и программы, связанные с программной частью, могут быть обозначены с помощью идентификаторов процесса программной части, которые не могут быть ограничены вариантами осуществления настоящего изобретения.
[0043] На этапе S15: согласно упомянутому идентификатору процесса программной части и/или идентификатору процесса пользовательского интерфейса, соответствующие подпрограммы, включенные в вышеупомянутую прикладную программу, классифицируются по классам процессов, в которых вышеупомянутые классы процессов включают в себя класс пользовательского интерфейса и класс программной части.
[0044] Если взять прикладную программу для воспроизведения музыки в качестве примера, то файл конфигурации прикладной программы называется AndroidManifest.xml, а элементы, включенные в файл конфигурации, включают в себя: компоненты Activity (Активити), Service (Сервис), Provider (Провайдер) и Fteveiver (Ресивер).
[0045] При этом краткие определения и сгруппированные классы процессов соответствующих элементов приведены ниже:
[0046] (1) Элемент Activity (Активити), соответствующий каждому компоненту в пользовательском интерфейсе, такому как список музыкальных файлов, вид системы воспроизведения и т.п., которые могут быть отображены, относится к графической части.
[0047] (2) Элемент Service (Сервис), представляющий собой службы системы воспроизведения в фоновом режиме, относится к процессу программной части.
[0048] (3) Элемент Provider (Провайдер), представляющий собой музыкальные данные, такие как, например, музыкальная композиция, которая воспроизводится в данный момент, и ее автор, относится к процессу выполнения программной части.
[0049] (4) Элемент Receiver (Ресивер), выполняющий какие-либо действия, которые были запущены после получения внешних событий, происходящих в системе, например, запуск воспроизведения музыкальной композиции после того, как она будет полностью загружена, относится к процессу выполнения программной части.
[0050] На этапе S16: вышеупомянутый процесс пользовательского интерфейса и вышеупомянутый процесс программной части выполняются в соответствии с расклассифицированными классами процессов, в которых подпрограммы вышеупомянутого класса пользовательского интерфейса выполняются в вышеупомянутом процессе пользовательского интерфейса, а подпрограммы вышеупомянутого класса программной части выполняются в вышеупомянутом процессе программной части.
[0051] При этом на основе классифицированных результатов на этапе S15 процесс пользовательского интерфейса организуется так, чтобы отдельно выполнять подпрограммы класса пользовательского интерфейса, а процесс программной части организуется так, чтобы выполнять подпрограммы класса программной части. Например, все элементы Activity (Активити) в приложении для воспроизведения музыки выполняются в одном процессе пользовательского интерфейса, а все элементы Service (Сервис), Provider (Провайдер) и Receiver (Ресивер) выполняются в одном процессе программной части.
[0052] Необходимо пояснить, что в случае реализации этапа S15, то есть подпрограмм, которые разрешены или не могут быть завершены при выполнении в фоновом режиме, могут быть осуществлены в файле конфигурации прикладной программы, при этом ресурсы для обработки могут быть эффективно сэкономлены с помощью способа в соответствии с вариантами осуществления настоящего описания изобретения. Тем не менее, поскольку существует много различных команд разработчиков, работающих с прикладными программами, то невозможно обеспечить то, чтобы все файлы конфигурации соответствующих прикладных программ смогли соответствовать стратегии разделения процесса пользовательского интерфейса и процесса программной части в соответствии с настоящим изобретением. Таким образом, чтобы избежать завершения необходимых программ в фоновом режиме прикладной программы и влияния на нормальное использование функции прикладной программы, может быть дополнительно использован дифференциальный способ обработки в этом варианте осуществления. Например, для прикладной программы, которая соответствует стратегии разделения процесса пользовательского интерфейса и процесса программной части, когда она выполняется в фоновом режиме, ее процесс пользовательского интерфейса завершается; и для прикладной программы, которая не соответствует стратегии разделения процесса пользовательского интерфейса и процесса программной части, если она выполняется в фоновом режиме, ее соответствующая программа продолжает выполняться.
[0053] Дополнительно, в одном альтернативном варианте осуществления, как показано на фиг. 4, для того, чтобы обеспечить плавное переключение интерфейса и избежать частого завершения и перезагрузки процесса пользовательского интерфейса, может быть добавлено условие оценки времени после того, как прикладная программа выйдет в фоновый режим, и до того, как процесс пользовательского интерфейса будет завершен. В частности, после этапа S11 способ может дополнительно включать в себя следующие этапы.
[0054] На этапе S17 определяется, достигает ли продолжительность выполнения вышеупомянутой прикладной программы в фоновом режиме предварительно заданной продолжительности.
[0055] При этом, когда продолжительность выполнения вышеупомянутой прикладной программы в фоновом режиме достигает предварительно заданной продолжительности, выполняется этап S12; и когда продолжительность выполнения вышеупомянутой прикладной программы в фоновом режиме не достигает предварительно заданной продолжительности, продолжает выполняться этап S17. Можно пояснить, что, если прикладная программа переключается на выполнение в фоновом режиме и запускается отсчет времени, а прикладная программа возвращается на передний план для выполнения, не достигнув предварительно заданной продолжительности, отсчет времени может быть завершен; и если прикладная программа снова переходит на выполнение в фоновый режим, новый цикл отсчета времени может быть запущен. Вышеупомянутая предварительно заданная продолжительность может быть предварительно задана в процессе разработки прикладной программы, а также может быть установлена пользователем. Например, предварительно заданная продолжительность может быть 5 секунд или 10 секунд и так далее.
[0056] В другом альтернативном варианте осуществления, как показано на фиг. 5, в дополнение к тому, что продолжительность берется в качестве условия для определения того, следует ли завершать процесс пользовательского интерфейса, также могут быть применены другие условия оценки. В частности, после этапа S11 способ может дополнительно включать в себя следующие этапы.
[0057] На этапе S18 определяется, достигает ли количество других процессов пользовательского интерфейса выполняемых в фоновом режиме предварительно заданного количества.
[0058] При этом, когда количество вышеупомянутых других процессов пользовательского интерфейса достигает предварительно заданного количества, выполняется этап S12. Если количество процессов пользовательского интерфейса, выполняемых на переднем плане и в фоновом режиме, не достигает предварительно заданного количества, которое может рассматриваться как достаточный объем доступного пространства ресурсов для обработки, выполняется этап S19. Вышеупомянутое предварительно заданное количество может быть предварительно задано в процессе разработки прикладной программы, а также может быть установлено пользователем. Например, предварительно заданное количество может быть 5 или 10 и так далее.
[0059] На этапе S19 процесс пользовательского интерфейса и процесс программной части упомянутой прикладной программы продолжают выполняться в фоновом режиме.
[0060] При этом, поскольку количество процессов пользовательского интерфейса, выполняемых на переднем плане и в фоновом режиме, не достигает предварительно заданного количества, процессы пользовательского интерфейса прикладной программы не могут быть завершены, а процессы пользовательского интерфейса и процессы программной части могут выполняться одновременно во время выполнения в фоновом режиме. Когда количество процессов пользовательского интерфейса достигает предварительно заданного количества, то для того, чтобы избежать чрезмерного использования ресурсов для обработки, процессы пользовательского интерфейса прикладной программы, которые переключаются на выполнение в фоновом режиме, впоследствии могут быть завершены.
[0061] В способе обработки для прикладной программы в соответствии с примерами вариантов осуществления настоящего описания изобретения, за счет раздельного выполнения процессов пользовательского интерфейса и процессов выполнения программ прикладной программы, если прикладная программа переключается на выполнение в фоновом режиме, процессы выполнения программ, необходимые для пользователя, могут продолжить выполняться, а процессы пользовательского интерфейса, которые пользователя не интересуют, могут быть завершены. Способ, по сравнению с решениями в смежных технологиях, где операции прикладной программы собираются в один процесс для выполнения и все программы прикладной программы продолжают выполняться в фоновом режиме, может сэкономить ресурсы центрального процессора для обработки и объем памяти, который занимается расчетами пользовательского интерфейса, если прикладная программа переходит в фоновой режим выполнения, таким образом, можно снизить потребление энергии электронного терминала для достижения экономии энергии при одновременном выполнении многих прикладных программ; и могут не только повысить эффективность использования ресурсов, но также и уменьшить нагрев электронного терминала, вследствие устранения избыточного расходования ресурсов центрального процессора в электронном терминале.
[0062] Фиг. 6 представляет структурную блок-схему устройства 200 обработки для прикладной программы в соответствии с примером варианта осуществления. Как показано на фиг. 6, устройство 200 обработки включает в себя: первый блок 201 переключения, блок 202 завершения и блок 203 выполнения.
[0063] Первый блок 201 переключения выполнен с возможностью переключения прикладной программы с выполнения на переднем плане на выполнение в фоновом режиме, в котором процессы упомянутой прикладной программы включают в себя процесс пользовательского интерфейса и процесс программной части.
[0064] Блок 202 завершения выполнен с возможностью завершения процесса пользовательского интерфейса упомянутой прикладной программы после того, как упомянутой первый блок 201 переключения переключит прикладную программу с выполнения на переднем плане на выполнение в фоновом режиме.
[0065] Блок выполнения 203 выполнен с возможностью продолжения процесса программной части упомянутой прикладной программы после того, как упомянутый первый блок переключения переключит выполнение прикладной программы с переднего плана на выполнение в фоновом режиме.
[0066] Дополнительно, как показано на фиг. 7, устройство 200 обработки может включать в себя второй блок 204 переключения и блок 205 возобновления.
[0067] Второй блок 204 переключения выполнен с возможностью переключения выполнения прикладной программы из фонового режима на выполнение на переднем плане.
[0068] Блок 205 возобновления выполнен с возможностью возобновления упомянутого процесса пользовательского интерфейса в соответствии с упомянутым процессом программной части после того, как упомянутой второй блок 204 переключения переключит выполнение прикладной программы из фонового режима на выполнение на переднем плане.
[0069] Дополнительно, как показано на фиг. 8, устройство 200 обработки может включать в себя:
[0070] блок 206 считывания, выполненный с возможностью считывания идентификатора процесса программной части и/или идентификатора процесса пользовательского интерфейса в файле конфигурации указанной прикладной программы при запуске упомянутой прикладной программы до того, как упомянутой первый блок 201 переключения переключит выполнение прикладной программы с переднего плана на выполнение в фоновом режиме,
[0071] блок 207 классификации, выполненный с возможностью классификации соответствующих подпрограмм, включенных в упомянутую прикладную программу, по классам процессов в соответствии с упомянутым идентификатором процесса программной части и/или идентификатором процесса пользовательского интерфейса, считанными упомянутым блоком 206 считывания, в котором вышеупомянутые классы процессов включают в себя класс пользовательского интерфейса и класс программной части; и
[0072] блок 208 формирования, выполненный с возможностью генерации упомянутого процесса пользовательского интерфейса и упомянутого процесса программной части в соответствии с упомянутыми классами процессов, классифицированных с помощью упомянутого блока 207 классификации, в котором подпрограммы упомянутого класса пользовательского интерфейса выполняются в упомянутом процессе пользовательского интерфейса, а подпрограммы упомянутого класса программной части выполняются в упомянутом процессе программной части.
[0073] Дополнительно, как показано на фиг. 9, в одном альтернативном варианте осуществления устройство 200 обработки может включать в себя:
[0074] первый блок 209 определения, выполненный с возможностью определения продолжительности времени, когда упомянутая прикладная программа выполняется в фоновом режиме после того, как упомянутой первый блок 201 переключения переключит прикладную программу с выполнения на переднем плане на выполнение в фоновом режиме, и
[0075] вышеупомянутый блок 202 завершения, дополнительно выполненный с возможностью завершения процесса пользовательского интерфейса упомянутой прикладной программы после того, как вышеупомянутая продолжительность времени, определенная первым блоком 209 определения, достигнет предварительно заданной продолжительности.
[0076] Как показано на фиг. 10, в другом альтернативном варианте осуществления устройство 200 обработки может дополнительно включать в себя:
[0077] второй блок 210 определения, выполненный с возможностью определения количества других процессов пользовательского интерфейса, выполняемых в фоновом режиме после того, как упомянутый первый 201 блок переключит упомянутую прикладную программы с выполнения на переднем плана на выполнение в фоновом режиме, и
[0078] упомянутый блок 202 завершения, дополнительно выполненный с возможностью завершения процессов пользовательского интерфейса упомянутой прикладной программы после того, как количество упомянутых процессов других пользовательских интерфейсов, определенных с помощью второго блока 210 определения, достигает предварительно заданного количества.
[0079] Что касается устройств в соответствии с вышеупомянутыми вариантами осуществления, конкретные способы, в которых соответствующие блоки выполняют операции, уже описаны в вариантах осуществления соответствующих способов, поэтому никакие подробности в данном описании не показаны.
[0080] В устройстве 200 обработки для прикладной программы в соответствии с примерами вариантов осуществления настоящего описания изобретения, за счет раздельного выполнения процессов пользовательского интерфейса и процессов программной части прикладной программы, когда прикладная программа переключается на выполнение в фоновом режиме, процессы программной части, необходимые для пользователя, могут продолжить выполняться, а процессы пользовательского интерфейса, которые пользователя не интересуют, могут быть завершены. Устройство, по сравнению с решениями в смежных технологиях, где операции прикладной программы собираются в один процесс для выполнения, и все программы прикладной программы продолжают выполнение в фоновом режиме, могут сэкономить ресурсы центрального процессора для обработки и объем памяти, занятый расчетами пользовательского интерфейса, когда прикладная программа переходит в фоновой режим выполнения, и таким образом, может снизить потребление энергии электронного терминала для достижения экономии энергии при одновременном выполнении многих прикладных программ, и могут не только повысить эффективность использования ресурсов, но также и уменьшить нагрев электронного терминала, вследствие устранения избыточного расходования ресурсов центрального процессора в электронном терминале.
[0081] Фиг. 11 представляет структурную блок-схему устройства 800 обработки для прикладной программы в соответствии с примером варианта осуществления. Например, устройством 800 может быть мобильный телефон, компьютер, терминал цифрового вещания, приемопередатчик информации, игровая консоль, планшетное оборудование, медицинское оборудование, оборудование для фитнеса, персональный цифровой помощник и так далее.
[0082] Как показано на фиг. 11, устройство 800 обработки может включать в себя один или более следующих блоков: блок 802 обработки, блок 804 памяти, блок 806 питания, мультимедийный блок 808, аудио блок 810, порт ввода-вывода 812, сенсорный блок 814 и блок 816 связи.
[0083] Блок 802 обработки, как правило, управляет всеми операциями устройства 800 обработки, такими как операции, связанные с отображением, вызовом, передачей данных, работой камеры и операцией записи. Блок 802 обработки может включать в себя один или более процессоров 820, выполненных с возможностью исполнения инструкций для выполнения всех или части этапов вышеупомянутых способов. Кроме того, блок 802 обработки может включать в себя один или более модулей, выполненных с возможностью обеспечения связи между блоком 802 обработки и другими компонентами. Например, блок 802 обработки может включать в себя мультимедийный модуль для обеспечения связи между мультимедийным блоком 808 и блоком 802 обработки.
[0084] Блок 804 памяти выполнен с возможностью хранение различных типов данных для поддержки операций устройства 800. Примеры таких данных включают в себя инструкции для любых прикладных программ или способов, работающих на устройстве 800, контактные данные, данные телефонной книги, сообщения, фотографии, видео и т.п. Блок 804 памяти может быть реализован с помощью различных типов энергозависимых или энергонезависимых запоминающих устройств или их сочетания, таких как статическое запоминающее устройство с произвольной выборкой (СЗУПВ), электрически-стираемое программируемое постоянное запоминающее устройство (ЭСППЗУ), стираемое программируемое постоянное запоминающее устройство (СППЗУ), программируемое постоянное запоминающее устройство (ППЗУ), постоянное запоминающее устройство (ПЗУ), магнитная память, флэш-память, магнитный диск или оптический диск.
[0085] Блок 806 питания может обеспечить подачу питания для различных модулей в устройстве 800. Блок 806 питания может включать в себя систему управления электропитанием, один или более источников питания и другие модули, связанные с генерированием, управлением и распределением электропитания для устройства 800.
[0086] Мультимедийный блок 808 может включать в себя экран для обеспечения выходного интерфейса между упомянутым устройством 800 и пользователем. В некоторых примерах вариантов осуществления экран может включать в себя жидкокристаллический дисплей (ЖКД) и сенсорную панель (СП). Если экран содержит сенсорную панель, то он может быть реализована как сенсорный экран для приема входных сигналов от пользователя. Сенсорная панель может включать в себя один или более датчиков касания для обнаружения касания, скольжения и жестов на сенсорной панели. Сенсорная панель может не только определять границу операций касания или скольжения, но также обнаруживать длину и усилие нажатия, связанные с операцией касания или скольжения. В некоторых примерах вариантов осуществления блок 808 мультимедиа может включать в себя камеру переднего вида и/или камеру заднего вида. Если устройство 800 находится в режиме функционирования, таком как режим камеры или режим видео, камера переднего вида и/или камера заднего вида может/могут получить внешние мультимедийные данные. Каждая из камер переднего вида и заднего вида может иметь фиксированную систему оптических линз или может иметь фокусное расстояние и способность оптического увеличения.
[0087] Аудио блок 810 выполнен с возможностью вывода и/или ввода звуковых сигналов. Например, аудио блок 810 может включать в себя микрофон, и когда устройство 800 находится в режиме функционирования, например, в режиме вызова, режиме записи или режиме распознавания голоса, микрофон может быть выполнен с возможностью приема внешних звуковых сигналов. Полученные звуковые сигналы могут дополнительно сохраняться в блоке 804 памяти или могут быть отправлены через блок 816 связи. В некоторых примерах вариантов осуществления аудио блок 810 может дополнительно включать в себя динамик для вывода звуковых сигналов.
[0088] Порт 812 ввода-вывода обеспечивает интерфейс между блоком 802 обработки и модулями внешних интерфейсов. Упомянутыми модулями внешних интерфейсов могут быть клавиатура, колесо управления мыши или т.п. Эти кнопки могут включать в себя, но не ограничиваются, кнопку главной страницы, кнопку громкости, кнопку запуска и кнопку блокировки.
[0089] Блок 814 датчиков может включать в себя один или несколько датчиков, выполненных с возможностью обеспечения соответствующих аспектов оценки состояния для устройства 800. Например, блок 814 датчиков может определять статус включен/выключен устройства 800 и относительное положение между блоками, например, упомянутыми блоками могут быть экран и небольшая клавиатура устройства 800. Блок 814 датчиков может также определять изменение положения устройства 800 или блока устройства 800, есть ли контакт между пользователем и устройством 800, ориентацию или ускорение/замедление устройства 800 и изменение температуры устройства 800. Блок 814 датчиков может включать в себя бесконтактный датчик приближения, выполненный с возможностью обнаружения наличия находящегося поблизости объекта без физического контакта. Блок 814 датчиков может дополнительно включать в себя оптические датчики, такие как датчики изображений КМОП или ПЗС для использования в приложении изображении. В некоторых примерах вариантах осуществления блок 814 датчиков может дополнительно включать в себя датчик ускорения, гироскопический датчик, магнитный датчик, датчик давления или датчик температуры.
[0090] Блок 816 связи выполнен с возможностью обеспечения проводной или беспроводной связи между устройством 800 и другими устройствами. Устройство 800 может осуществлять доступ к беспроводной сети на основе стандарта связи, такого как Wi-Fi, технологии 2G или 3G, или их комбинации. В одном примере варианта осуществления блок 816 связи может принимать широковещательные сигналы или данные, связанные с широковещанием из внешней широковещательной системы управления через широковещательные каналы. В одном примере варианта осуществления вышеупомянутый блок 816 связи может дополнительно включать в себя модуль радиосвязи на коротком расстоянии ((РКР), выполненный с возможностью обеспечения связи ближнего радиуса действия. Например, модуль РКР может быть реализован на основе технологии радиочастотной идентификации (РЧИД), технологии передачи данных в инфракрасном диапазоне (ПДИК), сверхширокополосной (СШП) технологии или технологии Bluetooth (ВТ) или других технологий.
[0091] В некоторых примерах вариантов осуществления устройство 800 может быть реализовано с помощью одной или нескольких специализированных интегральных схем (СИС), цифровых сигнальных процессоров (ЦСП), устройств с цифровым сигнальным процессором (УЦСП), программируемых логических устройств (ПЛУ), матриц программируемых логических вентилей (МПЛВ), контроллеров, микроконтроллеров, микропроцессоров или других электронных компонентов, которые выполнены с возможностью осуществления вышеупомянутых способов.
[0092] Примеры вариантов осуществления также предусматривают долговременную машиночитаемую среду хранения, включающую в себя инструкции, такие как включенные в блок 804 памяти инструкции. Эти инструкции могут обрабатываться процессором 820 устройства 800 для выполнения упомянуты выше способов. Например, долговременной машиночитаемой средой хранения может быть ПЗУ, запоминающее устройство с произвольной выборкой (ЗУПВ), постоянное запоминающее устройство - компакт-диск, магнитная лента, гибкий диск, оптическое устройство хранения данных и сходные
[0093] Фиг. 12 представляет структурную блок-схему устройства 1900 обработки для прикладной программы в соответствии со вторым примером варианта осуществления. Например, устройство 1900 может быть обеспечено в качестве сервера. Как показано на фиг. 12, устройство 1900 может включать в себя блок 1922 обработки, который может дополнительно включать в себя один или более процессоров; и ресурсы памяти, представленные в запоминающем устройстве 1932, выполненном с возможностью хранения инструкций, которые могут быть выполнены с помощью блока 1922 обработки, например прикладную программу. Прикладная программа, хранящаяся в запоминающем устройстве 1932, может включать в себя один или несколько модулей, каждый из которых соответствует группе команд. Кроме того, блок 1922 обработки выполнен с возможностью исполнения команд, направленных на реализацию вышеупомянутых способов обработки для прикладных программ.
[0094] Устройство 1900 может дополнительно включать в себя блок 1926 питания, выполненный с возможностью реализации управления электропитанием устройства 1900; проводной или беспроводной сетевой порт 1950, выполненный с возможностью подсоединения устройства 1900 к сети; и порт 1958 ввода-вывода. Устройство 1900 может управлять операционной системой, находящейся и хранящейся в блоке 1932 памяти, такой как Windows, ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM и т.п.
[0095] После рассмотрения описания и практики использования настоящего изобретения, специалистам в данной области техники несложно будет получить другие варианты осуществления настоящего описания изобретения. Настоящее изобретение охватывает любые изменения, цели или специализации, которые соответствуют основным принципам настоящего изобретения, и дополнительно включают в себя известные знания или стандартные технические средства, которые не раскрываются в настоящем описании изобретения. Описание и варианты осуществления рассматриваются только в качестве примера. Фактический объем и сущность настоящего изобретения определяются прилагаемой формулой изобретения.
[0096] Специалистам в данной области техники должно быть понятно, что настоящее раскрытие изобретение не ограничивается определенными структурами, описанными выше и приведенными на сопроводительных чертежах, и различные модификации и изменения могут быть выполнены в рамках настоящего раскрытия изобретения. Объем настоящего изобретения определяется только прилагаемой формулой изобретения.