RU2679242C2 - Продолжение задач между устройствами - Google Patents

Продолжение задач между устройствами Download PDF

Info

Publication number
RU2679242C2
RU2679242C2 RU2015151572A RU2015151572A RU2679242C2 RU 2679242 C2 RU2679242 C2 RU 2679242C2 RU 2015151572 A RU2015151572 A RU 2015151572A RU 2015151572 A RU2015151572 A RU 2015151572A RU 2679242 C2 RU2679242 C2 RU 2679242C2
Authority
RU
Russia
Prior art keywords
tasks
state
notification
user
context
Prior art date
Application number
RU2015151572A
Other languages
English (en)
Other versions
RU2015151572A (ru
Inventor
Ань ЯНЬ
Original Assignee
МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи filed Critical МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Publication of RU2015151572A publication Critical patent/RU2015151572A/ru
Application granted granted Critical
Publication of RU2679242C2 publication Critical patent/RU2679242C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Abstract

Изобретение относится к средствам для продолжения задач между пользовательскими устройствами. Технический результат заключается в скорости продолжения выполнения задачи. Принимают сделанный пользователем выбор по меньшей мере одной из множества задач из элемента пользовательского интерфейса на первом устройстве, в котором отображается каждая из множества задач. Отправляют уведомление на второе устройство, при этом данное уведомление содержит список упомянутой по меньшей мере одной выбранной пользователем задачи, причем данный список содержит выбираемые функции пользовательского интерфейса для выбора одной или более задач из упомянутой по меньшей мере одной выбранной пользователем задачи для продолжения на втором устройстве в захваченном состоянии контекста с первого устройства. Принимают указание жеста в упомянутом списке на втором устройстве, которым осуществляется взаимодействие с упомянутым уведомлением, причем данное указание содержит сделанный пользователем выбор одной или более отдельных задач из этого списка. Отправляют состояние контекста первого устройства на второе устройство на основе приема упомянутого указания жеста. Синхронизируют состояние второго устройства с состоянием контекста первого устройства для возобновления упомянутых одной или более отдельных задач, выбранных из списка, на втором устройстве. 3 н. и 17 з.п. ф-лы, 7 ил.

Description

УРОВЕНЬ ТЕХНИКИ
[0001] Для пользователей является обычным переключаться между устройствами (например, настольным компьютером, переносным компьютером, мобильным телефоном) множество раз в течении дня, но хотеть продолжить с той же самой задачей. Например, пользователь может искать ресторан на настольной вычислительной системе перед уходом из дома и затем продолжить поиск маршрута/карты на мобильном телефоне во время передвижения к этому ресторану. Продолжение таких задач от одного устройства к другому устройству требует ручного взаимодействия, такого как осуществление ввода на новом устройстве такого же запроса, что первоначально введен на первом устройстве.
[0002] В дополнение к поиску, есть другие задачи, которые пользователи могут пожелать продолжить на другом устройстве. Например, пользователю может потребоваться сменить размещения (и поэтому, устройства) во время вызова по сети, но желательно повторно присоединиться к тому же диалогу на другом устройстве (например, телефоне). В другом примере, пользователь может искать кинофильм в телефонном приложении поиска, и затем захотеть переключиться на настольный компьютер для просмотра кинофильма. В этих сценариях, однако, продолжение таких задач между устройствами требует дополнительной работы, такой как копирование файлов, открытие файла и просмотр той же страницы, повторный набор веб-сайта, поиск онлайн-конференции и повторное присоединение, и т.д.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0003] Нижеследующее представляет упрощенное краткое изложение сущности изобретения, для того, чтобы обеспечить базовое понимание некоторых описанных в настоящем документе новаторских вариантов осуществления. Это краткое изложение сущности изобретения не является обширным обзором и не предназначено для идентификации ключевых/критических элементов или для задания их объема. Его единственной целью является представление некоторых идей в упрощенной форме в качестве прелюдии к более подробному описанию, которое представлено позже.
[0004] Раскрытая архитектура обеспечивает восприятие пользователя для продолжения задач компьютера и/или приложения между пользовательскими устройствами. Задачами могут быть поиск, просмотр или другие действия офисных приложений, например. Статус задачи может быть синхронизирован между устройствами посредством облачной службы или посредством беспроводного однорангового (P2P) соединения ближнего радиуса действия, такого как Bluetooth™.
[0005] При применении к поиску, например, восприятие пользователя обеспечивает пользователям возможность возобновить тот же сеанс поиска между устройствами несколькими способами. Первым способом для осуществления продолжения задачи сеанса поиска и сеансов других типов является использование облачных служб (например, хранилища данных в сети, совместного использования данных по сети, других служб, таких как механизмы поиска) для синхронизации истории поиска.
[0006] Вторым способом для осуществления продолжения задачи является P2P-соединение (например, беспроводное или проводное ближнего радиуса действия). Продолжая с примером поиска, история поиска может быть скопирована посредством P2P через Bluetooth-соединение.
[0007] Раскрытая архитектура может также быть расширена для других задач, таких как просмотр веб-страниц, онлайн-конференции, сеансы офисных приложений и т.д. Клиентское приложение каждого устройства собирает состояния каждого приложения (например, ссылки на документы, веб-сайты, информацию онлайн-конференции и т.д.) как часть синхронизации, и использует состояния для возобновления тех же приложений на других устройствах (например, открыть тот же документ обработки текста, открыть в браузере те же веб-сайты, повторно присоединиться к онлайн-конференции, и т.д.).
[0008] Для достижения вышеуказанных и связанных с ними целей, конкретные иллюстративные аспекты описаны в настоящем документе в связи с нижеследующим описанием и прилагаемыми чертежами. Эти аспекты указывают на различные пути, в которых раскрытые в настоящем документе принципы могут быть применены на практике, и все аспекты и их эквиваленты предназначены находиться в рамках объема заявленного объекта изобретения. Другие преимущества и новаторские признаки станут очевидны из нижеследующего подробного описания, при рассмотрении совместно с чертежами.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0009] Фиг. 1 иллюстрирует систему возобновления задач в соответствии с раскрытой архитектурой.
[0010] Фиг. 2 иллюстрирует более детальную систему возобновления задач в соответствии с раскрытой архитектурой.
[0011] Фиг. 3 иллюстрирует примерные пользовательские интерфейсы для выбора одной или более задач на одном устройстве и продолжения этих задач на другом устройстве.
[0012] Фиг. 4 иллюстрирует облачную службу для продолжения задач на устройствах.
[0013] Фиг. 5 иллюстрирует способ в соответствии с раскрытой архитектурой.
[0014] Фиг. 6 иллюстрирует альтернативный способ в соответствии с раскрытой архитектурой.
[0015] Фиг. 7 иллюстрирует блок-схему вычислительной системы, которая исполняет продолжение задачи в соответствии с раскрытой архитектурой.
ПОДРОБНОЕ ОПИСАНИЕ
[0016] Раскрытая архитектура способствует восприятию пользователя для продолжения задач компьютера и/или приложения (например, "задачи нажми и продолжи") между пользовательскими устройствами. Задачами могут быть поиск, просмотр или другие активности офисных приложений, например. Статус задачи может быть синхронизирован между устройствами посредством облачной службы или посредством беспроводного однорангового (P2P) соединения ближнего радиуса действия, такого как Bluetooth™.
[0017] Более конкретно, при применении к поиску, восприятие пользователя обеспечивает пользователям возможность возобновления того же сеанса поиска, например, между устройствами несколькими способами. Первым способом для осуществления продолжения задачи сеанса поиска и сеансов других типов является использование облачных служб (например, хранилища данных в сети, совместного использования данных по сети, других служб, таких как механизмы поиска) для синхронизации истории поиска. Каждое пользовательское устройство устанавливает клиентское приложение (или является добавляемым компонентом для существующего приложения).
[0018] Все клиенты осуществляют вход в облачную службу посредством одинакового ID пользователя (например, идентификатора (ID) Windows Live™, ID социальной сети и т.д.). Когда пользователь оставляет устройство, пользователь взаимодействует с установленным клиентским приложением для осуществления выбора одной или более задач (например, истории поиска, сеанса просмотра и т.д.) для продолжения между устройствами. Это выбор может быть выполнен по запросу и/или предварительно выполнен с возможностью быть автоматическим. Другие пользовательские устройства принимают уведомление и предлагают пользователю выбрать возобновление (например, "нажми и продолжи") одной или более задач. Когда пользователь отвечает на другом устройстве, клиентское приложение открывает (запускает) необходимые приложения (например, браузер, и добавляемую программу, и т.д.) и возобновляет то же состояние каждого связанного приложения (например, выдает те же запросы, открывает тот же веб-сайт и т.д.).
[0019] Вторым способом для осуществления продолжения задачи является P2P-соединение (например, беспроводное или проводное ближнего радиуса действия). Продолжая с примером поиска, история поиска может быть скопирована посредством P2P через Bluetooth-соединение. По сравнению с облачным решением, P2P-решение проще в реализации, но для беспроводного соединения, требует, чтобы два устройства оставались в непосредственной близости по время переноса контекста задачи.
[0020] Раскрытая архитектура также находит приложение для панели расширения браузера, поиск "charm" (функция операционной системы Windows 8™), браузеры (например, Internet Explorer™), или другие клиентские приложения. Раскрытая архитектура может также быть расширена для других задач, таких как просмотр веб-страниц, онлайн-конференции, сеансы офисных приложений и т.д. Клиентское приложение (например, клиент 108) собирает состояния каждого приложения (например, ссылки на документы, веб-сайты, информацию онлайн-конференции и т.д.) как часть синхронизации, и использует состояния для возобновления тех же приложений на других устройствах (например, открыть тот же документ обработки текста, браузер для тех же веб-сайтов, повторно присоединиться к онлайн-конференции, и т.д.).
[0021] Теперь делается ссылка на чертежи, где везде подобные ссылочные номера используются для ссылки на подобные элементы. В следующем описании, в целях разъяснения, многочисленные конкретные сведения излагаются для того, чтобы обеспечить их полное понимание. Однако, может быть очевидно, что новаторские варианты осуществления могут быть применены на практике без этих конкретных сведений. В иных случаях, хорошо известные конструкции и устройства показаны в форме блок-схем для того, чтобы облегчить их описание. Замысел состоит в том, чтобы охватить все модификации, эквиваленты и альтернативы, укладывающиеся в сущность и объем заявленного объекта изобретения.
[0022] Фиг. 1 иллюстрирует систему 100 возобновления задач в соответствии с раскрытой архитектурой. Система 100 способствует возобновлению задачи (или задач) первого устройства, для первого устройства (D1) 104, на втором устройстве, например, втором устройстве (D2) 106. В их поддержку, система 100 содержит механизм 102 взаимного соединения (например, беспроводная технология ближнего радиуса действия (например, Bluetooth), облачная служба и т.д.) и клиенты устройств (например, первый клиент (C1) 108 устройства для первого устройства 104, второй клиент (C2) 110 устройства для второго устройства 106, и т.д.), которые обеспечивают возможность обмена данными и сигналами между устройствами (и клиентами) для возобновления задач.
[0023] Клиенты (например, клиент C1, C2, C3, и т.д.) функционируют в координации с программным обеспечением устройства (например, операционной системой, другими приложениями и т.д.) для обеспечения возможности выбора задачи и затем передачи варианта для возобновления обработки задачи на одном или более других устройствах. Клиенты могут быть спроектированы для функционирования совместно с конкретными устройствами, на которых установлен клиент, и более конкретно, только на устройствах, общих для единственного пользователя. Например, один клиент может функционировать совместно на сотовых телефонах (например, первом устройстве 104), другой клиент, спроектированный с возможностью функционировать на компьютерах (например, настольном устройстве D3, переносных вычислительных устройствах D2 и D5 и планшетном компьютере D4), и еще другие клиенты, спроектированные для функционирования на других подходящих устройствах 112.
[0024] При операции, пользователю, выполняющему одну или более задач (например, веб-поиск) на первом устройстве 104, посредством раскрытой архитектуры обеспечивается возможность выбора одной или более задач для возобновления на втором устройстве 106. Первый клиент 108 функционирует с программным обеспечением устройства для представления пользовательского интерфейса (UI) 114 для выбора/переноса и возобновления задачи.
[0025] Взаимодействие пользователя с первым устройством 104, первым клиентом 108 и UI 114 может быть с возможностью жестов, в силу чего пользователь использует один или более жестов для взаимодействия. Например, жесты могут быть жестами естественного пользовательского интерфейса (NUI). NUI может быть задан как любая технология интерфейса, которая обеспечивает пользователю возможность взаимодействия с устройством "естественным" образом, свободным от искусственных ограничений, наложенных устройствами ввода, такими как мыши, клавиатуры, пульты дистанционного управления и подобными. Примеры NUI-способов включают в себя те способы, которые используют жесты, широко заданные в настоящем документе как включающие в себя, но не ограниченные этим, тактильные и нетактильные интерфейсы, такие как распознавание речи, распознавание касания, распознавание лиц, распознавание стилуса, жесты в воздухе (например, позы и перемещения рук и другие движения/позы тела/конечностей), отслеживание головы и глаз, голосовые и речевые высказывания, и машинное обучение, относящееся по меньшей мере к данным зрения, речи, голоса, позы и касания, например.
[0026] NUI-технологии включают в себя, но не ограничены этим, чувствительные к касанию дисплеи, распознавание голоса и речи, понимание намерения и цели, обнаружение движения и жестов с использованием камеры глубины (например, системы стереоскопических камер, системы инфракрасных камер, системы цветных камер и их комбинации), обнаружение движения и жестов с использованием акселерометров/гироскопов, распознавание лиц, 3D дисплеи, отслеживание головы, глаз и взгляда, системы дополненной реальности с эффектом присутствия и виртуальной реальности, все из которых предоставляют более естественный пользовательский интерфейс, также как и технологии для считывания активности мозга с использованием электродов, считывающих активность мозга (например, электроэнцефалограф (EEG)) и другие способы нейробиологической обратной связи.
[0027] Как только представлено с помощью возможности "Выбрать задачу и отправить" в UI 114, пользователь может выбрать одну или более задач (частично завершенную, или взаимосвязанную задачу, где вторая задача инициируется только после завершения предыдущей задачи), чему способствует UI 114 первого устройства 104, затем вызвать исполнение процесса (например, нажав кнопку "Отправить"), при этом все другие пользовательские устройства (D2, D3, D4, D5 и клиенты C2, C3, C4, C5) принимают уведомление (например, "Возобновить задачу?") в соответствующих UI 114. Пользователь может затем перейти к любому из других пользовательских устройств (например, второму устройству 106) и взаимодействовать с уведомлением (например, "Возобновить задачу?") UI 114, чтобы вызвать возобновление одной или более задач на этом втором устройстве 106. Второе устройство 106 запустит все приложения, которые ему требуются для возобновления одной или более задач.
[0028] Может быть случай, когда пользователь на втором устройстве 106 может затем выбрать опять перейти к третьему устройству 116 для возобновления задачи на третьем устройстве 116. Причины сделать это могут быть из-за ограничений по времени (например, имеются только 15 минут для использования перед неожиданным прерыванием) при использовании второго устройства 106, ограничений ресурсов второго устройства 106 (третье устройство 116 имеет больше аппаратных ресурсов, чем второе устройство 106), эксплуатационные ограничения программного обеспечения второго устройства 106 (третье устройство 116 имеет более функциональное программное обеспечение, чем второе устройство 106) и т.д. Другими словами, приложения, которые могут выполнять задачу(и) на первом устройстве 104, могут не быть идентичными приложениям, возобновляющим задачу(и) на втором устройстве 106.
[0029] Может быть случай, когда система 100 выполняет проверку совместимости между приложением или приложениями, используемыми в первом устройстве 104, с приложением или приложениями, доступными на втором устройстве 106, для возобновления задач(и). Результаты проверки совместимости могут быть предоставлены во время процесса выбора, как фоновая операция, так чтобы пользователь мог знать заранее, какое устройство может быть более подходящим или желаемым для возобновления задач(и).
[0030] Как указано ранее, механизм 102 взаимного соединения может быть посредством сетевой облачной службы, однорангового (P2P) соединения, или обоих. Как облачная служба, аппаратные/программные возможности устройства могут быть известны и сохранены "в облаке", так чтобы проверка совместимости выполнялась в отношении данных устройства, хранящихся в облаке и доступных посредством сетевой службы. Для P2P-соединение, клиенты могут включать в себя возможность проверки совместимости, если требуется реализовать.
[0031] Фиг. 2 иллюстрирует более детальную систему 200 возобновления задач в соответствии с раскрытой архитектурой. В этой иллюстрации бок-о-бок по Фиг. 2, показаны два устройства, каждый с клиентом, который обеспечивает возможность раскрытой архитектуры: первое устройство 104 и ассоциированный первый клиент 108, и второе устройство 106 и ассоциированный второй клиент 110.
[0032] Первый клиент 108 может включать в себя компонент 202 выбора, который обеспечивает возможность выбора задачи 204 первого устройства 104 для продолжения на втором устройстве 106. Компонент 206 состояния захватывает состояние 208 контекста на первом устройстве 104, ассоциированном с задачей 204, на основе выбора, сделанного автоматически, или сделанного вручную (пользователем). Состояние 208 контекста содержит одно или более приложений, состояние контрольной точки, и любые другие данные, настройки, сигналы, процессы и т.д., используемые во время или близко ко времени прекращения частично завершенной задачи 204 и функционирующие для способствования завершению задачи на первом устройстве 104.
[0033] Компонент уведомления 210 отправляет уведомление 212 (имеющее аббревиатуру "уведомл" на Фиг. 2) или другой сигнал на второе устройство 106 для продолжения задачи 204 на втором устройстве 106. Уведомление 212 может включать в себя или дополнительно генерировать интерактивный вариант (например, посредством жеста), чтобы утвердить возобновление задачи или отклонить возобновление задачи. Компонент 210 уведомления может также принять и обработать уведомления (сигналы) от других устройств, чтобы способствовать уведомлению на локальном устройстве. Компонент 214 синхронизации (sync) синхронизирует состояние контекста, принятое от другого подходящего устройства (например, состояние 208 контекста первого устройства 104), с локальным состоянием для возобновления задачи, ранее выполняемой на другом устройстве.
[0034] Аналогично, второй клиент 110 второго устройства 106 может включать в себя компонент 220 выбора, который обеспечивает возможность выбора задачи 222 второго устройства 106 для продолжения на первом устройстве 104. Компонент 224 состояния захватывает состояние 226 контекста на втором устройстве 106, ассоциированное с задачей 222, на основе выбора. Состояние 226 контекста содержит одно или более приложений, состояние контрольной точки, и любые другие данные, настройки, сигналы, процессы и т.д., используемые во время или близко ко времени прекращения частично завершенной задачи 222, и функционирующие для способствования завершению задачи 222 на первом устройстве 104.
[0035] Компонент уведомления 228 может отправить уведомление (или сигнал) (не показано) на первое устройство 104 для продолжения задачи 222 на первом устройстве 104. Уведомление может включать в себя или дополнительно генерировать интерактивный вариант (например, посредством жеста), чтобы утвердить возобновление задачи или отклонить возобновление задачи. Компонент 228 уведомления может также принять и обработать уведомления (сигналы) от других устройств, чтобы способствовать уведомлению на локальном устройстве. Компонент 230 синхронизации (sync) синхронизирует состояние 208 контекста первого устройства 104 с локальным состоянием для возобновления задачи 204 на втором устройстве 106.
[0036] Следует понимать, что все пользовательские устройства, которые функционируют в соответствии с раскрытой архитектурой, включают в себя клиент (например, клиент 108), который обеспечивает возможность признаков, описанных в настоящем документе, такие как захват состояния (посредством компонента 206 состояния), выбор (с использованием компонента 202 выбора), уведомление (с использованием компонента 210 уведомления), и синхронизация состояния (с использованием компонента 214 синхронизации), и возможно, распознавание жеста (например, с использованием компонента 216 жестов). Компонент 232 жестов интерпретирует принятый жест для возобновления задачи 204 на втором устройстве 106.
[0037] При односторонней операции, пользователь выбирает выбрать и возобновить (продолжить) частично завершенную задачу 204 первого устройства 104, на втором устройстве 106. Таким образом, первый клиент 108 способствует уведомлению и захвату состояния 208 контекста и его передаче на второй клиент 110 второго устройства 106, либо прямо через P2P-соединение или непрямо через облачную службу. Когда уведомление 212 принимается на втором устройстве 106, UI второго устройства 106 отображает уведомление или подходящую инструкцию реализации пользователю, который может выбрать (посредством жеста, такого как "нажатие" на устройстве отображения) утвердить продолжение задачи 204.
[0038] Как только выбрано, компонент 230 синхронизации принимает и обрабатывает состояние 208 контекста, для синхронизации (изменения) текущего состояния второго устройства 106 с состоянием 208 контекста первого устройства 104. Таким образом, хотя не показано, состояние второго устройства 106 сконфигурировано для состояния 208 контекста первого устройства 104, чтобы включать в себя запуск всех приложений, требуемых для достижения состояния 208 контекста. Может быть случай, когда пользователю представляется другое уведомление, что было достигнуто состояние контекста, в этом случае пользователь может тогда снова начать в этой точке задачи 204.
[0039] Другими словами, состояние контекста захватывается локально в первом устройстве и передается посредством сетевой службы на второе устройство. Состояние контекста захватывается локально в первом устройстве и передается на второе устройство через одноранговое соединение. Состояние контекста ассоциировано с многочисленными приложениями, и многочисленные приложения запускаются на втором устройстве для возобновления задачи. Компонент выбора автоматически выбирает задачу на первом устройстве, которая должна быть возобновлена на втором устройстве. Компонент жестов распознает жест как жест естественного пользовательского интерфейса, чтобы утвердить возобновление задачи на втором устройстве. Первое устройство и второе устройство обычно идентифицируются посредством учетных данных для логического входа (login).
[0040] Фиг. 3 иллюстрирует примерные пользовательские интерфейсы 300 для выбора одной или более задач на одном устройстве и продолжения этих задач на другом устройстве. Первый UI 302 (аналогичный UI 114) на первом устройстве 104 предоставляет пользователю возможность осуществления выбора одной или более задач в процессе выполнения в текущий момент или недавно находившихся в процессе выполнения. Как только выбрано, захватывается состояние контекста, которое задает одно или более приложений, ассоциированных с задачей или задачами, также как и данные приложения, данные контрольной точки и любые другие данные/информация, необходимые для воспроизведения состояния задачи на втором устройстве.
[0041] Здесь, пользователь взаимодействует с сенсорным дисплеем для осуществления выбора первой задачи (задача-1) и третьей задачи (задача-3) для продолжения на втором устройстве. Таким образом, компонент 202 выбора обеспечивает возможность получения текущих задач (например, от операционной системы устройства и журналов приложений), и способствует представлению, выбору и отправке информации задачи, чтобы сгенерировать не только уведомление, но также сигнализировать предназначенному устройству назначения (например, второму устройству 106) для продолжения задач(и).
[0042] Как только отправлено, устройства назначения (например, второе устройство 106) принимают уведомление, которое показано на UI 304 второго устройства 106. Этот UI 304 может просто показывать задачи, первоначально выбранные на отправляющем устройстве (первом устройстве 104), и предоставить пользователю возможность утвердить и начать процесс возобновления задачи на втором устройстве 106, с использованием другого интерпретируемого или распознанного жеста, такого как касание. Как только состояние второго устройства 106 достигает состояния контекста первого устройства 104, может быть представлено другое уведомление для информирования пользователя, что возобновление может теперь начаться на втором устройстве 106. Следует понимать, что в соответствии с NUI-технологиями, пользователь и UI могут использовать любую отдельную или комбинацию технологий для взаимодействия с UI, чтобы вызвать инициализацию выбора и возобновления задачи.
[0043] Фиг. 4 иллюстрирует облачную службу 400 для продолжения задач на устройствах. Служба 400 может предоставить возможности узнать информацию 402 пользовательского устройства, узнать, какие пользовательские устройства доступны по сети в текущий момент или к которым можно осуществить доступ посредством некоторых других средств связи посредством статуса 404 пользовательского устройства, сохранить состояние контекста 406, и предоставить уведомление 408 устройства, например.
[0044] Состояние контекста может быть выгружено в облачную службу 400 из первого устройства 104 на основе предположения, что пользователь пожелает и в конечном счете осуществит выбор возобновления обработки задачи на втором устройстве 106. Например, на основе времени дня или ухода от первого устройства (например, как идентифицируется с использованием информации геолокации (географического размещения), такой как географические координаты широты/долготы), первое устройство 104 может быть выполнено с возможностью автоматического захвата состояния контекста и выгрузки состояния контекста в облачную службу 400 для возможного использования пользователем. Как только пользователь осуществляет доступ к второму устройству 106, например, пользователю будет предоставлен вариант для продолжения возобновления задачи в это время и на этом устройстве. Если отклонено, состояние контекста может быть незамедлительно удалено из облачной службы 400, или сохранено на период времени для воссоздания в дальнейшем. Таким образом, запись прошлых периодов пользовательской активности может быть сохранена.
[0045] Информация 402 пользовательского устройства может записать минимальную информацию устройства, такую как аппаратные/программные возможности, информация для логического входа, идентификационная информация (владения) пользователя и т.д. Статус 404 пользовательского устройства отслеживает доступность пользовательских устройств в любой момент времени, чтобы только отправить уведомления на доступные пользовательские устройства, или чтобы отправить, только когда пользовательские устройства станут доступными.
[0046] Может быть случай, когда служба 400 также способствует отправке уведомления на конкретные пользовательские устройства и не все доступные пользовательские устройства. Это определение может быть на основе возможностей устройства назначения, например. При использовании этой модели, пользовательский интерфейс представляет только набор предлагаемых устройств, на которых пользователь должен продолжить задачу(и), или в качестве альтернативы, может представлять все доступные устройства, но автоматически указывает, какие устройства желательно использовать для продолжения задачи.
[0047] В еще одной реализации, на основе задачи, которая должна быть продолжена, служба 400 предлагает конкретные устройства, чтобы справиться с конкретными задачами. Например, если задача предусматривает тяжелые алгоритмы моделирования, возобновление задачи может быть желательным на настольном устройстве, а не интеллектуальном телефоне из-за известных эксплуатационных возможностей настольного устройства.
[0048] Может быть случай, когда пользовательский интерфейс также предоставляет распечатку сохраненного состояния контекста в службе 400, к которому может быть осуществлен доступ и который может быть возобновлен с любого устройства и как потребуется. Например, вместо модели проталкивания, где первое устройство 104 проталкивает намерение продолжения задачи на другие устройства, может быть использована модель вытягивания, где пользователь может выбрать из любого числа элементов состояния контекста, хранящихся в службе 400, для возобновления на пользовательском устройстве.
[0049] В еще одной реализации, состояние контекста захватывает состояние конкретного приложения на первом устройстве 104 и продолжает состояние контекста того же приложения на втором устройстве 106.
[0050] Содержащееся в настоящем документе является набором граф-схем, представляющим примерные методики для выполнения новаторских аспектов раскрытой архитектуры. Тогда как для целей простоты разъяснения, одна или более показанных в настоящем документе методик, например, в виде граф-схем или блок-схем, показаны и описаны как последовательность действий, это сделано для понимания и оценки того, что методы не ограничены порядком действий, тогда как некоторые действия могут, в соответствии с этим, происходят в разном порядке и/или одновременно с другими действиями из тех, которые показаны и описаны в настоящем документе. Например, специалисты в данной области техники поймут и оценят, что метод может быть альтернативно представлен как последовательности взаимосвязанных состояний или событий, так как показано на диаграмме состояний. Более того, не все проиллюстрированные в методе действия требуются для новаторской реализации.
[0051] Фиг. 5 иллюстрирует способ в соответствии с раскрытой архитектурой. На этапе 500, задачу первого устройства выбирают для продолжения на втором устройстве. На этапе 502, захватывают состояние контекста первого устройства, относящееся к задаче. На этапе 504, уведомление отправляют на второе устройство, которое обеспечивает возможность продолжения задачи на втором устройстве. На этапе 506, принимают жест на втором устройстве, который взаимодействует с уведомлением для утверждения продолжения задачи на втором устройстве. Жест может также быть использован на первом устройстве для инициализации процесса продолжения задачи. На этапе 508, состояние контекста первого устройства отправляют на второе устройство. На этапе 510, состояние второго устройства синхронизируют с состоянием контекста первого устройства. На этапе 512, задачу возобновляют на втором устройстве согласно состоянию контекста.
[0052] Способ может дополнительно содержать захват контекста контрольной точки, как состояния контекста или части состояния контекста первого устройства. Способ может дополнительно содержать отправку состояния контекста из первого устройства на второе устройство посредством соединения беспроводной связи ближнего радиуса действия (например, Bluetooth). Способ может дополнительно содержать отправку состояния контекста и уведомления на второе устройство посредством сетевой службы (например, облачной службы). Способ может дополнительно содержать распознавание жестов, таких как тактильный контакт с сенсорным дисплеем второго устройства. Способ может дополнительно содержать обеспечение возможности автоматического и/или ручного выбора задачи на первом устройстве.
[0053] Способ может дополнительно содержать отправку уведомления на второе устройство и другие устройства пользователя, причем второе устройство и другие устройства, ассоциированные с первым устройством посредством идентификатора пользователя для логического входа. Способ может дополнительно содержать автоматический вход клиентского приложения каждого из первого устройства, второго устройства и других устройств в сетевую службу для отправки уведомления и состояния контекста. Способ может дополнительно содержать запуск одного или более приложений на втором устройстве, которые задают состояние контекста первого устройства, и возобновляют задачу.
[0054] Фиг. 6 иллюстрирует альтернативный способ в соответствии с раскрытой архитектурой. На этапе 600, частично завершенную задачу первого устройства выбирают для возобновления на одном из многочисленных других устройств. На этапе 602, захватывают состояние приложения первого устройства, относящееся к задаче. На этапе 604, отправляют уведомление на многочисленные другие устройства. На этапе 606, принимают жест на одном из многочисленных устройств, который взаимодействует с уведомлением для инициализации возобновления задачи на втором устройстве. На этапе 608, состояние приложения первого устройства отправляют на одно из многочисленных других устройств. На этапе 610, состояние приложения одного из многочисленных других устройств синхронизируют с состоянием приложения первого устройства. На этапе 612, частично завершенную задачу возобновляют на одном из многочисленных других устройств на основе состояния приложения, принятого из первого устройства.
[0055] Способ может дополнительно содержать отправку состояния приложения одного или более приложений первого устройства на одно из многочисленных устройств посредством сетевой службы. Способ может дополнительно содержать отправку уведомления и состояния приложения из первого устройства на одно из многочисленных устройств посредством соединения беспроводной связи ближнего радиуса действия или облачной службы. Способ может дополнительно содержать автоматический запуск совместимого приложения одного из многочисленных устройств и возобновление частично завершенной задачи с использованием приложения.
[0056] Используемые в этой заявке термины, такие как "компонент" и "система" предназначены указывать на компьютерную принадлежность аппаратных средств, комбинации программного обеспечения и материальных аппаратных средств, программного обеспечения или исполняемого программного обеспечения. Например, компонентом могут быть, но не ограничены этим, материальные компоненты, такие как процессор, чип памяти, устройства хранения большого объема (например, накопители на оптических дисках, твердотельные накопители, и/или накопители на магнитных носителях информации), и компьютеры, и программные компоненты, такие как процесс, выполняемый на процессоре, объект, исполняемая программа, структура данных (хранящаяся на энергозависимом или энергонезависимом носителе информации), модуль, поток исполнения и/или программа.
[0057] Посредством иллюстрации, компонентом могут быть как приложение, выполняемое на сервере, так и сервер. Один или более компонентов могут находиться внутри процесса и/или потока исполнения и компонент может быть локализован на компьютере и/или распределен между двумя или более компьютерами. Слово "примерный" может использоваться в настоящем документе в значении, выполняющем функцию примера, отдельного случая или иллюстрации. Любой аспект или проект, описанный в настоящем документе как "примерный", необязательно должен трактоваться как предпочтительный или выгодный относительно других аспектов или проектов.
[0058] Обращаясь теперь к Фиг. 7, проиллюстрирована блок-схема вычислительной системы 700, которая исполняет продолжение задачи в соответствии с раскрытой архитектурой. Однако, понятно, что некоторые или все аспекты раскрытых способов и/или систем могут быть реализованы как система на кристалле, где аналоговые, цифровые, смешанные сигналы и другие функции сформированы на однокристальной подложке.
[0059] Для того, чтобы предоставить дополнительный контекст для различных его аспектов, Фиг. 7 и нижеследующее описание предназначены для предоставления краткого, общего описания подходящей вычислительной системы 700, в которой могут быть реализованы различные аспекты. Тогда как вышеописанное находится в общем контексте исполняемых компьютером инструкций, которые могут выполняться на одном или более компьютерах, специалисты в данной области техники поймут, что новаторский вариант осуществления также может быть реализован в комбинации с другими программными модулями и/или как комбинация аппаратных средств и программного обеспечения.
[0060] Вычислительная система 700 для реализации различных аспектов включает в себя компьютер 702, имеющий блок(и) 704 обработки(s) (также называемый микропроцессором(ами) и процессором(ами)), компьютерно-читаемый носитель информации, такой как системная память 706 (компьютерно-читаемый носитель/носители информации также включают в себя магнитные диски, оптические диски, твердотельные накопители, системы внешней памяти, и накопители на flash-памяти), и системную шину 708. Блоком(ами) 704 обработки могут являться любые коммерчески доступные процессоры, такие как одиночный процессор, мультипроцессор, одноядерные блоки и многоядерные блоки. Более того, специалисты в данной области техники поймут, что новаторские способы могут быть применены на практике с другими конфигурациями вычислительных систем, включающими в себя миникомпьютеры, мейнфреймы, равно как и персональные компьютеры (например, настольный, портативный, планшетный ПК и т.д.), карманные вычислительные устройства, основанную на микропроцессоре или программируемую потребительскую электронику и подобное, каждое из которых может оперативно соединяться с одним или более ассоциированными устройствами.
[0061] Компьютером 702 может быть один из нескольких компьютеров, используемых в центре обработки данных, и/или вычислительные ресурсы (аппаратные и/или программные) при поддержке облачных вычислительных служб для портативных и/или мобильных вычислительных систем, таких как сотовые телефоны и другие устройства с мобильными возможностями. Облачные вычислительные службы, включают в себя, но не ограничены этим, инфраструктуру как службу, платформу как службу, программное обеспечение как службу, хранилище как службу, настольный компьютер как службу, данные как службу, безопасность как службу, и API (интерфейсы прикладных программ) как службу, например.
[0062] Системная память 706 может включать в себя компьютерно-читаемый носитель информации (физическое хранилище), такой как энергозависимая (VOL) память 710 (например, оперативная память (RAM)) и энергонезависимая память (NON-VOL) 712 (например, ROM, EPROM, EEPROM, и т.д.). Базовая система ввода/вывода (BIOS) может храниться в энергонезависимой памяти 712 и содержит базовые стандартные программы, которые способствуют передаче данных и сигналов между компонентами внутри компьютера 702, как например, во время запуска. Энергозависимая память 710 может также содержать высокоскоростную RAM, такую как статическая RAM, для кэширования данных.
[0063] Системная шина 708 предоставляет блоку(ам) 704 обработки интерфейс для компонентов системы, включающих в себя, но не ограниченных этим, системную память 706. Системная шина 708 может быть любой из нескольких типов конструкций шин, которая может дополнительно взаимно соединяться с шиной памяти (с или без контроллера памяти), и периферийной шиной (например, PCI, PCIe, AGP, LPC и т.д.), с использованием любой из многообразия коммерчески доступных архитектур шин.
[0064] Компьютер 702 дополнительно включает в себя машиночитаемую подсистему(ы) 714 хранения данных и интерфейс(ы) 716 хранения данных для взаимодействия подсистем(ы) 714 хранения данных с системной шиной 708 и другими желаемыми компонентами компьютера. Подсистема(ы) 714 хранения данных (физические носители информации) может содержать один или более из накопителя на жестком диске (HDD), накопителя на гибких магнитных дисках (FDD), твердотельного накопителя и/или накопителя на оптических дисках (например, дисковода CD-ROM, дисковода DVD), например. Интерфейс(ы) 716 хранения данных может содержать такие технологии интерфейсов как EIDE, ATA, SATA и IEEE 1394, например.
[0065] Одна или более программ или данных могут храниться в подсистеме 706 памяти, подсистеме 718 машино-читаемой и съемной памяти (например, технология форм-фактора flash-накопителя) и/или подсистеме(ах) 714 хранения данных (например, оптической, магнитной, твердотельной), содержащей операционную систему 720, одну или более прикладных программ 722, другие программные модули 724 и программные данные 726.
[0066] Операционная система 720, одна или более прикладных программ 722, другие программные модули 724 и/или программные данные 726 могут включать в себя объекты и компоненты системы 100 по Фиг. 1, объекты и компоненты системы 200 по Фиг. 2, объекты и последовательность операций примерных пользовательских интерфейсов 300 по Фиг. 3, объекты и компоненты облачной службы 400 по Фиг. 4, и способы, представленные схемами последовательностей операций по Фигурам 5 и 6, например.
[0067] В общем, программы содержат стандартные программы, способы, структуры данных, другие программные компоненты и так далее, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Вся или части операционной системы 720, приложения 722, модули 724 и/или данные 726 могут также кэшироваться в память, такую как например, энергозависимая память 710. Следует понимать, что раскрытая архитектура может быть реализована с использованием различных коммерчески доступных операционных систем или комбинаций операционных систем (например, как виртуальные машины).
[0068] Подсистема(ы) 714 хранения данных и подсистемы (706 и 718) памяти служат в качестве машиночитаемых носителей данных для энергозависимого и энергонезависимого хранилища данных, структур данных, исполняемых компьютером инструкций и т.д. Такие инструкции, при исполнении компьютером или другой машиной, могут предписывать компьютеру или другой машине выполнить одно или более действий способа. Инструкции для выполнения действий могут храниться на одном носителе, или могут храниться на многочисленных носителях, так что инструкции появляются коллективно на одном или более компьютерно-читаемом носителе/носителях информации, независимо от того, находятся ли все инструкции на одном носителе.
[0069] Компьютерно-читаемые носители (носитель) информации исключают (исключает) распространяющиеся сигналы сами по себе, к ним может быть осуществлен доступ посредством компьютера 702, и включают в себя энергозависимые и энергонезависимые внутренние и/или внешние носители, которые являются съемными и/или несъемными. Для компьютера 702, различные типы накопителей предоставляют хранение данных в любом подходящем цифровом формате. Специалистам в данной области техники должно быть понятно, что могут использоваться разные типы машино-читаемого носителя данных, такие как zip-накопители, твердотельные накопители, магнитная пленка, карты флэш-памяти, картриджи и подобные, для хранения исполняемых компьютером инструкций для выполнения новаторских способов (действий) раскрытой архитектуры.
[0070] Пользователь может взаимодействовать с компьютером 702, программами и данными с использованием внешних устройств 728 пользовательского ввода, таких как клавиатура и мышь, также как посредством голосовых команд, которым способствует распознавание речи. Другие внешние устройства 728 пользовательского ввода могут содержать микрофон, ИК (инфракрасный) пульт управления, джойстик, игровой контроллер, систему распознавания на основе камер, перо, сенсорный экран, системы жестов (например, движение глаз, движение головы и т.д.) и/или подобное. Пользователь может взаимодействовать с компьютером 702, программами и данными, используя встроенные устройства 730 пользовательского ввода, такие как сенсорная панель, микрофон, клавиатура и т.д., где компьютер 702 является портативным компьютером, например.
[0071] Эти и другие устройства ввода соединены с блоком(ами) 704 обработки посредством интерфейса(ов) 732 устройства ввода/вывода (I/O) через системную шину 708, но могут быть соединены посредством других интерфейсов, таких как параллельный порт, последовательный порт IEEE 1394, игровой порт, USB порт, ИК интерфейс, беспроводная технология ближнего радиуса действия (например, Bluetooth) и другие технологии персональной сети (PAN), и т.д. Интерфейс(ы) 732 устройства ввода/вывода также способствует использованию периферийных устройств 734 вывода, таких как принтеры, аудиоустройства, камеры и так далее, таких как звуковая карта и/или встроенная возможность обработки аудио.
[0072] Один или более графических интерфейсов 736 (также обычно указанные как графический процессор (GPU)) обеспечивают графические и видеосигналы между компьютером 702 и внешним(и) дисплеем(ями) 738 (например, LCD, плазмой) и/или встроенным дисплеем 740 (например, для портативного компьютера). Графический(е) интерфейс(ы) 736 может(гут) также производиться как часть системной платы компьютера.
[0073] Компьютер 702 может работать в сетевом окружении (например, на основе IP) с использованием логических соединений посредством подсистемы 742 проводной/беспроводной связи с одной или более сетями и/или другими компьютерами. Другие компьютеры могут содержать рабочие станции, серверы, роутеры, персональные компьютеры, развлекательные устройства на основе микропроцессоров, одноранговые устройства или другие общие сетевые узлы, и обычно включают в себя многие или все из описанных элементов, относящихся к компьютеру 702. Логические соединения могут содержать возможность установления проводной/беспроводной связи с локальной сетью (LAN), глобальной сетью (WAN), точкой доступа и т.д. Сетевые окружения LAN и WAN размещаются в офисах и компаниях и обеспечивают в масштабе предприятия компьютерные сети, такие как интранет, каждая из которых может соединяться с глобальной сетью связи, такой как Интернет.
[0074] При использовании в сетевом окружении, компьютер 702 соединяется с сетью посредством подсистемы 742 проводной/беспроводной связи (например, адаптера сетевого интерфейса, встроенной приемопередающей подсистемой и т.д.) для осуществления связи с проводными/беспроводными сетями, проводными/беспроводными принтерами, проводными/беспроводными устройствами 744 ввода и т.д. Компьютер 702 может содержать модем или другие средства для установления связи по сети. В сетевом окружении, программы и данные, относящиеся к компьютеру 702, могут храниться на удаленном запоминающем устройстве/устройстве хранения, которое связано с распределенной системой. Будет понятно, что показанные сетевые соединения являются примерными и могут использоваться другие средства установления канала связи между компьютерами.
[0075] Компьютер 702 функционирует с возможностью осуществления связи с проводными/беспроводными устройствами или объектами с использованием радиотехнологий, таких как семейство стандартов IEEE 802.xx, такими как беспроводные устройства, оперативно расположенные в беспроводной связи (например, беспроводные способы модуляции IEEE 802.11), например, с принтером, сканером, настольным компьютером и/или портативным компьютером, карманным персональным компьютером (PDA), спутником связи, любой частью оборудования или размещением, ассоциированным с обнаруживаемой беспроводным образом меткой (например, киоском, газетным киоском, туалетом), и телефоном. Это включает в себя по меньшей мере Wi-Fi™ (используемый для сертификации возможности взаимодействия беспроводных компьютерных сетевых устройств) для беспроводных технологий точек доступа, WiMax, и Bluetooth™. Таким образом, связь может быть заранее заданной структурой, как со стандартной сетью или просто специализированной связью между по меньшей мере двумя устройствами. Wi-Fi сети используют радиотехнологии, называемые IEEE 802.11x (a, b, g и т.д.), для обеспечения безопасности, надежности, возможности установления быстрой беспроводной связи. Wi-Fi сеть может быть использована для соединения компьютеров друг с другом, с Интернетом и с проводными сетями (которые используют относящуюся к IEEE 802.3 технологию и функции).
[0076] То, что было описано выше, содержит примеры раскрытой архитектуры. Конечно, невозможно описать каждую мыслимую комбинацию компонентов и/или методик, но средний специалист в данной области техники может понять, что возможны множество дополнительных комбинаций и перестановок. Соответственно, новаторская архитектура предназначена объять все такие изменения, модификации и вариации, которые укладываются в сущность и объем прилагаемой формулы изобретения. Кроме того, в той степени, в которой термин "включает в себя" используют в подробном описании или в формуле изобретения, предполагают, что охват этого термина схож с таковым термина "содержащий", так как "содержащий" интерпретируют при использовании в качестве переходного слова в формуле изобретения.

