СПОСОБ И УСТРОЙСТВО, ПРЕДНАЗНАЧЕННОЕ ДЛЯ ИНИЦИИРОВАННОГО СЕТЬЮ УДАЛЕНИЯ ПРИКЛАДНЫХ ПРОГРАММ ЧЕРЕЗ БЕСПРОВОДНУЮ СЕТЬ
METHOD AND DEVICE DESIGNED FOR NETWORK-INITIATED DELETION OF APPLIED PROGRAMMES VIA WIRELESS NETWORK

Область изобретения
Это изобретение относится к дистанционному сопровождению и удалению программ с использованием беспроводной сети. Более конкретно, изобретение имеет отношение к инициированному сетью “аннулированию” или удалению намеченных прикладных программ в дистанционных модулях, таких как беспроводные телефоны.
Описание предшествующего уровня техники
Беспроводные телефоны, обычно используемые для связи через беспроводную сеть, эволюционируют в устройства, которые обеспечивают их пользователей некоторыми преимуществами персональных компьютеров и портативных персональных цифровых ассистентов (PDA, ПЦА). Этот переход от телефона к компьютеру выполняется с помощью установки изготовителем интерфейсов прикладного программирования (API, ИПП) в беспроводные телефоны. Разработчики программного обеспечения, используя специальные инструментарии разработчика программного обеспечения, записывают программы, специально предназначенные для того, чтобы быть совместимыми с беспроводными телефонами, имеющими ИПП.
Интерфейсы ИПП дают возможность пользователям беспроводных телефонов загружать из сети и выполнять различные программы, используя беспроводные телефоны. В результате ожидается, что пользователи беспроводных телефонов будут настраивать свои беспроводные телефоны с программами, которые пользователь находит полезными и интересными. Например, пользователь может использовать беспроводной телефон для того, чтобы играть в игры, читать книги, получать последние сведения об ассортименте товаров и другие новости, или любой другой тип информации или программы, который желает пользователь беспроводного телефона.
Также ожидается, что программы будут предварительно загруженными во время покупки беспроводного телефона, или пользователь может запросить позже, чтобы дополнительные программы были загружены беспроводным способом через эфир. Пользователь беспроводного телефона также может удалять программы из беспроводного телефона, когда необходимо или когда требуется.
Однако в отличие от традиционных персональных компьютеров беспроводные телефоны осуществляют связь и работают через беспроводную сеть, которая используется для осуществления связи многими другими людьми. Если беспроводная сеть отказывает или насыщается, люди не смогут использовать беспроводные телефоны для их традиционной и важной основной функции связи.
Программа с ошибками, загруженная в беспроводной телефон, может насытить беспроводную сеть, вызвать отказ сети или даже представлять угрозу безопасности для пользователя беспроводного телефона. Например, программа с ошибками может служить помехой для функционирования отдельных частей беспроводной сети или даже может остановить их функционирование, включая базовые станции, которые осуществляют широковещательную рассылку сообщений в беспроводные телефоны. Программа с ошибками также может вызвать насыщение сети со стороны беспроводных телефонов и препятствовать маршрутизации вызовов с высоким приоритетом, таких как вызовы 911. Также могут возникнуть проблемы безопасности, если программа с ошибками вызвала излучение беспроводным телефоном радиочастот, лежащих за пределами нормальных безопасных диапазонов.
Сущность изобретения
В общих чертах настоящее изобретение имеет отношение к инициированному сетью удалению (или “аннулированию”) одной или более программ в дистанционных модулях, таких как беспроводные телефоны. Аннулирование выполняют через беспроводную сеть.
Могут возникать обстоятельства, диктующие аннулирование одной или более программ, загруженных в беспроводные телефоны. Аннулирование может быть необходимо в качестве реакции на неудовлетворенность пользователя функционированием определенной программы, в качестве реакции на обнаружение ряда проблем, влияющих на беспроводную сеть, соединенную с программой, и/или программы, которая вызывает неправильное функционирование беспроводного телефона или прекращение его работы.
В ответ на эти обстоятельства один человек или несколько людей или объектов, участвующих в разработке и/или выпуске программы, изготовитель беспроводного телефона и/или люди или объекты, связанные с функционированием беспроводной сети (такие как провайдер услуг сети беспроводных телефонов или оператор связи) (совместно или отдельно упоминаемые как “источник команды аннулирования”), решают, является ли аннулирование необходимым. Для каждой аннулируемой программы (“намеченной прикладной программы”) источник команды аннулирования составляет команду аннулирования.
Команда аннулирования включает в себя, как минимум, уникальные идентификационные данные приложения для намеченной прикладной программы и команду для беспроводного телефона на удаление намеченной прикладной программы. База данных, поддерживаемая администратором программ, постоянно отслеживает идентификационные данные приложений для каждой программы, загруженной в беспроводные телефоны, а также постоянно отслеживает, какие беспроводные телефоны имеют намеченные прикладные программы, загруженные в них.
Источник команды аннулирования составляет команду аннулирования и посылает ее в беспроводную сеть. Базовые станции в беспроводной сети осуществляют широковещательную рассылку команды аннулирования в беспроводные телефоны. После получения команды аннулирования беспроводные телефоны автоматически начинают процесс удаления намеченной целевой программы.
Альтернативно источник команды аннулирования может посылать более ограниченное сообщение аннулирования в беспроводной телефон. Сообщение аннулирования предписывает беспроводному телефону послать сообщение источнику команды аннулирования или в другой элемент беспроводной сети для того, чтобы получить информацию, необходимую для удаления намеченной прикладной программы.
Другой аспект изобретения включает в себя процесс аннулирования, инициированный беспроводным телефоном. В этом варианте осуществления беспроводной телефон запрограммирован таким образом, чтобы периодически посылать сообщение через беспроводную сеть источнику команды аннулирования. Источник команды аннулирования при обращении со стороны беспроводного телефона посылает команду аннулирования в этот беспроводной телефон для любых приложений, удаление которых требуется. Альтернативно команда аннулирования предписывает беспроводному телефону установить связь с другим элементом беспроводной сети для того, чтобы получить информацию, необходимую для удаления намеченной прикладной программы.
Таким образом, один вариант осуществления изобретения включает в себя различные способы удаления одной или более намеченных прикладных программ, находящихся в беспроводном телефоне. Источник команды аннулирования дистанционно выдает команду аннулирования, в ответ на которую беспроводной телефон автоматически удаляет намеченную прикладную программу. Альтернативно беспроводной телефон периодически посылает сообщения источнику команды аннулирования на предмет любых команд аннулирования, в ответ на которые беспроводной телефон автоматически удаляет намеченную прикладную программу.
В другом варианте осуществления изобретение включает в себя устройство, такое как беспроводной телефон, сконфигурированное и запрограммированное таким образом, чтобы автоматически удалять намеченную прикладную программу в ответ на инициированную сетью команду аннулирования. Альтернативно беспроводной телефон сконфигурирован и запрограммирован таким образом, чтобы периодически посылать сообщения для того, чтобы получить любые команды аннулирования, в ответ на которые беспроводной телефон также сконфигурирован и запрограммирован таким образом, чтобы автоматически удалять намеченную прикладную программу.
Изобретение предоставляет ряд различных преимуществ. Главным образом, изобретение предоставляет механизм для управления посредством инициированного сетью удаления ошибочных или опасных прикладных программ, загруженных в беспроводные телефоны. Существенно то, что процесс инициируется и управляется людьми или объектами, эксплуатирующими беспроводную сеть, или самим беспроводным телефоном, а не пользователем беспроводного телефона. Администратор программ идентифицирует, какие беспроводные телефоны имеют намеченную прикладную программу, и процесс аннулирования конкретно нацеливается на эти беспроводные телефоны. Этот аспект гарантирует высокую степень единообразия, скорости и точности в процессе аннулирования. Изобретение также предоставляет ряд других преимуществ и выгод, которые должны быть понятны из следующего описания изобретения.
Перечень фигур чертежей
Фиг. 1 - блок-схема элементов аппаратного обеспечения и межсоединений беспроводного телефона, включающего в себя программу аннулирования, находящуюся в нем, в соответствии с изобретением.
Фиг. 2 - блок-схема элементов аппаратного обеспечения иллюстративной беспроводной сети, обеспечивающей связь между различными элементами, включая администратора программ и беспроводные телефоны, в соответствии с изобретением.
Фиг. 3а - таблица данных, поддерживаемых администратором программ в базе данных администратора программ, в соответствии с изобретением.
Фиг. 3b - таблица, поддерживаемая беспроводным телефоном в локальной базе данных прикладных программ, в соответствии с изобретением.
Фиг. 4 - блок-схема последовательности операций для конструирования беспроводного телефона с находящейся в нем программой аннулирования в соответствии с изобретением.
Фиг. 5 - блок-схема последовательности операций для посылки инициированной сетью команды аннулирования через беспроводную сеть в соответствии с изобретением.
Фиг. 6 - блок-схема последовательности операций, выполняемой беспроводным телефоном, для того, чтобы удалить намеченную прикладную программу в беспроводном телефоне, в соответствии с изобретением.
Описание предпочтительного варианта осуществления
Сущность, задачи и преимущества изобретения станут более понятными специалистам в данной области техники после рассмотрения следующего подробного описания в связи с сопровождающими чертежами. Как упомянуто выше, изобретение имеет отношение к инициированному сетью удалению одной или более намеченных прикладных программ в дистанционном модуле, таком как беспроводной телефон.
Элементы аппаратного обеспечения и межсоединения
Беспроводной телефон
Ссылаясь на фиг. 1, изобретение проиллюстрировано в контексте беспроводного телефона 100. Беспроводной телефон 100 используется в качестве примера без какого-либо предполагаемого ограничения. Изобретение альтернативно может быть выполнено в любом виде дистанционного модуля, способного взаимодействовать через беспроводную сеть, включая, без ограничения, персональный цифровой ассистент (ПЦА), беспроводные модемы, карты стандарта PCMCIA, терминалы доступа, персональные компьютеры, телефоны без дисплея или клавиатуры или любые комбинации и подкомбинации вышеперечисленного. Эти примеры дистанционных модулей также могут иметь пользовательский интерфейс, такой как клавиатура, визуальный дисплей или звуковой дисплей.
Иллюстративный беспроводной телефон 100, изображенный на фиг. 1, включает в себя микропроцессор, логическую схему, узел дискретных схемных элементов, специализированную интегральную схему (ASIC, СИС) или другой элемент обработки данных. В примере по фиг. 1 этот элемент обработки данных реализован как СИС 102, установленная во время изготовления беспроводного телефона 100. СИС является элементом аппаратного обеспечения, который управляется программным обеспечением, включенным в СИС. Обрабатывающие схемы могут также включать ИПП, как проиллюстрировано с помощью ИПП 104, который установлен в беспроводном телефоне 100 во время изготовления. ИПП 104 является уровнем программного обеспечения, сконфигурированным таким образом, чтобы взаимодействовать с СИС, и выполняется в аппаратном обеспечении СИС. ИПП 104 служит в качестве интерфейса между аппаратным обеспечением СИС 102 и прикладными программами 108 (обсуждаемыми ниже), установленными в беспроводном телефоне 100. Альтернативно беспроводной телефон 100 может содержать любые другие виды схем, которые позволили бы эксплуатировать программы таким способом, который совместим с конфигурацией аппаратного обеспечения беспроводного телефона 100. Беспроводной телефон 100 также включает в себя память 106. Память 106 содержит оперативное запоминающее устройство (RAM, ОЗУ) и постоянное запоминающее устройство (ROM, ПЗУ), но альтернативно может быть любым видом памяти, таким как стираемое программируемое ПЗУ (EPROM), электрически стираемое программируемое ПЗУ (EEPROM) или вставляемые карты флэш-памяти.
Ссылаясь на фиг. 1, изготовитель (не изображен) беспроводного телефона 100 загружает прикладные программы 108 в память 106 беспроводного телефона 100 во время изготовления беспроводного телефона 100. Эти прикладные программы 108 включают в себя игры, книги или другие типы данных или программ. Прикладные программы 108 также могут быть загружены в беспроводной телефон 100 через эфир после того, как беспроводной телефон 100 изготовлен.
Изготовитель также загружает программу 110 аннулирования в память 106 беспроводного телефона 100 во время изготовления беспроводного телефона 100. Программа 110 аннулирования также может быть установлена через эфир после того, как беспроводной телефон 100 изготовлен.
Как более подробно обсуждается ниже, программа 110 аннулирования при выполнении беспроводным телефоном 100 удаляет одну или более намеченных прикладных программ 109, хранящихся в беспроводном телефоне 100. Намеченная прикладная программа 109 является прикладной программой 108, удаление которой необходимо выполнить из беспроводного телефона 100 из-за различных причин, обсужденных ниже. Программа аннулирования 110 дополнительно или альтернативно может быть составлена таким образом, чтобы аннулировать намеченную прикладную программу 109 или перепрограммировать ее таким образом, чтобы выполнить ее по-другому.
В альтернативном варианте осуществления, обсуждаемом ниже, беспроводной телефон 100 запрограммирован таким образом, чтобы периодически опрашивать источник 222 команды аннулирования (обсуждаемый в связи с фиг. 2) на предмет любых команд для того, чтобы аннулировать намеченную прикладную программу 109. В этом варианте осуществления программа 111 опроса аннулирования загружается в память 106 беспроводного телефона 100 во время изготовления беспроводного телефона 100. Программа 111 опроса аннулирования является программным обеспечением, которое самостоятельно выполняется через различные интервалы времени. Программа 111 опроса аннулирования автоматически выполняется всякий раз, когда беспроводной телефон 100 включается пользователем, и/или через периодические интервалы времени, пока пользователь эксплуатирует беспроводной телефон 100, и/или в моменты времени, заранее определенные программой (такие как определенные дни или время суток).
Беспроводной телефон 100 также включает в себя локальную базу данных 112, установленную изготовителем. Примерное содержание локальной базы данных 112 проиллюстрировано на фиг. 3b. Локальная база данных 112 содержит, как минимум, запись идентификационных данных 302 приложения, уникальных для каждой прикладной программы 108, хранящейся в беспроводном телефоне 100. Кроме того, локальная база данных 112 может содержать запись местоположения 314 прикладных программ 108 в памяти 106 беспроводного телефона 100 и любую другую информацию, полезную для постоянного отслеживания того, какие прикладные программы 108 загружены в беспроводной телефон 100 и где они расположены.
Идентификационные данные 302 приложений для прикладных программ 108, хранящиеся в локальной базе данных 112, соответствуют тем же самым идентификационным данным 302 приложений для прикладных программ 108, хранящимся в базе данных 204 администратора программ (фиг. 2, обсуждаемой ниже). Например, идентификационные данные 302 приложения для прикладной программы 108, хранящиеся в базе данных 204 администратора программ для игры “гоночный автомобиль 104Z”, идентичны идентификационным данным 302 приложения для этой прикладной программы 108 в локальной базе данных 112 в беспроводном телефоне 100.
Беспроводной телефон 100 дополнительно включает в себя клиента 114 загрузки. Клиент 114 загрузки является программой в рамках ИПП 104, которая предписывает, где хранится каждая прикладная программа 108, когда она загружается через эфир в беспроводной телефон 100. Клиент загрузки 114 также поддерживает запись о том, где хранится каждая прикладная программа 108 в памяти 106 беспроводного телефона 100.
Сеть
Фиг. 2 иллюстрирует пример сети 200, через которую осуществляется широковещательная рассылка инициированной сетью команды 216 аннулирования в беспроводные телефоны 100, имеющие намеченную прикладную программу 109. Сеть 200 включает в себя различные элементы, соединенные различными способами. Сеть 200, описанная ниже, является только иллюстративной. Для целей настоящего изобретения сеть 200 включает в себя любую систему, посредством которой дистанционные модули, такие как беспроводные телефоны 100, взаимодействуют через эфир между собой и/или между различными элементами беспроводной сети, включая, без ограничений, операторов связи беспроводной сети и/или серверы.
Ссылаясь на фиг. 2, сеть 200 включает в себя на одном конце администратора 202 программ. Администратор 202 программ является любым лицом (компанией), которое разработало и предоставило ИПП 104 изготовителям беспроводного телефона 203 для установки в беспроводные телефоны 203. Администратор 202 программ также является лицом, который сертифицирует прикладные программы 108 как совместимые с интерфейсами ИПП 104, установленными в беспроводные телефоны 203.
Администратор 202 программ поддерживает базу данных 204 администратора программ. Примерное содержание базы данных 204 администратора программ проиллюстрировано на фиг. 3а. База данных 204 администратора программ содержит, как минимум, запись идентификационных данных 302 приложений, представляющих каждую прикладную программу 108, загруженную в любой момент времени в каждый беспроводной телефон 203 в сети 200, электронный номер службы (ESN, ЭНС) 304, представляющий лицо, которое загрузило прикладную программу 108, и идентификационный номер мобильного телефона (MIN, ИНМТ) 306, уникальный для беспроводного телефона 203, имеющего эту прикладную программу 108. В качестве необязательного дополнения база данных 204 администратора программ содержит записи модели 308 беспроводного телефона, оператора 310 связи беспроводной сети, региона 312, где используется беспроводной телефон, и любую другую информацию, полезную для того, чтобы идентифицировать, какие беспроводные телефоны 203 имеют какие прикладные программы 108.
Администратор 202 программ также включает в себя источник 222 команды аннулирования. Источник 222 команды аннулирования является лицом (лицами) или субъектом, который принимает решение аннулировать одну или более намеченных прикладных программ 109. Источник 222 команды аннулирования также является субъектом, который составляет команду 216 аннулирования (обсуждаемую ниже), широковещательная рассылка которой осуществляется в идентифицированные беспроводные телефоны 100, имеющие намеченную прикладную программу (программы) 109. Альтернативно и без ограничения источник 222 команды аннулирования может быть одним или несколькими лицами или субъектами, принимающими участие в разработке и выпуске намеченных прикладных программ 109, лицом (лицами) или субъектами, принимающими участие в изготовлении беспроводных телефонов 203, лицом (лицами) или субъектами, принимающими участие в функционировании любых частей сети 200 и/или любого элемента сети 200.
Администратор 202 программ сообщается с одним или более компьютерными серверами 206 посредством сети через Internet 208 (предпочтительно в защищенном режиме). Серверы 206 также сообщаются с сетью 210 оператора связи посредством сети через Internet 208. Сеть 210 оператора связи управляет сообщениями, посылаемыми в контроллер 212 службы обмена сообщениями (MSC, КСОС). Сеть 210 оператора связи сообщается с КСОС 212 как через Internet, так и через традиционную телефонную систему (POTS, ТТС) (совместно указаны на фиг. 2 как 211). Через Internet-соединение 211 между сетью 210 оператора связи и КСОС 212 передаются данные, а ТТС 211 передает речевую информацию. КСОС 212, в свою очередь, соединен с множеством базовых станций (BTS, БС) 214. КСОС 212 соединен с БС как с помощью Internet 211 (для передачи данных), так и с помощью ТТС 211 (для речевой информации). БС 214 осуществляет широковещательную рассылку сообщений в беспроводные телефоны 203 беспроводным способом с помощью службы коротких сообщений (SMS, СКС) или любого другого способа через эфир.
Одним примером сообщения, рассылаемого БС 214, в настоящем изобретении является команда 216 аннулирования. Как дополнительно обсуждается в настоящем описании, беспроводной телефон 100, имеющий намеченную прикладную программу 109, в ответ на прием команды 216 аннулирования удаляет программу 109, хранящуюся в беспроводном телефоне 100. Команда 216 аннулирования составляется источником 222 команды аннулирования (который может быть или может не быть тем же самым лицом (лицами) или субъектами, которые приняли решение начать аннулирование намеченной прикладной программы 109). Команда 216 аннулирования посылается источником 222 команды аннулирования через сеть 200, чтобы быть разосланной в беспроводные телефоны 100, имеющие намеченную прикладную программу 109.
Другим примером сообщения, рассылаемого БС 214, является сообщение 218 аннулирования. Как дополнительно обсуждается в настоящем описании, сообщение 218 аннулирования является сообщением, которое посылается через сеть 200 источником 222 команды аннулирования в беспроводные телефоны 100, имеющие намеченную прикладную программу 109. В ответ на сообщение 218 аннулирования беспроводные телефоны 100 автоматически связываются с источником 222 команды аннулирования. Источник 222 команды аннулирования посылает беспроводным телефонам 100, как минимум, идентификационные данные намеченной прикладной программы 109 и команду на удаление намеченной прикладной программы 109. В ответ на прием этой информации беспроводные телефоны 100 удаляют намеченную прикладную программу 109. Альтернативно источник 222 команды аннулирования посылает беспроводным телефонам 100 команду на извлечение идентификационных данных намеченной прикладной программы 109 из другого элемента сети 200, включая, без ограничений, сервер 206.
Как изображено на фиг. 2, сеть 200 включает в себя много беспроводных телефонов 203, каждый из которых может беспроводным способом сообщаться с различными другими элементами 200 сети через БС 214. В настоящем изобретении идентифицированные беспроводные телефоны 100 содержат намеченную прикладную программу 109, которая аннулируется посредством использования команд 216 аннулирования или сообщений 218 аннулирования, инициированных частями сети 200, отличными от самих беспроводных телефонов 203. Однако в другом варианте осуществления процесс аннулирования инициируется беспроводными телефонами 224, имеющими программу 111 опроса аннулирования. Этот альтернативный способ для проведения аннулирования обсужден ниже.
Функционирование
Кроме различных вариантов осуществлений аппаратного обеспечения, описанных выше, другой аспект изобретения касается способа, предназначенного для конструирования беспроводного телефона 100, включающего в себя программу 110 аннулирования, находящуюся в нем, и способов дистанционного инициирования аннулирования одной или более намеченных прикладных программ 109, находящихся в беспроводном телефоне 100.
Конструирование, конфигурирование и использование беспроводного телефона
Фиг. 4 изображает последовательность 400 для того, чтобы проиллюстрировать один пример конструирования, конфигурирования и использования беспроводного телефона 100 с программой 110 аннулирования, находящейся в нем. Для простоты объяснения, но без какого-либо предполагаемого при этом ограничения, пример фиг. 4 описан в контексте окружения аппаратного обеспечения, описанного выше.
На этапе 402 беспроводной телефон 100 конструируется изготовителем. На этапе 404 изготовитель загружает программу 110 аннулирования в память 106 беспроводного телефона 100. На этапе 404 изготовитель также загружает одну или более прикладных программ 108 в беспроводной телефон 100.
На этапе 406 администратор 202 программ обновляет базу данных 204 администратора программ для того, чтобы включить в нее запись идентификационных данных 302 приложения, представляющих каждую прикладную программу 108, загруженную в каждый изготовленный беспроводной телефон 100. Эта информация может непосредственно приходить от изготовителя.
На этапе 408 беспроводной телефон 100 принимает одну или более прикладных программ 108, загружаемых через эфир. Пока прикладные программы 108 сертифицируются администратором 202 программ, фактические программы поддерживаются в сети 210 оператора связи (но могут поддерживаться в любом месте в сети 200, где есть возможность посылать прикладные программы 108 в БС 214, подлежащие широковещательной рассылке на беспроводные телефоны 100). Пользователь беспроводного телефона 100 эксплуатирует беспроводной телефон 100 связи через сеть 200 с сервером 206, чтобы выбрать желаемую прикладную программу 108. В ответ сеть 210 оператора связи посылает прикладную программу 108 в КСОС 212 для передачи в БС 214, которая пересылает прикладную программу 108 в беспроводной телефон 100.
В ответ на прием беспроводным телефоном 100 прикладной программы 108 клиент 114 загрузки в беспроводном телефоне 100 направляет прикладную программу 108 в определенное местоположение в памяти 106 беспроводного телефона 100, где прикладная программа 108 сохраняется.
Также на этапе 408 либо сервер 206, либо сеть 210 оператора связи передают администратору 202 программ идентификационные данные 302 приложения, уникальные для прикладной программы 108, которая загружена в беспроводной телефон 100. Администратор 202 программ обновляет базу данных 204 администратора программ записью идентификационных данных 302 приложения, представляющих дополнительную прикладную программу 108, которая была загружена в беспроводной телефон 100 (этап 406).На этапе 409 беспроводной телефон 100 обновляет свою локальную базу данных 112 для того, чтобы включить в нее запись идентификационных данных 302 приложения, уникальных для прикладной программы 108, которая была загружена в беспроводной телефон 100. Таким образом, записи идентификационных данных 302 приложений, поддерживаемых в беспроводном телефоне 100, в локальной базе данных 112, являются идентичными записям идентификационных данных 302 приложений, поддерживаемых в беспроводном телефоне 100, в базе данных 204 администратора программ.
На этапе 410 беспроводной телефон 100 эксплуатируют для того, чтобы связаться с прикладной программой 108, хранящейся в беспроводном телефоне 100, и/или выполнить ее. Например, беспроводной телефон 100 могут эксплуатировать для выполнения игры “Tetris” после инициирования телефонного вызова.
На этапе 412 беспроводной телефон 100 может быть переконфигурирован таким образом, чтобы сохранить дополнительные или еще некоторое число прикладных программ 108. Если беспроводной телефон 100 эксплуатируют для того, чтобы добавить прикладные программы 108, то этап 408 и обновление идентификационных данных 302 приложений на этапе 406 повторяются.
Наоборот, на этапе 414, если беспроводной телефон 100 эксплуатируют для того, чтобы удалить одну или более прикладных программ, то беспроводной телефон 100 предписывает клиенту 114 загрузки выполнить определение местоположения удаляемой прикладной программы 108, и удаляет эту прикладную программу 108. После того как прикладная программа 108 удалена, беспроводной телефон 100 автоматически обновляет свою локальную базу данных 112 посредством удаления записи идентификационных данных 302 приложения, представляющих удаленную прикладную программу 108. Беспроводной телефон 100 также автоматически посылает сообщение через сеть 200 администратору 202 программ, извещающее администратора 202 программ об удаленной прикладной программе 108. В ответ администратор 202 программ обновляет хранящуюся в базе данных 204 администратора программ запись идентификационных данных 302 приложений, соответствующую этому беспроводному телефону 100 (этап 406).
На этапе 416, в противоположность эксплуатации беспроводного телефона 100 пользователем с целью удаления прикладной программы 108 из беспроводного телефона 100, источник 222 команды удаления принимает решение аннулировать одну или более прикладных программ 108. На этапе 418 источник 222 команды удаления инициирует процесс аннулирования, как обсуждается ниже, и последовательность 400 заканчивается.
Команда аннулирования
Фиг. 5 изображает последовательность 500 для того, чтобы проиллюстрировать пример составления команды 216 аннулирования источником 222 команды аннулирования и посылки команды 216 аннулирования через сеть 200 для последующей широковещательной рассылки в беспроводные телефоны 100, идентифицированные как имеющие намеченную прикладную программу 109, которая должна быть удалена или аннулирована. Для простоты объяснения, но без какого-либо предполагаемого при этом ограничения, пример фиг. 5 описан в контексте окружения аппаратного обеспечения по фиг. 1-3.
На этапе 502 источник 222 команды аннулирования определяет, удовлетворяются ли критерии для аннулирования одной или более намеченных прикладных программ 109. Источник 222 команды аннулирования может начать аннулирование при ряде обстоятельств, таких как извещение из любой части сети 200 о том, что беспроводные телефоны 100 в сети 200 не работают правильно и/или отказывают, когда пользователь эксплуатирует намеченную прикладную программу 109; обращение разработчиков намеченной прикладной программы 109 к любой части сети 200 для уведомления ее об ошибке в намеченной прикладной программе 109; обращение пользователей беспроводных телефонов к любой части сети 200 с жалобами на намеченную прикладную программу 109; прием любой частью сети 200 сигнала обратной связи о статистике проблем с взаимодействием между намеченной прикладной программой 109 и другими прикладными программами 108 в беспроводном телефоне; обнаружение программного вируса в намеченной прикладной программе 109; и/или обнаружение того, что эксплуатация пользователем намеченной прикладной программы 109 увеличивает объем радиочастотного излучения, испускаемого беспроводным телефоном 100, так что эксплуатация намеченной прикладной программы 109 вызывает угрозу безопасности.
На этапе 502 фактическое решение аннулировать, принимаемое источником 222 команды удаления, может быть выполнено отдельным лицом или комиссией, или может быть определено электронным способом, например, на основе сигнала обратной связи со статистическими данными из беспроводных телефонов 100 или других частей сети 200. Рамки аннулирования зависят от сущности проблемы и числа беспроводных телефонов 100 в сети, на которые проблема влияет. Например, аннулирование может распространяться на все беспроводные телефоны 203 в сети 200, все беспроводные телефоны 100 в определенной географической области, конкретные модели беспроводных телефонов 100, диапазон ЭНС 304 или отдельный беспроводной телефон 100.
На этапе 504 источник 222 команды аннулирования обращается к администратору 202 программ для того, чтобы получить уникальные идентификационные данные 302 приложения, представляющие намеченную прикладную программу 109 (предполагая, что эта информация еще недоступна для источника 222 команды аннулирования). На этапе 506 администратор 202 программ исследует базу данных 204 администратора программ, которая поддерживает идентификационные данные 302 приложений, представляющие каждую прикладную программу 108, хранящуюся в каждом беспроводном телефоне 100 в сети 200. Посредством поиска в базе данных 204 администратора программ идентификационных данных 302 приложения намеченной прикладной программы 109 администратор 202 программ точно определяет, какой беспроводной телефон 100 в сети 200 содержит намеченную прикладную программу 109, и эта информация передается администратором 202 программ в источник 222 команды аннулирования.
На этапе 508 источник 222 команды аннулирования составляет команду 216 аннулирования. Команда 216 аннулирования содержит, как минимум, идентификационные данные 302 приложения, представляющие намеченную прикладную программу 109, и команду беспроводному телефону 100 на удаление намеченной прикладной программы 109. Команда 216 аннулирования записывается как СКС, но может быть в любом формате, который поддерживает посылку от администратора 202 программ в БС 214 и широковещательную рассылку через эфир в беспроводные телефоны 100. Альтернативно источник 222 команды аннулирования может послать информацию, необходимую для того, чтобы составить команду 216 аннулирования, через сеть 200 в БС 214, которая, в свою очередь, может составить команду 216 аннулирования.
На этапе 510 после того, как команда 216 аннулирования составлена и находится в БС 214, БС 214 осуществляет широковещательную рассылку команды 216 аннулирования в идентифицированные беспроводные телефоны 100. Команда на широковещательную рассылку может быть включена как часть команды 216 аннулирования или отдельно запрограммирована в БС 214. БС может осуществлять широковещательную рассылку команды 216 аннулирования в любом сотовом интерфейсе, включая усовершенствованную систему мобильной телефонной связи (AMPS, УСМТС), систему персональной связи (PCS, СПС), глобальную систему мобильной связи (GSM, ГСМ) или множественный доступ с кодовым разделением каналов (CDMA, МДКР).
На этапе 512 беспроводные телефоны 100 принимают команду 216 аннулирования, в ответ на которую беспроводные телефоны 100 автоматически удаляют намеченную прикладную программу 109, как обсуждается ниже.
Сообщение аннулирования
Вместо составления команды 216 аннулирования источником 222 команды аннулирования, которая содержит всю информацию, необходимую беспроводному телефону 100 для удаления намеченной прикладной программы 109, альтернативно источник 222 команды аннулирования может составить и инициировать широковещательную рассылку более ограниченного сообщения 218 аннулирования. Сообщение 218 аннулирования является сообщением беспроводному телефону 100, которое предписывает беспроводному телефону 100 автоматически инициировать связь с источником 222 команды аннулирования. Эта связь является прозрачной для пользователя беспроводного телефона 100. Источник 222 команды аннулирования, в свою очередь, обеспечивает беспроводной телефон 100 достаточной информацией для идентификации намеченной прикладной программы 109, подлежащей удалению, и командой на удаление намеченной прикладной программы 109. Источник 222 команды аннулирования также может обеспечить беспроводной телефон 100 программой 110 аннулирования, необходимой для удаления намеченной прикладной программы 109. В ответ на прием идентификационных данных намеченной прикладной программы 109 (и альтернативно программы 110 аннулирования) беспроводной телефон 100 удаляет намеченную прикладную программу 109 способом, описанным ниже.
Альтернативно источник 222 команды аннулирования может послать беспроводному телефону 100 сообщение 218 аннулирования, содержащее команду на извлечение информации, необходимой для удаления намеченной прикладной программы 109, из другого элемента сети 200, включая, без ограничения, сервер 206. Прозрачным способом для пользователя беспроводного телефона 100 в ответ на это сообщение 218 аннулирования беспроводной телефон 100 получает идентификационные данные намеченной прикладной программы 109, команду на удаление намеченной прикладной программы 109 и, альтернативно, программу 110 аннулирования из другого элемента сети 200.
Опрос команды аннулирования
В качестве альтернативы процессу аннулирования, инициируемому источником 222 команды аннулирования, в другом варианте осуществления процесс аннулирования инициируется самими беспроводными телефонами 224. В этом варианте осуществления беспроводные телефоны 224 имеют программу 111 опроса аннулирования, загруженную в телефоны 224. Беспроводные телефоны 224 автоматически выполняют программу 111 опроса аннулирования через различные интервалы времени таким образом, что беспроводные телефоны 224 проверяют наличие любых команд на удаление намеченной прикладной программы 109.
При выполнении программа 111 опроса аннулирования заставляет беспроводной телефон 224 автоматически посылать сообщение с помощью любого средства эфирной передачи источнику 222 команды аннулирования. Источник 222 команды аннулирования является лицом (лицами), субъектом или элементом сети 200, который принимает решение аннулировать одну или более намеченных прикладных программ 109. Альтернативно и без ограничения источник 222 команды аннулирования может быть одним лицом или несколькими лицами или субъектами, участвующими в разработке и выпуске намеченной прикладной программы 109, лицом (лицами) или субъектами, участвующими в изготовлении беспроводных телефонов 203, и/или лицом (лицами) или субъектами, участвующими в функционировании любых элементов сети 200 и/или любого элемента сети 200.
Сообщение опроса, посланное беспроводным телефоном 224 источнику 222 команды аннулирования, запрашивает, чтобы источник 222 команды аннулирования послал беспроводному телефону 224 команду 216 аннулирования для удаления любой намеченной прикладной программы 109. Этот “опрос” на предмет команды 216 может быть выполнен различными способами. Например, сообщение опроса, посланное беспроводным телефоном 224, может включать в себя информацию идентификации о беспроводном телефоне 224, достаточную для источника 222 команды аннулирования, чтобы определить, какие прикладные программы 108 загружены в этот конкретный беспроводной телефон 224. Источник 222 команды аннулирования может выполнить это определение с помощью обращения к базе данных 204 администратора программ, содержащей информацию о каждой прикладной программе 108, загруженной в каждый беспроводной телефон 203 в сети 200. Если источник 222 команды аннулирования определит, что имеется совпадение между прикладными программами 108, загруженными в этот конкретный беспроводной телефон 224, и намеченной прикладной программой 109, то источник 222 команды аннулирования может перейти к посылке команды аннулирования 216. Если совпадения нет, то источник 222 команды аннулирования не посылает команду 216 аннулирования.
Наоборот, источник 222 команды аннулирования может автоматически посылать любые имеющиеся команды аннулирования 216 в беспроводной телефон 224 в ответ на прием сообщения опроса от беспроводного телефона 224. Беспроводной телефон 224 после приема команды 216 аннулирования определяет, находится ли намеченная прикладная программа 109 в беспроводном телефоне 224. Если это так, то беспроводной телефон 224 переходит к удалению намеченной прикладной программы 109.
Так же, как при предыдущем варианте осуществления, команда 216 аннулирования, посланная в ответ на сообщение опроса, содержит, как минимум, идентификационные данные 302 приложения, представляющие намеченную прикладную программу 109, и команду для беспроводного телефона 224 на удаление этой программы. Альтернативно команда 216 аннулирования может предписать беспроводному телефону 224 послать сообщение в другой элемент сети 200 (такой как сервер 206) для получения информации, необходимой для завершения аннулирования. В качестве другой альтернативы может быть реализована сокращенная версия команды 216 аннулирования, где команда 216 аннулирования включает в себя информацию, представляющую идентификационные данные подлежащих удалению прикладных программ 108, при этом простое наличие команды аннулирования в источнике 222 команды аннулирования подразумевает заключенную инструкцию для телефона выполнить команду.
Удаление намеченной прикладной программы
Фиг. 6 изображает последовательность, чтобы проиллюстрировать один пример удаления намеченной прикладной программы 109, хранящейся в беспроводном телефоне 100, после того, как беспроводной телефон 100 принимает команду 216 аннулирования или, в противном случае, принимает идентификационные данные намеченной прикладной программы 109 и команду на удаление этой программы.
Для простоты объяснения, но без какого-либо предполагаемого при этом ограничения, пример по фиг. 6 описан в контексте окружения аппаратного обеспечения, описанного на фиг. 1-3. На этапе 602 беспроводной телефон 100 принимает команду 216 аннулирования, разосланную из БС 214 в сети 200.
На этапе 604 в ответ на прием команды 216 аннулирования (или идентификационных данных намеченной прикладной программы 109 и команды на удаление этой программы) клиент 114 загрузки в беспроводном телефоне 100 интерпретирует команду 216 аннулирования для того, чтобы определить идентификационные данные 302 приложения, представляющие намеченную прикладную программу 109. Клиент 114 загрузки затем посылает команду 216 аннулирования в программу 110 аннулирования, установленную в беспроводном телефоне 100. Клиент 114 загрузки также взаимодействует с информацией программы 110 аннулирования, представляющей местоположение намеченной прикладной программы 109 в памяти 106.
На этапе 606 команда 216 аннулирования достигает программы 110 аннулирования, где она предписывает программе аннулирования выполниться и автоматически удалить намеченную прикладную программу 109. Альтернативно программа 110 аннулирования может блокировать намеченную прикладную программу 109 или предпринять любое другое действие, которое заставило бы намеченную прикладную программу 109 больше не работать. Программа 110 аннулирования также может быть составлена таким образом, чтобы удалять команду 216 аннулирования после выполнения удаления программы.
На этапе 608 беспроводной телефон 100 автоматически сообщает о завершенном удалении намеченной прикладной программы 109 в источник 222 команды аннулирования. Это сообщение может быть выполнено с помощью СКС или в любой другой форме эфирного сообщения, посланного через сеть 200.
На этапе 610 источник 222 команды аннулирования передает подтверждение удаления администратору 202 программ (этот этап предполагает, что источник 222 команды аннулирования и администратор 202 программ не являются одним и тем же субъектом). Администратор 202 программ обновляет базу данных 204 администратора программ для того, чтобы отразить тот факт, что беспроводной телефон 100 больше не содержит намеченную прикладную программу 109 в рабочем виде. Для того, чтобы сделать это, администратор 202 программ удаляет идентификационные данные 302 приложения, представляющие намеченную прикладную программу 109, из списка прикладных программ 108, загруженных в этот конкретный беспроводной телефон 100.
На этапе 612 беспроводной телефон 100, в качестве необязательного дополнения, автоматически сообщает пользователю беспроводного телефона 100, что намеченная прикладная программа 109 больше не является рабочей, и ее удаление выполнено. Форма и содержание этого сообщения могут быть включены в команду 216 аннулирования, а программа 110 аннулирования в беспроводном телефоне 100 может быть составлена таким образом, чтобы предписать беспроводному телефону 100 выдать сообщение пользователю в ответ на инструкцию в команде 216 аннулирования. Сообщение может содержать причину (причины) аннулирования. Сообщение также может направить пользователя беспроводного телефона 100 в отделение обслуживания абонентов или к любой третьей стороне для получения информации относительно аннулирования.
Носители/схемы, имеющие сигнал
Как обсуждено выше, изобретение имеет отношение к способам, включающим в себя инициированное сетью удаление одной или более намеченных прикладных программ 109, находящихся в беспроводном телефоне 100, и конструирование беспроводного телефона 100, включая программу 110 аннулирования, находящуюся в нем. Изобретение также имеет отношение к способам, предназначенным для опроса беспроводным телефоном 224 сети 200 для получения команды 216 аннулирования, чтобы удалить намеченную прикладную программу 109, и для конструирования беспроводного телефона 224 с программой 111 опроса аннулирования, находящейся в нем.
В контексте фиг. 1-3 эти способы могут быть реализованы, например, с помощью функциональной части (частей) сети 200, чтобы выполнять последовательность машиночитаемых инструкций. Эти инструкции могут находиться на различных типах носителей сигнала. Эти носители сигнала могут содержать, например, ОЗУ (не изображено), доступное с помощью элементов сети 200 или находящееся в них. Альтернативно инструкции могут содержаться на другом носителе сигнала, таком как магнитная дискета хранения данных (не изображена). Содержатся ли в ОЗУ, на дискете или где либо еще, инструкции также могут храниться на множестве машиночитаемых носителей хранения данных, таких как запоминающее устройство с прямым доступом (DASD) (например, традиционный “жесткий диск” или избыточный массив независимых дисков (RAID)), магнитная лента, электронная память, предназначенная только для чтения (например, ПЗУ, EPROM или EEPROM), или оптическое запоминающее устройство (например, ПЗУ на компакт-диске (CD-ROM), память однократной записи/многократного считывания (WORM), цифровой универсальный диск (DVD), цифровая оптическая лента), бумажные перфокарты или другие подходящие носители сигнала, включая среды передачи, такие как цифровые и аналоговые.
Что касается беспроводных телефонов 203, способы, обсужденные в настоящем описании, могут быть реализованы с помощью любых типов схем, микропроцессоров или других типов аппаратного обеспечения в беспроводном телефоне 203.
Другие варианты осуществления
Несмотря на то, что вышеприведенное описание изображает иллюстративные варианты осуществления изобретения, специалистам в данной области техники будет понятно, что в них могут быть сделаны различные изменения и модификации, не выходя за рамки объема изобретения, как определено прилагаемой формулой изобретения. Кроме того, несмотря на то, что элементы изобретения могут быть описаны или заявлены в единственном числе, предполагается множественное число, если явно не заявлено ограничение для единственного числа.