IP Library Granted Patent US 8,887,129
Granted Patent B1
US 8,887,129 · App. 12/693,072 · Granted Nov 11, 2014

Detecting non-touch applications

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,887,129
App. No.
12/693,072
Granted
Nov 11, 2014
Kind
B1
Abstract

A computer-implemented method, computer-readable media, and wireless device that automatically determines whether an application requires a virtual input mechanism are provided. The wireless device includes a virtual machine and database. The virtual machine executes the application and parses code associated with the application to determine whether a virtual input mechanism is necessary. The database stores metadata that indicates whether the type of input needed for the application is touch or key.

Claims (38)

1. A computer-implemented method to determine, during installation, whether an application requires a virtual input mechanism, the method comprising:

receiving a request to install the application on the computing device;

accessing code for the application;

parsing the code to identify touch methods or key methods;

determining whether the application code is for touch inputs, key inputs, or both touch inputs and key inputs based on the presence of physical key methods or virtual input methods in the application code and several lines of code for the physical key methods or the virtual input methods; and

updating metadata associated with the code to indicate whether the application supports key inputs.

2. The method of claim 1 , wherein a server parses the code.

3. The method of claim 1 , wherein a background process parses the code.

4. The method of claim 1 , wherein firmware on a virtual machine parses the code.

5. The method of claim 1 , wherein the application is installed on a wireless device.

6. The method of claim 1 , further comprising:

generating a virtual input mechanism that includes keys required by the application, wherein the virtual input mechanism is configured according to a size of a screen available to the application.

7. The method of claim 1 , further comprising:

providing an override that allows a user of the application to choose to interface with the application with one of: a touch input or a key input.

8. The method of claim 7 , wherein the override is a toggle switch.

9. The method of claim 1 , wherein the metadata is specific to each screen of the application or global to all application screens.

10. The method of claim 1 , wherein the metadata is stored in a database listing each application and the input preference for each application.

11. The method of claim 1 , wherein the application is a Java application and the metadata is part of a Java Application Description (JAD) file.

12. One or more non-transitory computer-readable media storing computer-executable instructions for performing a method to determine, during runtime, whether an application requires a virtual input mechanism, the method comprising:

receiving a request to execute the application;

accessing code for the application;

parsing the code to identify touch methods or key methods;

determining whether the application code is for touch inputs, key inputs, or both touch inputs and key inputs based on the presence of physical key methods or virtual input methods in the application code and several lines of code for the physical key methods or the virtual input methods; and

updating metadata associated with the code to indicate whether the

application supports key inputs.

13. The media of claim 12 , wherein the code is parsed by one of: a server, a background process, or firmware on a virtual machine.

14. The media of claim 12 , wherein the application is installed on a wireless device.

15. The media of claim 12 , further comprising:

generating a virtual input mechanism that includes keys required by the application, wherein the virtual input mechanism is configured according to a size of a screen available to the application; and

providing an override that allows a user of the application to choose to interface with the application with one of: a touch input or a key input.

16. The media of claim 15 , wherein the override is a toggle switch.

17. The media of claim 12 , wherein the metadata is stored in a database listing each application and the input preference for each application, the input preference is specific to each screen of the application or global to all application screens.

18. The media of claim 12 , wherein the application is a Java application and the metadata is part of a Java Application Description (JAD) file.

19. A device configured to determine whether an application requires a virtual input mechanism, the device comprising:

a virtual machine on the device configured to execute the application, wherein the virtual machine parses code associated with the application to determine whether a virtual input mechanism is necessary for application code having touch inputs, key inputs, or both touch inputs and key inputs if the application code has the presence of physical key methods or virtual input methods in the application code and several lines of code for the physical key methods or the virtual input methods;

and

a database configured to store metadata that indicates whether a type of input needed for the application is touch or key.

20. The device of claim 19 , wherein an instruction threshold is used to determine whether the application has implemented a key or touch method.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2022
From: DEUTSCHE BANK TRUST COMPANY AMERICAS
To: IBSV LLC; LAYER3 TV, LLC; PUSHSPRING, LLC; T-MOBILE CENTRAL LLC; T-MOBILE USA, INC.; ASSURANCE WIRELESS USA, L.P.; BOOST WORLDWIDE, LLC; CLEARWIRE COMMUNICATIONS LLC; CLEARWIRE IP HOLDINGS LLC; SPRINTCOM LLC; SPRINT COMMUNICATIONS COMPANY L.P.; SPRINT INTERNATIONAL INCORPORATED; SPRINT SPECTRUM LLC
Reel/Frame 062595/0001 →
TERMINATION AND RELEASE OF FIRST PRIORITY AND JUNIOR PRIORITY SECURITY INTEREST IN PATENT RIGHTS Recorded Apr 2, 2020
From: DEUTSCHE BANK TRUST COMPANY AMERICAS
To: SPRINT COMMUNICATIONS COMPANY L.P.
Reel/Frame 052969/0475 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: T-MOBILE USA, INC.; ISBV LLC; T-MOBILE CENTRAL LLC; LAYER3 TV, INC.; PUSHSPRING, INC.; BOOST WORLDWIDE, LLC; CLEARWIRE COMMUNICATIONS LLC; CLEARWIRE IP HOLDINGS LLC; CLEARWIRE LEGACY LLC; SPRINT COMMUNICATIONS COMPANY L.P.; SPRINT INTERNATIONAL INCORPORATED; SPRINT SPECTRUM L.P.; ASSURANCE WIRELESS USA, L.P.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS
Reel/Frame 053182/0001 →
GRANT OF FIRST PRIORITY AND JUNIOR PRIORITY SECURITY INTEREST IN PATENT RIGHTS Recorded Mar 6, 2017
From: SPRINT COMMUNICATIONS COMPANY L.P.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS
Reel/Frame 041895/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2010
From: ANNAN, BRANDON CHRISTOPHER; REEVES, RAYMOND EMILIO; WICK, RYAN ALAN; JONES, JOHN MARVIN, III
To: SPRINT COMMUNICATIONS COMPANY L.P.
Reel/Frame 023841/0816 →