Claims (39)

1. Система для продолжения задач между устройствами, содержащая:
компонент выбора, который обеспечивает возможность выбора, из элемента пользовательского интерфейса первого устройства, множества задач, выполняющихся в первом устройстве, для продолжения на втором устройстве;
компонент состояния, который захватывает состояние контекста на первом устройстве для каждой задачи, выбранной из элемента пользовательского интерфейса первого устройства;
компонент уведомления, который отправляет на второе устройство уведомление о состоянии контекста, при этом данное уведомление отображается на втором устройстве и содержит список, включающий в себя каждую задачу, выбранную из элемента пользовательского интерфейса первого устройства, причем данный список содержит выбираемые функции пользовательского интерфейса для конкретного выбора одной или более задач из каждой из задач, выбранных из элемента пользовательского интерфейса первого устройства, для продолжения на втором устройстве в захваченном состоянии контекста с первого устройства для каждой из одной или более конкретно выбранных задач;
компонент жестов, который интерпретирует, на втором устройстве, принятый жест, которым осуществляется взаимодействие с упомянутым уведомлением для выбора одной или более задач из упомянутого списка на втором устройстве;
компонент синхронизации, который синхронизирует, на втором устройстве, на основе принятого жеста состояние для каждой из одной или более задач, которые выбраны пользователем на втором устройстве, с соответствующим состоянием контекста с первого устройства; и
по меньшей мере один микропроцессор, который исполняет машиноисполняемые инструкции, ассоциированные с каждым из компонента выбора, компонента уведомления, компонента жестов, компонента состояния и компонента синхронизации.
2. Система по п. 1, при этом состояние контекста захватывается локально в первом устройстве и передается через сетевую службу на второе устройство.
3. Система по п. 1, при этом состояние контекста захватывается локально в первом устройстве и передается на второе устройство через одноранговое соединение.
4. Система по п. 1, при этом состояние контекста ассоциировано с множеством приложений, и это множество приложений запускается на втором устройстве для возобновления упомянутых одной или более отдельных задач.
5. Система по п. 1, при этом упомянутые одна или более задач содержат первую задачу, которая на текущий момент выполняется на первом устройстве, и вторую задачу, которая выполнялась на первом устройстве прежде.
6. Система по п. 1, в которой компонент жестов распознает жест как жест естественного пользовательского интерфейса, чтобы утвердить возобновление упомянутых одной или более задач на втором устройстве.
7. Система по п. 1, в которой первое устройство и второе устройство ассоциированы посредством учетных данных для логического входа.
8. Способ продолжения задач между устройствами, содержащий этапы, на которых:
захватывают состояние контекста первого устройства, при этом состояние контекста ассоциировано с множеством задач, соответствующих первому устройству;
принимают сделанный пользователем выбор по меньшей мере одной из множества задач из элемента пользовательского интерфейса на первом устройстве, в котором отображается каждая из множества задач;
отправляют уведомление на второе устройство, при этом данное уведомление содержит список упомянутой по меньшей мере одной выбранной пользователем задачи, причем данный список содержит выбираемые функции пользовательского интерфейса для выбора одной или более задач из упомянутой по меньшей мере одной выбранной пользователем задачи для продолжения на втором устройстве в захваченном состоянии контекста с первого устройства;
принимают указание жеста в упомянутом списке на втором устройстве, которым осуществляется взаимодействие с упомянутым уведомлением, причем данное указание содержит сделанный пользователем выбор одной или более отдельных задач из этого списка;
отправляют состояние контекста первого устройства на второе устройство на основе приема упомянутого указания жеста;
синхронизируют состояние второго устройства с состоянием контекста первого устройства для возобновления упомянутых одной или более отдельных задач, выбранных из списка, на втором устройстве.
9. Способ по п. 8, дополнительно содержащий этап, на котором захватывают контекст контрольной точки как состояние контекста первого устройства.
10. Способ по п. 8, дополнительно содержащий этап, на котором отправляют состояние контекста из первого устройства во второе устройство через соединение беспроводной связи ближнего радиуса действия.
11. Способ по п. 8, дополнительно содержащий этап, на котором отправляют состояние контекста и упомянутое уведомление во второе устройство через сетевую службу.
12. Способ по п. 8, дополнительно содержащий этап, на котором распознают жест как тактильный контакт с сенсорным дисплеем второго устройства.
13. Способ по п. 8, дополнительно содержащий обеспечение возможности автоматического или ручного выбора одной или более отдельных задач на первом устройстве.
14. Способ по п. 8, дополнительно содержащий этап, на котором отправляют упомянутое уведомление на второе устройство и другие устройства пользователя, причем второе устройство и эти другие устройства ассоциированы с первым устройством посредством идентификатора пользователя для логического входа.
15. Способ по п. 14, дополнительно содержащий автоматический логический вход на каждом из первого устройства, второго устройства и упомянутых других устройств в сетевую службу для отправки упомянутого уведомления и состояния контекста.
16. Способ по п. 8, дополнительно содержащий этап, на котором запускают одно или более приложений на втором устройстве, которые задают состояние контекста первого устройства и возобновляют упомянутые одну или более отдельных задач.
17. Машиночитаемый носитель, содержащий машиноисполняемые инструкции, которые при их исполнении процессором предписывают процессору выполнять действия по:
захвату состояния приложения первого устройства, причем состояние приложения ассоциировано с множеством задач, соответствующих первому устройству;
приему сделанного пользователем выбора по меньшей мере одной из множества задач из элемента пользовательского интерфейса на первом устройстве, в котором отображается каждая из множества задач;
отправке уведомления на второе устройство, при этом данное уведомление содержит список упомянутой по меньшей мере одной выбранной пользователем задачи, причем данный список содержит выбираемые функции пользовательского интерфейса для выбора одной или более задач из упомянутой по меньшей мере одной выбранной пользователем задачи для продолжения на втором устройстве в захваченном состоянии контекста с первого устройства;
приему жеста в упомянутом списке на втором устройстве, который содержит выбор одной или более отдельных задач из данного списка;
отправке состояния приложения первого устройства во второе устройство на основе принятого жеста;
синхронизации состояния приложения второго устройства с состоянием приложения первого устройства; и
возобновлению упомянутых одной или более отдельных задач, выбранных из списка на основе принятого жеста, на втором устройстве на основе состояния приложения, принятого из первого устройства.
18. Машиночитаемый носитель по п. 17, в котором упомянутые действия дополнительно содержат отправку состояния приложения одного или более приложений первого устройства во второе устройство через сетевую службу.
19. Машиночитаемый носитель по п. 17, в котором упомянутые действия дополнительно содержат отправку упомянутого уведомления и состояния приложения во второе устройство через соединение беспроводной связи ближнего радиуса действия или облачную службу.
20. Машиночитаемый носитель по п. 17, в котором упомянутые действия дополнительно содержат автоматический запуск совместимых приложений второго устройства и продолжение упомянутых одной или более отдельных задач с использованием этих приложений.
RU2015151572A 2013-06-03 2014-05-30 Продолжение задач между устройствами RU2679242C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/908,468 US20140359637A1 (en) 2013-06-03 2013-06-03 Task continuance across devices
US13/908,468 2013-06-03
PCT/US2014/040102 WO2014197279A1 (en) 2013-06-03 2014-05-30 Task continuance across devices

