Application interface
-
0Associated
Cases -
0Associated
Defendants -
0Accused
Products -
23Forward
Citations -
0
Petitions -
2
Assignments
First Claim
1. A method comprising:
- detecting a shake by a user to invoke an invoked application;
identifying whether there is a conflicting application, and when a conflicting application is detected storing state information for the conflicting application and halting the conflicting application;
starting the invoked application; and
upon detecting an end of use of the invoked application, restoring the conflicting application to the stored state.
2 Assignments
0 Petitions

Accused Products

Abstract
A method and apparatus for detecting a shake by a user to invoke an invoked application, identifying whether there is a conflicting application. When a conflicting application is detected, storing state information for the conflicting application and halting the conflicting application. The method further comprising starting the invoked application, and upon detecting an end of use of the invoked application, restoring the conflicting application to the stored state.
48 Citations
View as Search Results
Mobile device and method for touch lock control based on motion sensing | ||
Patent #
US 20110117970A1
Filed 11/05/2010
|
Current Assignee
Samsung Electronics Co. Ltd.
|
Sponsoring Entity
Samsung Electronics Co. Ltd.
|
ELECTRONIC DEVICE AND METHOD OF DISPLAYING INFORMATION IN RESPONSE TO INPUT | ||
Patent #
US 20120331424A1
Filed 09/07/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to input | ||
Patent #
US 8,689,146 B2
Filed 09/07/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of controlling a display | ||
Patent #
US 8,726,198 B2
Filed 03/14/2013
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
DEVICE, METHOD, AND SYSTEM FOR SECURELY PAIRING MOBILE COMMUNICATION DEVICES USING MOVEMENT | ||
Patent #
US 20140206288A1
Filed 06/29/2012
|
Current Assignee
Intel Corporation
|
Sponsoring Entity
Intel Corporation
|
Method and system for waking up a device due to motion | ||
Patent #
US 8,872,646 B2
Filed 10/08/2008
|
Current Assignee
Uniloc Luxembourg S. r.l. fka Uniloc Luxembourg S.A.
|
Sponsoring Entity
DP Technologies Inc.
|
Electronic device and method of providing visual notification of a received communication | ||
Patent #
US 9,015,641 B2
Filed 08/13/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of controlling a display | ||
Patent #
US 9,058,168 B2
Filed 01/23/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,423,878 B2
Filed 02/24/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,465,440 B2
Filed 09/14/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,471,145 B2
Filed 11/29/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,477,311 B2
Filed 12/01/2011
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,507,495 B2
Filed 04/03/2013
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying a cover image and an application image from a low power condition | ||
Patent #
US 9,619,038 B2
Filed 01/22/2013
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,684,378 B2
Filed 09/14/2012
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 9,690,476 B2
Filed 03/14/2013
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of displaying information in response to input | ||
Patent #
US 9,766,718 B2
Filed 02/28/2011
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of providing visual notification of a received communication | ||
Patent #
US 9,766,802 B2
Filed 02/06/2015
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Method and apparatus for managing background application | ||
Patent #
US 9,798,580 B2
Filed 08/21/2015
|
Current Assignee
Alibaba Group Services Limited
|
Sponsoring Entity
Alibaba Group Services Limited
|
Device, method, and system for securely pairing mobile communication devices using movement | ||
Patent #
US 9,801,004 B2
Filed 06/29/2012
|
Current Assignee
Intel Corporation
|
Sponsoring Entity
Intel Corporation
|
Method and apparatus for managing background application | ||
Patent #
US 10,031,772 B2
Filed 10/11/2017
|
Current Assignee
Alibaba Group Holding Ltd.
|
Sponsoring Entity
Alibaba Group Holding Ltd.
|
Electronic device and method of displaying information in response to a gesture | ||
Patent #
US 10,191,556 B2
Filed 10/21/2016
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
Electronic device and method of providing visual notification of a received communication | ||
Patent #
US 10,481,788 B2
Filed 09/15/2017
|
Current Assignee
Blackberry Limited
|
Sponsoring Entity
Blackberry Limited
|
MOTION SENSING AND PROCESSING ON MOBILE DEVICES | ||
Patent #
US 20100214216A1
Filed 05/18/2010
|
Current Assignee
Invensense Incorporated
|
Sponsoring Entity
Invensense Incorporated
|
QUICK SYSTEM SELECTION AND ACQUISITION FOR MULTI-MODE MOBILE DEVICES | ||
Patent #
US 20100067434A1
Filed 09/17/2008
|
Current Assignee
Qualcomm Inc.
|
Sponsoring Entity
Qualcomm Inc.
|
Method of providing call forward of voice and messages and remote phone activation | ||
Patent #
US 7,689,232 B1
Filed 01/17/2007
|
Current Assignee
AGIS Software Development LLC
|
Sponsoring Entity
Malcolm K. Beyer Jr.
|
SCREEN DISPLAY PROCESSING APPARATUS AND METHOD | ||
Patent #
US 20090048001A1
Filed 03/17/2008
|
Current Assignee
Toshiba Corporation
|
Sponsoring Entity
Toshiba Corporation
|
Method for displaying information and information display system | ||
Patent #
US 7,489,297 B2
Filed 05/05/2005
|
Current Assignee
Google LLC
|
Sponsoring Entity
Hitachi Ltd.
|
Mobile terminal having recording function | ||
Patent #
US 7,499,725 B2
Filed 07/29/2004
|
Current Assignee
Lenovo Innovations Limited Hong Kong
|
Sponsoring Entity
NEC Corporation
|
Movement-based interfaces for personal media device | ||
Patent #
US 20090088204A1
Filed 10/01/2007
|
Current Assignee
Apple Inc.
|
Sponsoring Entity
Apple Inc.
|
MULTIMEDIA CONTENT PROVIDING METHOD AND MOBILE STATION | ||
Patent #
US 20090124196A1
Filed 07/20/2006
|
Current Assignee
NTT Docomo Incorporated
|
Sponsoring Entity
NTT Docomo Incorporated
|
Alert Method, Apparatus, System and Program Product | ||
Patent #
US 20090191850A1
Filed 01/30/2009
|
Current Assignee
SPITFIRE LTD.
|
Sponsoring Entity
SPITFIRE LTD.
|
CONTROLLING AND ACCESSING CONTENT USING MOTION PROCESSING ON MOBILE DEVICES | ||
Patent #
US 20090262074A1
Filed 03/04/2009
|
Current Assignee
Invensense Incorporated
|
Sponsoring Entity
Invensense Incorporated
|
Portable Electronic Device with Alert Silencing | ||
Patent #
US 20080165022A1
Filed 06/28/2007
|
Current Assignee
Apple Inc.
|
Sponsoring Entity
Apple Inc.
|
Utilizing a portable electronic device to detect motion | ||
Patent #
US 7,190,263 B2
Filed 09/20/2004
|
Current Assignee
Google Technology Holdings LLC
|
Sponsoring Entity
Motorola Inc.
|
Shake responsive portable media player | ||
Patent #
US 20070125852A1
Filed 10/06/2006
|
Current Assignee
Google LLC
|
Sponsoring Entity
Google LLC
|
Information terminal, and event notifying method | ||
Patent #
US 20070190979A1
Filed 06/28/2005
|
Current Assignee
Panasonic Corporation
|
Sponsoring Entity
Panasonic Corporation
|
Telephone control system with branch routing | ||
Patent #
US 5,375,161 A
Filed 02/15/1990
|
Current Assignee
Aspect Communications Corporation
|
Sponsoring Entity
Accessline Communications Corporation
|
Adjunct controller for a telephone system | ||
Patent #
US 5,673,299 A
Filed 05/26/1994
|
Current Assignee
Aspect Communications Corporation
|
Sponsoring Entity
Aspect Telecommunications Corporation
|
Wireless headset with automatic power control | ||
Patent #
US 7,010,332 B1
Filed 02/21/2000
|
Current Assignee
Unwired Planet LLC
|
Sponsoring Entity
Telefonaktiebolaget LM Ericsson
|
Cellular phone/PDA communication system | ||
Patent #
US 7,031,728 B2
Filed 09/21/2004
|
Current Assignee
AGIS Software Development LLC
|
Sponsoring Entity
Advanced Ground Information Systems Inc.
|
Method of determining a user presence state | ||
Patent #
US 20050232404A1
Filed 04/15/2004
|
Current Assignee
Sharp Laboratories of America Incorporated
|
Sponsoring Entity
Sharp Laboratories of America Incorporated
|
Haptic interface for laptop computers and other portable devices | ||
Patent #
US 6,822,635 B2
Filed 07/26/2001
|
Current Assignee
Immersion Corporation
|
Sponsoring Entity
Immersion Corporation
|
Athlete's GPS-based performance monitor | ||
Patent #
US 6,013,007 A
Filed 03/26/1998
|
Current Assignee
Philips North America LLC
|
Sponsoring Entity
SPORTBUG.COM INC.
|
Negotiated routing in telephony systems | ||
Patent #
US 6,122,360 A
Filed 11/18/1999
|
Current Assignee
Genesys Telecommunications Laboratories Incorporated
|
Sponsoring Entity
Genesys Telecommunications Laboratories Incorporated
|
Telephone system with scheduled handling of calls | ||
Patent #
US 5,610,970 A
Filed 12/09/1994
|
Current Assignee
Aspect Communications Corporation
|
Sponsoring Entity
Accessline Communications Corporation
|
Data processing system providing user interaction in multiple natural languages | ||
Patent #
US 5,428,772 A
Filed 10/01/1991
|
Current Assignee
COMPUTERVISION CORPORATION
|
Sponsoring Entity
COMPUTERVISION CORPORATION
|
Microprocessor inverse processor state usage | ||
Patent #
US 5,161,226 A
Filed 05/10/1991
|
Current Assignee
JMI SOFTWARE SYSTEMS INC.
|
Sponsoring Entity
JMI SOFTWARE CONSULTANTS INC.
|
20 Claims
- 1. A method comprising:
detecting a shake by a user to invoke an invoked application; identifying whether there is a conflicting application, and when a conflicting application is detected storing state information for the conflicting application and halting the conflicting application; starting the invoked application; and upon detecting an end of use of the invoked application, restoring the conflicting application to the stored state. - View Dependent Claims (2, 3, 4, 5, 6, 7)
- 8. A processor including an invocation logic to invoke an application on a handheld device, the invocation logic comprising:
an invoked command identification logic to identify an application invoked by a shake by a user; an application halt logic to halt a conflicting application which conflicts with the invoked application, the application halt logic to store a state of the conflicting application in a memory; an application start logic to start the invoked application; and a restoration logic to restore the conflicting application to a prior state when the invoked application is ended. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
- 16. A handheld mobile device comprising:
an accelerometer to detect a shake; an invoked command identification logic to identify an application invoked by the shake; an application halt logic to halt a conflicting application which conflicts with the invoked application, the application halt logic to store a state of the conflicting application in a memory; an application start logic to start the invoked application; and a restoration logic to restore the conflicting application to a prior state when the invoked application is ended. - View Dependent Claims (17, 18, 19, 20)
1 Specification
The present invention relates to a user interface, and more particularly to an improved method of invoking an application.
There are an increasing number of multi-purpose handheld devices. These devices include mobile telephones which also provide features such as music players, calendar managers, game applications etc. They also include personal digital assistants (PDAs) which provide calendar and contact applications, among other features.
Generally speaking, users navigate from an application to another using multiple menus in combination with hardware or software buttons.
A method comprising detecting a shake by a user to invoke an invoked application, and identifying whether there is a conflicting application. When a conflicting application is detected, the method further includes storing state information for the conflicting application and terminating the conflicting application. The method then includes starting the invoked application. In one embodiment, the method further includes upon detecting an end of use of the invoked application, restoring the conflicting application to the stored state.
The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
The method and apparatus described is a method of using an accelerometer or other motion detection mechanism to simplify navigation between applications. For example, in a multi-function mobile telephone, it often takes multiple navigational steps to get from a current application to the phone application. Furthermore, the user sometimes needs to close applications in order to provide enough RAM (random access memory) to run the new application.
The present application utilizes an accelerometer built into the device to provide speedier access to an application. For example, instead of navigating away from a current application, closing conflicting applications, and opening the dial pad, the user may shake the handheld device in a pre-arranged pattern to invoke the application and simultaneously close down any competing applications. Furthermore, this feature ensures, in one embodiment, that after the application is closed, the previously competing application can be re-started automatically. This means that if the user interrupts, for example, a music program in order to make a telephone call, at the termination of the call, the music program is automatically restarted. In one embodiment, the user may be returned to the screen that was active prior to the invocation of the interrupting application.
In one embodiment, if the applications do not conflict, but the new application has a high bandwidth requirement, in one embodiment the system may throttle the bandwidth available to other applications. In one embodiment, the throttling may simply disconnect the other applications from the network. In one embodiment, when possible, the system saves state so the application can be fully restored when the invoked application is terminated.
Invocation logic 110 detects the pre-determined shakes, taps, or other motions of the device. These motions are used to trigger various actions. In one embodiment, the system includes an initial set of invoking motions, which may in one embodiment include:
two shakes to go to a dial pad
two shakes to pick up the telephone when it is ringing
three shakes to go to an address book
tap to navigate down a menu
In one embodiment, the various motions to command relationships are registered in the database of commands 215. In one embodiment, the system comes with a list of command pre-registered. In one embodiment, the user may add additional commands to the database 215. The commands may include invoking/starting an application, navigation within an application, terminating an application.
Shake detection logic 220 receives the accelerometer data and attempts to identify a command associated with the data. In one embodiment, the command may be to open an application, turn on a device, turn off a device, navigate a menu, or any other command applicable to a mobile device. In one embodiment, if the system includes
Invoked command ID logic 222 determines which command, if any, is being invoked. In one embodiment, if various sets of shakes may invoke separate commands (i.e. two shakes invoking a first command, while three shakes invokes a second command) the logic 222 determines the termination of the sequence of motions prior to identifying the command being invoked. Thus, for example, upon detecting a first shake, the command ID logic 222 determines if there is further motion indicating that a 2nd shake is about to occur. Therefore, matching is performed when that 2nd (or 3rd, or 4th) shake or motion is successfully identified, and the motion terminates.
Once the invoked command is identified, the invoked application is identified by the called application identification logic (CAIL) 225. The application may be a user interface application, such as a dial pad for dialing a telephone, contact list, answering a telephone, or any other application.
Application Halt logic 230 utilizing the identified application to determine which, if any, other running applications may conflict with the newly invoked application. For example, a phone application may conflict with a music player because the user cannot simultaneously listen to music and a telephone conversation. Similarly, a game may conflict with any other application since the user cannot pay attention to both the game and the newly invoked application. In one embodiment, the Halt logic 230 determines if the application needs to be terminated or suspended/paused. Applications that actually interfere with the ability to execute the invoked program are terminated. Applications that do not interfere with the ability to execute the program, but cannot be simultaneously used by the user, are paused in one embodiment. In one embodiment, for applications that cannot maintain their state while paused, and for applications which are terminated, the application halt logic 230 stores the state in state storage 235. In one embodiment, sufficient state data is stored to enable the re-starting of the application and if possible returning to the same state as prior to the termination/halt.
In one embodiment, if the application is not a problem, but it uses bandwidth, and the newly invoked application also requires bandwidth availability, bandwidth logic 240 throttles the bandwidth available to the other applications. For example, if the user is downloading something off the Web, while invoking a telephone application, the download speed may be throttled to ensure that adequate bandwidth is available for the phone application. In one embodiment, throttling means reducing the available bandwidth to zero.
The application is then started by application start logic 270.
Invoked application monitor 260 monitors the use of the application. When the application is no longer used, for example when the user hangs up the telephone, invoked application monitor notifies the restoration logic 250. Restoration logic 250 restores the previously halted/terminated applications, and the bandwidth availability. Thus, in one embodiment, restoration logic 250 returns the device to its state prior to the invocation of the application.
At block 310 the motion data is added to the buffer. In one embodiment, the data added to the buffer is the currently identified motions, rather than raw accelerometer data.
At block 315, the process determines whether an invocation command has been identified. In one embodiment, an invocation command is not identified until the motion is complete. Thus, for example, if the user is mid-movement and two shakes (a command) could be identified, the system waits until the motion stops, so ensure that the user is not attempting to finish a three-shake command. If the command is not recognizable, or the movement has not stopped, the process continues to block 310 to continue buffering accelerometer data.
At block 320, the command is identified.
At block 325, the currently running applications are identified. In one embodiment, the system may separately identify necessary applications (operating system, applications necessary to enable the use of the invoked application, bandwidth using applications, high CPU-using applications, etc. In one embodiment, only those applications known as conflicting are identified. In one embodiment, the user may designate applications as conflicting. In one embodiment, the system automatically identifies applications that utilize resources necessary for the invoked application as conflicting. In one embodiment, the system comes pre-programmed with a list of applications which may be conflicting with an invoked application.
At block 330, the process determines whether any applications should be halted. Halting applications, in one embodiment, includes terminating, pausing, and suspending applications. If so, at block 335, the identified applications are halted. The process then continues to block 340.
At block 340, the process determines whether the invoked application requires high bandwidth. If so, at block 345, the bandwidth available to other applications is reduced. In one embodiment, this is done on a per-application basis. In one embodiment, any active application which uses a lot of bandwidth is disconnected from the network.
At block 335, the application itself is invoked. As noted above, this may include opening a dial pad on a phone, answering a call on a phone, opening a contact list on a phone, opening a calendar item, opening a mapping program with or without GPS (global positioning system) support, etc. In one embodiment, the user may at this point use motion-based navigation to navigate within the application. In one embodiment, the user may, at any time, invoke another application. Thus, for example, the user may first open an address book via invocation, then realize that he doesn'"'"'t have a number in there, and open the dial pad via invocation.
At block 360, the process determines whether the invoked application is done. In one embodiment, the user may close the application. In one embodiment, the invoked process (making a phone call, answering a phone call) is terminated in other known ways. When the application is ended, in one embodiment at block 365 the halted applications are restored to their prior state. In one embodiment, this may include opening prior applications. At block 370, if appropriate, the bandwidth settings are reset to their prior state. The process then ends. In one embodiment, the restoration may be a nested process, that is, if multiple applications were invoked in a series, the restoration returns to the previously invoked application. In another embodiment, the restoration returns to the original pre-invocation state for the device.
In this way, the system permits a user to simply and quickly invoke an application, regardless of where in the menu structure and available applications the user is currently. Furthermore, the system ensures that other open applications do not conflict with the invoked application, or do not take away sufficient bandwidth to interfere with the invoked application.
In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.