Способ и устройство для запуска прикладной программы
Иллюстрации
Показать всеИзобретение относится к средствам установки прикладной программы в устройство. Технический результат заключается в расширении арсенала технических средств запуска прикладной программы. Способ выполнения прикладной программы в мобильном терминале включает: получение сигнала запуска, настроенного на указание запуска второй прикладной программы, в запущенной первой прикладной программе; загрузку и анализ первой прикладной программой пакета установки второй прикладной программы, для получения программного компонента второй прикладной программы; запуск программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой без установки второй прикладной программы. 3 н. и 16 з.п. ф-лы, 7 ил.
Реферат
ПЕРЕКРЕСТНАЯ ССЫЛКА НА СООТВЕТСТВУЮЩИЕ ЗАЯВКИ
[0001] Настоящая заявка основана на и заявляет о приоритете по китайской заявке на патент №201410470307.8, поданной 16 сентября 2014 г., полное содержание которой включено сюда посредством ссылки.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее изобретение в целом относится к области мобильных терминалов, и, в частности, к способу запуска прикладной программы и к устройству для запуска прикладной программы.
ВВОДНАЯ ИНФОРМАЦИЯ
[0003] Операционная система Android является интеллектуальной операционной системой, которая может обеспечить различные функции, путем установки различных прикладных программ (приложений).
[0004] В предшествующем уровне техники разработанная и завершенная прикладная программа упаковывается в пакет установки в формате с расширением «арк»акет установки публикуется для пользователя. Когда пользователь намеревается использовать прикладную программу, он устанавливает пакет установки в мобильном терминале с операционной системой Android, а затем запускает приложение. Но для некоторых пользователей (например, для пожилых людей) установка прикладной программы является затруднительной. Техническим результатом является упрощение технологии установки прикладной программы, которое реализуется благодаря заявляемому способу запуска прикладной программы и устройству для запуска прикладной программы.
КРАТКОЕ ИЗЛОЖЕНИЕ
[0005] Чтобы решить проблему, когда прикладную программу можно использовать только если установлен соответствующий пакет установки, настоящее изобретение предлагает способ запуска прикладной программы и устройство для запуска прикладной программы. Техническое решение представляется следующим.
[0006] Согласно первому аспекту вариантов осуществления настоящего изобретения предусмотрен способ запуска прикладной программы, включающий: получение сигнала запуска, настроенного на указание запуска второй прикладной программы, в запущенной первой прикладной программе;
загрузку и анализ первой прикладной программой пакета установки второй прикладной программы, для получения программного компонента второй прикладной программы;
запуск программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой.
[0007] В качестве альтернативы, запуск программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой, включает:
определение первой прикладной программой программного компонента запускаемой второй прикладной программы;
запуск первой прикладной программой тестового программного компонента, соответствующего программному компоненту;
запуск программного компонента в контексте выполнения, представленном тестовым программным компонентом в первой прикладной программе.
[0008] В качестве альтернативы, запуск программного компонента в контексте, представленном тестовым программным компонентом в первой прикладной программе, включает:
вызов программного компонента тестовым программным компонентом в первой прикладной программе посредством механизма отражения;
запуск вызванного программного компонента в контексте выполнения, представленном тестовым программным компонентом в первой прикладной программе.
[0009] В качестве альтернативы, загрузка и анализ первой прикладной программой пакета установки второй прикладной программы, для получения программного компонента второй прикладной программы, включают:
загрузку и анализ первой прикладной программой пакета установки второй прикладной программы, для получения конфигурационного файла второй прикладной программы;
получение первой прикладной программой, по меньшей мере, одного программного компонента во второй прикладной программе, в соответствии с конфигурационным файлом, в котором программный компонент включает, по меньшей мере, один из следующих компонентов: активный компонент, компонент службы, компонент поставщика содержания и компонент широковещательного приемника.
[0010] Альтернативно, способ дополнительно включает: регистрация первой прикладной программой типа Intent-сообщения (сообщение «намерения» [Intent] в ОС Android) в операционной системе, в соответствии с конфигурационным файлом, в котором Intent-сообщение контролируется каждым программным компонентом во второй прикладной программе.
[0011] В качестве альтернативы, определение первой прикладной программой программного компонента запускаемой второй прикладной программы включает: во время запуска второй прикладной программы, получение первой прикладной программой компонента выполнения по умолчанию, переданного обратно второй прикладной программой, и определение компонента выполнения по умолчанию в качестве программного компонента для запуска.
[0012] В качестве альтернативы, определение первой прикладной программой программного компонента запускаемой второй прикладной программы включает:
получение первой прикладной программой Intent-сообщения, передаваемого операционной системой, причем Intent-сообщение согласуется с типом Intent-сообщения, зарегистрированным в операционной системе;
определение программного компонента, настроенного на отслеживание Intent-сообщения, в качестве программного компонента для запуска, если во второй прикладной программе не был запущен программный компонент, настроенный на отслеживание Intent-сообщения.
[0013] Альтернативно, способ дополнительно включает:
получение первой прикладной программой Intent-сообщения, переданного операционной системой, причем Intent-сообщение согласуется с типом Intent-сообщения, зарегистрированным в операционной системе, и передача Intent-сообщения в программный компонент для обработки, если во второй прикладной программе запущен программный компонент, настроенный на отслеживание Intent-сообщения;
и/или
получение первой прикладной программой Intent-сообщения для отправки одним программным компонентом во второй прикладной программе и передача Intent-сообщения в операционную систему.
[0014] Альтернативно, способ дополнительно включает:
выполнение первой прикладной программы операции управления для пакетов установки разных версий второй прикладной программы, причем операция управления содержит, по меньшей мере, одну из операций: операция загрузки, операция обновления и операция удаления.
[0015] Согласно второму аспекту вариантов осуществления настоящего изобретения предусмотрено устройство для выполнения прикладной программы, включающее:
модуль получения сигнала, настроенный на получение сигнала запуска, указывающего на выполнение второй прикладной программы в запущенной первой прикладной программе;
модуль анализа пакет установки, настроенный на загрузку и анализ первой прикладной программой пакета установки второй прикладной программы, для получения программного компонента второй прикладной программы;
модуль выполнения программы, настроенный на выполнение программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой.
[0016] В качестве альтернативы, модуль запуска программы включает в себя:
субмодуль определения компонентов, субмодуль запуска тестовой среды и субмодуль выполнения компонентов;
субмодуль определения компонентов, настроенный на определение первой прикладной программой программного компонента запускаемой второй прикладной программы;
субмодуль запуска тестовой среды, настроенный на запуск первой прикладной программой тестового программного компонента, соответствующего программному компоненту;
субмодуль выполнения компонентов, настроенный на запуск программного компонента в контексте выполнения, представленном тестовым программным компонентом в первой прикладной программе.
[0017] В качестве альтернативы, субмодуль выполнения компонентов включает в себя: субмодуль вызова и субмодуль выполнения;
субмодуль вызова настроен на вызов программного компонента тестовым программным компонентом в первой прикладной программе посредством механизма отражения;
субмодуль выполнения настроен на выполнение вызванного программного компонента в контексте выполнения, представленном тестовым программным компонентом в первой прикладной программе.
[0018] В качестве альтернативы, модуль анализа пакета установки включает в себя: субмодуль анализа файлов и субмодуль анализа компонентов;
субмодуль анализа файлов настроен на загрузку и анализ первой прикладной программой пакета установки второй прикладной программы, для получения конфигурационного файла второй прикладной программы;
субмодуль анализа компонентов настроен на получение первой прикладной программой, по меньшей мере, одного программного компонента во второй прикладной программе, в соответствии с конфигурационным файлом, причем программный компонент включает, по меньшей мере, один из следующих компонентов: активный компонент, компонент службы, компонент поставщика содержания и компонент широковещательного приемника.
[0019] Альтернативно, устройство дополнительно включает:
модуль регистрации сообщений, настроенный на регистрацию первой прикладной программой типа Intent-сообщения в операционной системе, в соответствии с конфигурационным файлом, в котором Intent-сообщение контролируется каждым программным компонентом во второй прикладной программе.
[0020] В качестве альтернативы, субмодуль определения компонентов включает в себя: первый определяющий субмодуль;
первый определяющий субмодуль настроен на получение первой прикладной программой компонента выполнения по умолчанию, переданного обратно второй прикладной программой, и определение компонента выполнения по умолчанию в качестве программного компонента для запуска, во время запуска второй прикладной программы.
[0021] В качестве альтернативы, субмодуль определения компонентов включает в себя: субмодуль приема сообщений и второй определяющий субмодуль;
субмодуль приема сообщений настроен на получение первой прикладной программой Intent-сообщения, передаваемого операционной системой, причем Intent-сообщение согласуется с типом зарегистрированного Intent-сообщения;
второй определяющий субмодуль настроен на определение программного компонента, настроенного на отслеживание Intent-сообщения, в качестве программного компонента для запуска, если во второй прикладной программе не был запущен программный компонент, настроенный на отслеживание Intent-сообщения.
[0022] Альтернативно, устройство дополнительно включает:
первый модуль передачи, настроенный на получение первой прикладной программой Intent-сообщения, переданного операционной системой, причем Intent-сообщение согласуется с типом Intent-сообщения, зарегистрированным в операционной системе, и передачу Intent-сообщения в программный компонент для обработки, если во второй прикладной программе запущен программный компонент, настроенный на отслеживание Intent-сообщения;
и/или
второй модуль передачи, настроенный на получение первой прикладной программой Intent-сообщения для отправки одним программным компонентом во второй прикладной программе и передачу Intent-сообщения в операционную систему.
[0023] Альтернативно, устройство дополнительно включает:
модуль управления пакетом установки, настроенный на выполнение первой прикладной программы операции управления для пакетов установки разных версий второй прикладной программы, причем операция управления содержит, по меньшей мере, одну из операций: операция загрузки, операция обновления и операция удаления.
[0024] Согласно третьему аспекту вариантов осуществления настоящего изобретения предусмотрено устройство для выполнения прикладной программы, включающее:
процессор;
память, сконфигурированную для хранения инструкции, исполняемой процессором; в котором процессор сконфигурирован на:
получение сигнала запуска в первой запущенной прикладной программе, с указанием запуска второй прикладной программы;
загрузку и анализ первой прикладной программой пакета установки второй прикладной программы, для получения программного компонента второй прикладной программы;
запуск программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой.
[0025] В соответствии с вариантами осуществления настоящего изобретения техническое решение приводит к следующим результатам: путем загрузки и анализа пакета установки второй прикладной программы в запущенной первой прикладной программе происходит получение программного компонента второй прикладной программы, и программный компонент второй прикладной программы выполняется в среде выполнения, представленной первой прикладной программой, чем решается проблема того, что прикладная программа может быть использована только если установлен соответствующий пакет установки, и достигается эффект того, что вторая прикладная программа может работать в среде выполнения, представленной первой прикладной программой, без установки второй прикладной программы.
[0026] Следует понимать, что предшествующее общее описание и последующее подробное описание являются только иллюстративными и пояснительными и не ограничивают изобретения, как заявлено.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0001] Прилагаемые чертежи, включенные в документ и составляющие часть данного описания, иллюстрируют варианты осуществления в соответствии с изобретением и вместе с описанием служат для объяснения принципов изобретения.
[0002] Фиг. 1 представляет собой блок-схему способа выполнения прикладной программы в соответствии с примерным вариантом осуществления;
[0003] Фиг. 2 представляет собой принципиальную схему способа выполнения прикладной программы в соответствии с другим примерным вариантом осуществления;
[0004] Фиг. 3 представляет собой блок-схему способа выполнения прикладной программы в соответствии с другим примерным вариантом осуществления;
[0005] Фиг. 4 представляет собой блок-схему подэтапов способа выполнения прикладной программы в соответствии с другим примерным вариантом осуществления;
[0006] Фиг. 5 представляет собой структурную схему устройства для выполнения прикладной программы в соответствии с примерным вариантом осуществления;
[0007] Фиг. 6 представляет собой структурную схему устройства выполнения прикладной программы в соответствии с другим примерным вариантом осуществления;
[0008] ФИГ. 7 представляет собой структурную схему устройства в соответствии с примерным вариантом осуществления.
ПОДРОБНОЕ ОПИСАНИЕ
[0009] Ниже будет приведено подробное описание примерных вариантов осуществления, примеры которых проиллюстрированы на прилагаемых чертежах. Следующее описание ссылается на прилагаемые чертежи, на которых одинаковые номера на разных чертежах представляют собой одинаковые или аналогичные элементы, если не указано иное. Реализации, изложенные в последующем описании примерных вариантов осуществления, не являются всеми реализациями, соответствующими изобретению. Они являются просто примерами устройств и способов, которые соответствуют аспектам, связанным с изобретением, как изложено в прилагаемой формуле изобретения.
[0010] Сначала описываются термины, используемые в настоящем изобретении.
[0011] Android представляет собой операционную систему на базе Linux, со свободным и открытым исходным кодом, которая производится компанией Google в США и в основном используется в мобильных устройствах. Мобильное устройство может быть представлено телефоном, планшетным ПК, электронной книгой, плеером Moving Picture Experts Group Audio Layer III (МР3), плеером Moving Picture Experts Group Audio Layer IV (MP4), ноутбуком и т.д.
[0012] Пакет установки прикладной программы представляет собой файл, сконфигурированный на установку прикладной программы в операционной системе и, как правило, представляет собой набор файлов, которые могут быть распакованы самостоятельно. В пакет входят все файлы, необходимые для запуска прикладной программы. В операционной системе Android пакет установки прикладной программы, как правило, представляет собой файл, упакованный в формате «apk».
[0013] Прикладная программа может именоваться приложением. В операционной системе Android одна прикладная программа включает в себя, по меньшей мере, один программный компонент. Программный компонент делится на четыре группы: активный компонент, компонент службы, компонент поставщика содержания и компонент широковещательного приемника.
[0014] Активный компонент является компонентом, настроенным на взаимодействие с пользователем в прикладной программе Android и обеспечивающим визуальный интерфейс пользователя для прикладной программы Android. Одна прикладная программа Android может включать в себя от нуля до нескольких компонентов.
[0015] Компонент службы является компонентом, работающим в фоновом режиме и не предоставляющим визуальный интерфейс в прикладной программе Android. Одна прикладная программа Android может включать в себя от нуля до нескольких компонентов службы.
[0016] Компонент поставщика содержания является компонентом, настроенным на предоставление данных (например, мелодия звонка, обои, телефонная книга и т.д.) для других приложений или других компонентов в текущем приложении в прикладной программе Android. Компонент поставщика содержания может паковать данные в различных форматах и предоставлять данные в стандартном формате для использования другими приложениями или компонентами.
[0017] Компонент широковещательного приемника является компонентом, настроенным на получение и отправку ответов на сообщения, передаваемые операционной системой, который может получить требуемое сообщение (или заранее определенное сообщение конкретного типа), а затем обработать или передать сообщение другим компонентам в текущем приложении.
[0018] Intent-сообщение является сообщением, настроенным на реализацию связи между программными компонентами, причем программные компоненты могут быть различными компонентами в том же приложении или различными компонентами в различных приложениях. Intent-сообщение предназначено для описания действия операции, данных, связанных с действием, и прилагаемых данных в прикладной программе. Операционная система Android настроена на поиск соответствующего программного компонента согласно Intent-сообщению и на передачу Intent-сообщения в вызываемый программный компонент, для выполнения вызова программного компонента. Intent-сообщение разделяется на две группы: явные Intent-сообщения и неявные Intent-сообщения.
[0019] Явное Intent-сообщение является Intent-сообщением, которое безусловно указывает на имя объектного программного компонента. Например, программный компонент А должен отправить Intent-сообщение «вызов 18688888888»; если программный компонент А ожидает ответа на Intent-сообщение от программного компонента В, программный компонент А определяет программный компонент В в качестве объектного программного компонента в Intent-сообщении. После получения Intent-сообщения операционная система Android передает Intent-сообщение в программный компонент В для обработки.
[0020] Неявное Intent-сообщение является Intent-сообщением, которое не указывает безусловно на имя объектного программного компонента. Например, программный компонент А должен отправить Intent-сообщение «вызов 18688888888»; если программный компонент А не знает, какой программный компонент должен ответить на Intent-сообщение, программный компонент А не определяет объектный программный компонент в Intent-сообщении. После получения Intent-сообщения операционная система Android ищет предварительно зарегистрированный тип Intent-сообщения, отслеживаемый каждым программным компонентом. Если будет установлено, что программный компонент В отслеживает Intent-сообщение о телефонном разговоре, операционная система Android передает Intent-сообщение в программный компонент В для обработки. Или операционная система Android транслирует Intent-сообщение, и компонент широковещательного приемника, заинтересованный в Intent-сообщении о телефонном звонке, принимает и обрабатывает Intent-сообщение.
[0021] Фиг. 1 является блок-схемой, показывающей способ выполнения прикладной программы, в соответствии с примерным вариантом осуществления, и вариант осуществления описан на примере применения способа для выполнения прикладной программы в мобильном терминале. Способ выполнения прикладной программы включает в себя следующие этапы
[0022] На этапе S102 происходит получение сигнала запуска, настроенного на указание запуска второй прикладной программы в запущенной первой прикладной программе.
[0023] На этапе S104 происходит загрузка и анализ пакета установки второй прикладной программы первой прикладной программой, для получения программного компонента второй прикладной программы.
[0024] На этапе S106 происходит выполнение программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой.
[0025] В заключение, посредством способа запуска прикладной программы, согласно варианту осуществления, путем загрузки и анализа пакета установки второй прикладной программы в запущенной первой прикладной программе происходит получение программного компонента второй прикладной программы, и программный компонент второй прикладной программы выполняется в среде выполнения, представленной первой прикладной программой, чем решается проблема того, что прикладная программа может быть использована, только если установлен соответствующий пакет установки, и достигается эффект того, что вторая прикладная программа может работать в среде выполнения, представленной первой прикладной программой, без установки второй прикладной программы.
[0026] Для лучшего понимания см. Фиг. 2, которая представляет собой принципиальную схему способа выполнения прикладной программы, в соответствии с примерным вариантом осуществления. Первая прикладная программа 220 выполняется в мобильном терминале и предназначена для загрузки и анализа пакета установки второй прикладной программы 240, для получения программного компонента второй прикладной программы 240. Вторая прикладная программа 240 включает в себя один или несколько программных компонентов и каждый программный компонент может быть любым из следующих компонентов: активный компонент 242, компонент службы 244, компонент поставщика содержания 246 и компонент широковещательного приемника 248. Затем первая прикладная программа 220 обеспечивает тестовую среду для второй прикладной программы 240. Тестовая среда предоставляет контекстную среду, необходимую для выполнения программного компонента второй прикладной программы 240, и вторая прикладная программа 240 может быть выполнена в тестовой среде.
[0027] В процессе выполнения второй прикладной программы 240 первая прикладная программа 220 может выполнить программный компонент во второй прикладной программе 240 в соответствии с логикой выполнения второй прикладной программы 240. Например, при запуске второй прикладной программы 240 первая прикладная программа 220 выполняет компонент выполнения по умолчанию второй прикладной программы 240, в котором компонент выполнения по умолчанию, как правило, представляет собой активный компонент, соответствующий главному интерфейсу второй прикладной программы 240. Кроме того, например, если нажата определенная кнопка в пользовательском интерактивном интерфейсе второй прикладной программы 240, первая прикладная программа 220 выполняет другой активный компонент второй прикладной программы 240, чтобы отобразить следующий пользовательский интерактивный интерфейс второй прикладной программы 240.
[0028] Кроме того, операционная система Android или другие прикладные программы (не показаны) может отправить Intent-сообщение, отслеживаемое второй прикладной программой 240, в первую прикладную программу 220. После получения Intent-сообщения первая прикладная программа 220 выполняет соответствующий программный компонент во второй прикладной программе 240 и передает Intent-сообщение соответствующему программному компоненту. Операционная система Android или другие прикладные программы также могут вызвать компонент поставщика содержания 246 во второй прикладной программе 240 с помощью первой прикладной программы 220, то есть операционная система Android или другие прикладные программы могут использовать данные, предоставленные компонентом поставщика содержания 246 во второй прикладной программе 240.
[0029] Вторая прикладная программа 240 может отправить Intent-сообщение операционной системе Android или другим прикладным программам посредством первой прикладной программы 220. После получения Intent-сообщения первая прикладная программа 220 передает Intent-сообщение для операционной системы Android, чтобы операционная система Android могла обработать Intent-сообщение непосредственно, или передать Intent-сообщение другим прикладным программами для обработки. Вторая прикладная программа 240 также может вызывать компоненты поставщика содержания в других прикладных программах посредством первой прикладной программы 220, т.е. вторая прикладная программа 240 также может использовать данные, предоставленные компонентами поставщика содержания в других прикладных программах.
[0030] Следует добавить, что вторая прикладная программа 240 не обязательно должна иметь особые отношения с первой прикладной программой 220 и внедрение специального протокола и интерфейса между второй прикладной программой 240 и первой прикладной программой 220 не требуется до тех пор, пока вторая прикладная программа 240 согласуется со стандартом прикладных программ операционной системы Android, а пакет установки второй прикладной программы 240 согласуется со стандартом пакетов установки операционной системы Android.
[0031] Фиг. 3 представляет собой блок-схему способа выполнения прикладной программы в соответствии с другим примерным вариантом осуществления. Вариант осуществления описан с помощью примера применения способа выполнения прикладной программы в мобильном терминале, в котором мобильный терминал может быть мобильным терминалом с запущенной операционной системой Android. Способ выполнения прикладной программы включает в себя следующие этапы.
[0032] На этапе S301 происходит получение сигнала запуска, настроенного на указание запуска второй прикладной программы в запущенной первой прикладной программе.
[0033] Первая прикладная программа является прикладной программой, установленной и запущенной на мобильном терминале. Первая прикладная программа может быть сконфигурирована в качестве комплексной прикладной программы, игровой прикладной программы, управляющей прикладной программой, системной прикладной программой и т.д.
[0034] Первая прикладная программа может получить доступ к пакету установки второй прикладной программы в мобильном терминале. Вторую прикладную программу не требуется устанавливать в мобильном терминале, т.е. вторая прикладная программа может быть запущена в среде выполнения, представленной первой прикладной программой.
[0035] Мобильный терминал получает сигнала запуска, настроенный на указание запуска второй прикладной программы в запущенной первой прикладной программе. Сигналом запуска может быть сигнал по щелчку на сенсорном экране. Например, в пользовательском интерфейсе первой прикладной программы может отображаться значок второй прикладной программы. Если происходит щелчок по значку второй прикладной программы, принимаемый на сенсорном экране, мобильный терминал принимает сигнал запуска, настроенный на указание запуска второй прикладной программы.
[0036] На этапе S302 происходит загрузка и анализ пакета установки второй прикладной программы первой прикладной программой, для получения конфигурационного файла второй прикладной программы.
[0037] Конфигурационный файл представляет собой файл описания в пакете установки каждой второй прикладной программы и, как правило, это файл AndroidManifest.xml в корневом каталоге пакета установки второй прикладной программы. Конфигурационный файл может предоставить соответствующую информацию о приложении во второй прикладной программе.
[0038] Мобильный терминал загружает пакет установки второй прикладной программы с помощью первой прикладной программы, анализирует пакет установки второй прикладной программы и получает конфигурационный файл второй прикладной программы из проанализированных файлов.
[0039] На этапе S303 происходит получение первой прикладной программой, по меньшей мере, одного программного компонента второй прикладной программы, в соответствии с конфигурационным файлом.
[0040] Конфигурационный файл описывает все программные компоненты, включенные во вторую прикладную программу. Программный компонент содержит, по меньшей мере, один из следующих компонентов: активный компонент, компонент службы, компонент поставщика содержания и компонент широковещательного приемника.
[0041] Мобильный терминал анализирует конфигурационный файл с помощью первой прикладной программы, чтобы получить, по меньшей мере, один программный компонент второй прикладной программы.
[0042] На этапе S304 тип Intent-сообщения регистрируется первой прикладной программой в операционной системе в соответствии с конфигурационным файлом, причем Intent-сообщение отслеживается каждым программным компонентом во второй прикладной программе.
[0043] Конфигурационный файл также может описывать тип Intent-сообщения, отслеживаемый каждым программным компонентом во второй прикладной программе. Например, активный компонент А отслеживает Intent-сообщение типа А, а компонент службы В отслеживает Intent-сообщение типа В.
[0044] Мобильный терминал регистрирует тип Intent-сообщения с помощью первой прикладной программы в операционной системе в соответствии с конфигурационным файлом, причем Intent-сообщение отслеживается каждым программным компонентом во второй прикладной программе.
[0045] Следует отметить, что когда первая прикладная программа регистрирует тип Intent-сообщения, отслеживаемый программным компонентом во второй прикладной программе, принимающей стороной, зарегистрированной в операционной системе Android, является программный компонент в первой прикладной программе вместо программного компонента во второй прикладной программе. Например, если активный компонент А во второй прикладной программе отслеживает Intent-сообщение типа А, первая прикладная программа регистрирует Intent-сообщение типа А в операционной системе Android, но принимающей стороной зарегистрированного Intent-сообщения типа А является программный компонент в первой прикладной программе.
[0046] На этапе S305 происходит выполнение программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой.
[0047] Мобильный терминал осуществляет запуск программного компонента второй прикладной программы в среде выполнения, представленной первой прикладной программой. Не все программные компоненты во второй прикладной программе должны быть запущены одновременно, однако, необходимо запустить часть всех программных компонентов в соответствии с требованиями. Этап S305 включает в себя следующие подэтапы, как показано на Фиг. 4.
[0048] На этапе S305a происходит определение первой прикладной программой программного компонента запускаемой второй прикладной программы.
[0049] На этапе S305b посредством первой прикладной программы мобильный терминал запускает тестовый программный компонент, соответствующий программному компоненту.
[0050] На этапе S305c мобильный терминал запускает программный компонент в контексте выполнения, представленном тестовым программным компонентом в первой прикладной программе.
[0051] Для этапа S305a есть два следующих условия.
[0052] Первое условие: во время запуска второй прикладной программы посредством первой прикладной программы мобильный терминал получает компонент выполнения по умолчанию, переданный обратно второй прикладной программой, и определяет компонент выполнения по умолчанию в качестве программного компонента для запуска.
[0053] Компонент выполнения по умолчанию, как правило, представляет собой активный компонент, соответствующий основному интерфейсу второй прикладной программы. При запуске второй прикладной программы она передает запрос в первую прикладную программу в соответствии с собственной логикой выполнения, причем запрос указывает компонент выполнения по умолчанию, а затем первая прикладная программа определяет компонент выполнения по умолчанию в качестве программного компонента второй прикладной программы для выполнения в данный момент.
[0054] Второе условие: мобильный терминал принимает Intent-сообщение, переданное из операционной системы первой прикладной программой, причем Intent-сообщение согласуется с зарегистрированным типом Intent-сообщения. Если программный компонент, настроенный на отслеживание Intent-сообщения во второй прикладной программы не запущен, то программный компонент, настроенный на отслеживание Intent-сообщения, определяется в качестве программного компонента для выполнения.
[0055] В процессе выполнения второй прикладной программы существует возможность для программного компонента во второй прикладной программе, системных прикладных программ в операционной системе Android и программным компонентам в других прикладных программах для отправки Intent-сообщения в операционную систему Android. Если Intent-сообщения является Intent-сообщением, отслеживаемым программным компонентом во второй прикладной программе, т.е. Intent-сообщение согласуется с зарегистрированным типом Intent-сообщения на этапе S304, то операционная система Android посылает Intent-сообщение в первую прикладную программу. В этот момент, если программный компонент, настроенный на отслеживание Intent-сообщения во второй прикладной программе не запущен, то программный компонент, настроенный на отслеживание Intent-сообщения во второй прикладной программе, определяется в качестве программного компонента для выполнения.
[0056] На этапе S305b, если это необходимо для выполнения какого-либо программного компонента во второй прикладной программе, мобильный терминал сначала запускает соответствующий тестовый программный компонент в первой прикладной программе, причем тестовый программный компонент настроен на предоставление контекста выполнения, необходимого для программного компонента второй прикладной программы.
[0057] Например, если необходимо выполнить активный компонент А во второй прикладной программе, запускается тестовый активный компонент А в первой прикладной программе. Кроме того, например, если необходимо выполнить компонент службы В во второй прикладной программе, запускается тестовый компонент службы В в первой прикладной программе. Таким же образом, если необходимо выполнить компонент широковещательного приемника С во второй прикладной программе, запускается тестовый компонент широковещательного приемника С в первой прикладной программе.
[0058] Другими словами, когда выполняется программный компонент во второй прикладной программе, присутствует соответствующий тестовый программный компонент в первой прикладной программе.
[0059] Этап S305c включает следующие подэтапы.
[0060] 1. Мобильный терминал вызывает программный компонент во второй прикладной программе с помощью тестового программного компонента в первой прикладной программе посредством механизма отражения.
[0061] Механизм отражения является механизмом в области программирования Java. Посредством механизма отражения может быть вызван указанный класс программных компонентов во второй прикладной программе без понимания программного компонента второй прикладной программы первой прикладной программой.
[0062] 2. Мобильный терминал выполняет вызванный программный компонент в контексте выполнения, представленном тестовым программным компонентом в первой прикладной программе.
[0063] На этапе S306 происходит получение Intent-сообщения и его отправка во вторую прикладную программу первой прикладной программой.
[0064] Мобильный терминал принимает и/или передает Intent-сообщение для второй прикладной программы с помощью первой прикладной программы.
[0065] Процесс получения: мобильный терминал принимает Intent-сообщение, переданное из операцио