Publications (2)

Publication Number Publication Date
RU2015151572A RU2015151572A (ru) 2017-06-06
RU2679242C2 true RU2679242C2 (ru) 2019-02-06

Family

ID=51059609

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015151572A RU2679242C2 (ru) 2013-06-03 2014-05-30 Продолжение задач между устройствами

Country Status (11)

Country Link
US (1) US20140359637A1 (ru)
EP (1) EP3005112A1 (ru)
JP (1) JP2016521878A (ru)
KR (1) KR20160014639A (ru)
CN (1) CN105324754A (ru)
AU (1) AU2014275251A1 (ru)
BR (1) BR112015030262A2 (ru)
CA (1) CA2913917A1 (ru)
RU (1) RU2679242C2 (ru)
TW (1) TWI641955B (ru)
WO (1) WO2014197279A1 (ru)

Families Citing this family (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
EP3767463B1 (en) 2011-06-05 2024-02-21 Apple Inc. Systems and methods for displaying notifications received from multiple applications
US8769624B2 (en) 2011-09-29 2014-07-01 Apple Inc. Access control utilizing indirect authentication
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
US9804759B2 (en) 2012-05-09 2017-10-31 Apple Inc. Context-specific user interfaces
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US20150040008A1 (en) * 2013-08-02 2015-02-05 Gamer Parents Inc. Interactive overlay for video applications
JP2016508007A (ja) 2013-02-07 2016-03-10 アップル インコーポレイテッド デジタルアシスタントのためのボイストリガ
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US20160306996A1 (en) * 2014-01-03 2016-10-20 Mcafee, Inc. Social drive for sharing data
JP6703370B2 (ja) * 2014-03-14 2020-06-03 国立大学法人 東京大学 ドキュメント提供システム、提供側装置、表示側装置、及びプログラム
US20150350146A1 (en) 2014-05-29 2015-12-03 Apple Inc. Coordination of message alert presentations across devices based on device modes
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9967401B2 (en) 2014-05-30 2018-05-08 Apple Inc. User interface for phone call routing among devices
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
JP6328797B2 (ja) * 2014-05-30 2018-05-23 アップル インコーポレイテッド 1つのデバイスの使用から別のデバイスの使用への移行
AU2015100490C4 (en) * 2014-05-30 2017-04-13 Apple Inc. Continuity
CN106462340B (zh) 2014-06-27 2019-09-13 苹果公司 尺寸减小的用户界面
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
EP3195098A2 (en) 2014-07-21 2017-07-26 Apple Inc. Remote user interface
CN104123191A (zh) * 2014-07-31 2014-10-29 北京智谷睿拓技术服务有限公司 任务迁移控制方法、装置和系统
US10243891B2 (en) * 2014-08-14 2019-03-26 Oath Inc. Cross-device integration system and method
US10339293B2 (en) 2014-08-15 2019-07-02 Apple Inc. Authenticated device used to unlock another device
EP4209872A1 (en) 2014-09-02 2023-07-12 Apple Inc. Phone user interface
US9621650B2 (en) 2014-09-30 2017-04-11 Google Inc Mobile application state identifier framework
US11531672B1 (en) * 2015-02-05 2022-12-20 Bat City Labs, LLC Computerized system and method for electronically synchronizing work station sessions over a network
US10055121B2 (en) 2015-03-07 2018-08-21 Apple Inc. Activity based thresholds and feedbacks
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US9591685B2 (en) * 2015-07-21 2017-03-07 Qualcomm Incorporated Efficient application synchronization using out-of-band device-to-device communication
US20170054767A1 (en) * 2015-08-17 2017-02-23 Google Inc. Transferring application state between devices
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10430040B2 (en) 2016-01-18 2019-10-01 Microsoft Technology Licensing, Llc Method and an apparatus for providing a multitasking view
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
US10637986B2 (en) 2016-06-10 2020-04-28 Apple Inc. Displaying and updating a set of application views
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201770423A1 (en) 2016-06-11 2018-01-15 Apple Inc Activity and workout updates
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
US10261830B2 (en) * 2016-06-14 2019-04-16 Microsoft Technology Licensing, Llc Cross-device task execution
US10466891B2 (en) * 2016-09-12 2019-11-05 Apple Inc. Special lock mode user interface
US11204787B2 (en) * 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10754685B2 (en) * 2017-03-03 2020-08-25 Microsoft Technology Licensing Llc Cross-device task registration and resumption
US11070647B1 (en) * 2017-03-14 2021-07-20 Parallels International Gmbh Seamless cross-platform synchronization of user activities and application data between mobile and desktop devices
US10693748B2 (en) * 2017-04-12 2020-06-23 Microsoft Technology Licensing, Llc Activity feed service
US11431836B2 (en) 2017-05-02 2022-08-30 Apple Inc. Methods and interfaces for initiating media playback
US10992795B2 (en) 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
CN111343060B (zh) 2017-05-16 2022-02-11 苹果公司 用于家庭媒体控制的方法和界面
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US20220279063A1 (en) 2017-05-16 2022-09-01 Apple Inc. Methods and interfaces for home media control
CN107273427B (zh) * 2017-05-18 2020-09-01 武汉大学 基于数据融合的跨设备网络信息搜索方法及系统
US11385930B2 (en) * 2017-06-21 2022-07-12 Citrix Systems, Inc. Automatic workflow-based device switching
US11580088B2 (en) 2017-08-11 2023-02-14 Microsoft Technology Licensing, Llc Creation, management, and transfer of interaction representation sets
US11531940B2 (en) 2017-09-27 2022-12-20 Microsoft Technology Licensing, Llc Implicit status tracking of tasks and management of task reminders based on device signals
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10637942B1 (en) * 2018-12-05 2020-04-28 Citrix Systems, Inc. Providing most recent application views from user devices
US11438435B2 (en) * 2019-03-01 2022-09-06 Microsoft Technology Licensing, Llc User interaction and task management using multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
EP3948517A1 (en) 2019-05-31 2022-02-09 Apple Inc. User interfaces for audio media control
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11010121B2 (en) 2019-05-31 2021-05-18 Apple Inc. User interfaces for audio media control
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11481094B2 (en) 2019-06-01 2022-10-25 Apple Inc. User interfaces for location-related communications
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11477609B2 (en) 2019-06-01 2022-10-18 Apple Inc. User interfaces for location-related communications
CN112312367A (zh) 2019-08-01 2021-02-02 联发科技(新加坡)私人有限公司 蓝牙通信方法及通信设备
WO2021068115A1 (en) 2019-10-08 2021-04-15 Citrix Systems, Inc. Application and device recommendation engine
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
JP2022041339A (ja) * 2020-09-01 2022-03-11 富士通株式会社 選択プログラム、情報処理装置および制御方法
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
CN112307405B (zh) * 2020-11-16 2024-03-22 Oppo广东移动通信有限公司 跨设备的应用接力方法、装置、设备、系统及存储介质
US11907605B2 (en) 2021-05-15 2024-02-20 Apple Inc. Shared-content session user interfaces
US11449188B1 (en) 2021-05-15 2022-09-20 Apple Inc. Shared-content session user interfaces
US11847378B2 (en) 2021-06-06 2023-12-19 Apple Inc. User interfaces for audio routing
US11799971B2 (en) * 2022-02-17 2023-10-24 Bank Of America Corporation Systems and methods for session migration between devices
WO2023239708A1 (en) * 2022-06-07 2023-12-14 Canon U.S.A., Inc. System and method for authenticating presence in a room
CN116700914A (zh) * 2022-11-22 2023-09-05 荣耀终端有限公司 任务流转方法及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090106571A1 (en) * 2007-10-21 2009-04-23 Anthony Low Systems and Methods to Adaptively Load Balance User Sessions to Reduce Energy Consumption
RU2406265C2 (ru) * 2007-10-15 2010-12-10 ЭлДжи ЭЛЕКТРОНИКС ИНК. Устройство связи и способ в нем для предоставления информации о местоположении
US20120070090A1 (en) * 2010-09-17 2012-03-22 Google Inc. Moving information between computing devices
US20120096069A1 (en) * 2010-10-13 2012-04-19 Google Inc. Continuous application execution between multiple devices

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080159B2 (en) * 2000-12-15 2006-07-18 Ntt Docomo, Inc. Method and system for effecting migration of application among heterogeneous devices
JP2003242106A (ja) * 2002-02-14 2003-08-29 Sony Communication Network Corp 情報同期方法とこの方法を利用可能な情報同期装置および情報端末
US8713418B2 (en) * 2004-04-12 2014-04-29 Google Inc. Adding value to a rendered document
WO2005109829A1 (en) * 2004-05-06 2005-11-17 Koninklijke Philips Electronics N.V. Method device and program for seamlessly transferring the execution of a software application from a first to a second device
US20070021216A1 (en) * 2005-07-19 2007-01-25 Sony Ericsson Mobile Communications Ab Seamless gaming method and apparatus
US8583090B2 (en) * 2006-12-29 2013-11-12 Nokia Corporation Transferring task completion to another device
TW200933370A (en) * 2008-01-25 2009-08-01 Inventec Corp Interactive data synchronizing device, system and method therein with cross-platform feature
US8060582B2 (en) * 2008-10-22 2011-11-15 Google Inc. Geocoding personal information
WO2010105245A2 (en) * 2009-03-12 2010-09-16 Exbiblio B.V. Automatically providing content associated with captured information, such as information captured in real-time
JP2011076251A (ja) * 2009-09-29 2011-04-14 Nec Personal Products Co Ltd リモート操作システム、クライアント装置、サーバ、通信方法、プログラム及び記録媒体
US8437779B2 (en) * 2009-10-19 2013-05-07 Google Inc. Modification of dynamic contact lists
US20110219105A1 (en) * 2010-03-04 2011-09-08 Panasonic Corporation System and method for application session continuity
US8600803B1 (en) * 2010-05-18 2013-12-03 Google Inc. Incentivizing behavior to address pricing, tax, and currency issues in an online marketplace for digital goods
US8473949B2 (en) * 2010-07-08 2013-06-25 Microsoft Corporation Methods for supporting users with task continuity and completion across devices and time
US8667057B1 (en) * 2010-10-01 2014-03-04 Google Inc. Method and system for delivering object update messages including payloads
KR101780021B1 (ko) * 2010-10-18 2017-10-11 삼성전자주식회사 네트워크 인터페이스의 자동 설정에 기초해 인터넷 연결을 공유하는 방법 및 장치
GB201021875D0 (en) * 2010-12-23 2011-02-02 Antix Labs Ltd Methods of distributing software
US10631246B2 (en) * 2011-02-14 2020-04-21 Microsoft Technology Licensing, Llc Task switching on mobile devices
US8996729B2 (en) * 2012-04-12 2015-03-31 Nokia Corporation Method and apparatus for synchronizing tasks performed by multiple devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2406265C2 (ru) * 2007-10-15 2010-12-10 ЭлДжи ЭЛЕКТРОНИКС ИНК. Устройство связи и способ в нем для предоставления информации о местоположении
US20090106571A1 (en) * 2007-10-21 2009-04-23 Anthony Low Systems and Methods to Adaptively Load Balance User Sessions to Reduce Energy Consumption
US20120070090A1 (en) * 2010-09-17 2012-03-22 Google Inc. Moving information between computing devices
US20120096069A1 (en) * 2010-10-13 2012-04-19 Google Inc. Continuous application execution between multiple devices

Also Published As

Publication number Publication date
KR20160014639A (ko) 2016-02-11
EP3005112A1 (en) 2016-04-13
BR112015030262A2 (pt) 2017-07-25
AU2014275251A1 (en) 2015-12-17
JP2016521878A (ja) 2016-07-25
RU2015151572A (ru) 2017-06-06
CA2913917A1 (en) 2014-12-11
WO2014197279A1 (en) 2014-12-11
TW201508492A (zh) 2015-03-01
CN105324754A (zh) 2016-02-10
US20140359637A1 (en) 2014-12-04
TWI641955B (zh) 2018-11-21
WO2014197279A9 (en) 2015-02-26

Similar Documents

Publication Publication Date Title
RU2679242C2 (ru) Продолжение задач между устройствами
US20210243409A1 (en) Instant Video Communication Connections
EP3437262B1 (en) Multi-modal conversational intercom
CN107209781B (zh) 使用自然语言的上下文搜索
RU2700188C2 (ru) Представление вычислительной среды на множественных устройствах
JP2017184242A (ja) 電子デバイス間の状態情報の転送
US9544540B2 (en) Dynamic display of video communication data
KR102078894B1 (ko) 실시간 통신 및 경험 공유 세션 동안 서비스를 업데이트하는 기법
US9232187B2 (en) Dynamic detection of pause and resume for video communications
US9232188B2 (en) Dynamic transition from video messaging to video communication
EP3135031B1 (en) Dynamic display of video communication data
KR102460105B1 (ko) 컨퍼런스 서비스의 제공 방법 및 그 장치
WO2016040200A1 (en) Accessibility features in content sharing
WO2018164781A1 (en) Shared experiences

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20200531