IP Library Granted Patent US 8,060,594
Granted Patent B1
US 8,060,594 · App. 11/977,212 · Granted Nov 15, 2011

Client-side wireless communications link support for mobile handheld devices

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,060,594
App. No.
11/977,212
Granted
Nov 15, 2011
Kind
B1
Abstract

A client-based method for implementing a communications link. The method includes receiving a request for a communications link from an application executing on a handheld device and accessing a device API component to configure device hardware to implement the communications link. A wireless communications link is established with a server. In optimized protocol is automatically implemented between a client communications component and the server based on the wireless communications link type and the handheld device type, wherein the communications link is established via the communications component functioning with a device API component to configure hardware of the handheld device.

Claims (31)

1. A method, comprising:

receiving a request for a communications link from an application executing on a handheld device;

accessing a device API component to configure device hardware to implement the communications link;

establishing a wireless communications link with a server;

automatically implementing, at a first time, a first protocol between a client communications component of the handheld device and the server based on a type of the wireless communications link and a type of the handheld device, the communications link being established via the client communications component functioning with the device API component to configure hardware of the handheld device, the client communications component including a hardware abstraction component for translating between the client communications component and device specific hardware functions of the handheld device, the hardware abstraction component is configured to enable the client communications component to implement a stable communications API when installed on multiple different device types; and

automatically implementing, at a second time after the first time, a second protocol, different from the first protocol, between the client communications component and the server based on a quality of the wireless communications link at the second time, the first protocol and the second protocol are each one of a socket full-duplex connection protocol, a socket half duplex connection protocol, an HTTP tunneling protocol, and an HTTP polling protocol.

2. The method of claim 1 , wherein the device API component is one of a J2ME component, a BREW component, a Symbian component, and a Java/J2SE component.

3. The method of claim 1 , wherein the handheld device is a cellular enabled handheld device.

4. The method of claim 1 , wherein the device API component is accessed by the client communications component, the client communications component is configured to implement the stable a communications API for the application executing on the handheld device.

5. The method of claim 1 , further comprising:

automatically reestablishing the wireless communications link if the wireless communications link is severed.

6. The method of claim 1 , wherein the quality of the wireless communications link at the second time is less than a quality of the wireless communications link at the first time.

7. A handheld device, comprising:

an embedded computer system having a processor coupled to a memory, the memory having computer readable code which when executed by the processor causes the processor to:

receive a request for a communications link from an application executing on the handheld device;

access a device API component to configure device hardware to implement the communications link;

establish a wireless communications link with a server;

automatically select an optimized protocol from a plurality of protocols based on a type of the wireless communications link and a type of the handheld device; and

automatically implement the optimized protocol between a client communications component of the handheld device and the server, the communications link being established via the client communications component functioning with the device API component to configure hardware of the handheld device, the client communications component including a hardware abstraction component for translating between the client communications component and device specific hardware functions of the handheld device, the hardware abstraction component configured to enable the client communications component to implement a stable communications API when installed on multiple different device types,

the optimized protocol being dynamically changeable between a socket full-duplex connection protocol, a socket half duplex connection protocol, an HTTP tunneling protocol and an HTTP pulling protocol based on a quality of the wireless communications link.

8. The device of claim 7 , wherein the device API component is one of a J2ME component, a BREW component, a Symbian component, and a Java/J2SE component.

9. The device of claim 7 , wherein the device API component is accessed by the client communications component, the client communications component is configured to implement the stable communications API for the application executing on the handheld device.

10. The handheld device of claim 7 , wherein the optimized protocol is automatically selected based on the type of the wireless communications link, the type of the handheld device and the quality of the wireless communications link.

11. A non-transitory processor-readable medium storing code representing instructions to cause a processor to:

receive a request for a communications link from an application executing on a handheld device;

access a device API component to configure device hardware to implement the communications link;

establish a wireless communications link with a server;

automatically select a first optimized protocol from a plurality of protocols based on a quality of the wireless communications link at a first time;

automatically implement, at the first time, the first optimized protocol between a client communications component of the handheld device and the server based on the quality of the wireless communications link at the first time, the wireless communications link being established via the client communications component functioning with the device API component to configure hardware of the handheld device, the client communications component including a hardware abstraction component for translating between the client communications component and device specific hardware functions of the handheld device, the hardware abstraction component being configured to enable the client communications component to implement a stable communications API when installed on multiple different device types; and

automatically implement, at a second time after the first time, a second optimized protocol from the plurality of protocols between the client communications component and the server based on a quality of the wireless communications link at the second time, the first protocol and the second protocol are each one of a socket full-duplex connection protocol, a socket half duplex connection protocol, an HTTP tunneling protocol, and an HTTP polling protocol.

12. The non-transitory processor-readable medium of claim 11 , wherein the code representing instructions to cause the processor to automatically select the optimized protocol includes code representing instructions to cause the processor to automatically select the optimized protocol from the plurality of protocols based on the quality of the wireless communications link, a type of the wireless communications link, and a type of the handheld device.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2025
From: PHUNWARE, INC.
To: GOTV NETWORKS, LLC
Reel/Frame 071318/0619 →
MERGER Recorded Jul 22, 2021
From: GOTV NETWORKS, INC.
To: PHUNWARE, INC.
Reel/Frame 056946/0302 →
RELEASE OF SECURITY INTEREST Recorded Mar 31, 2021
From: WESTERN ALLIANCE BANK
To: PHUNWARE, INC.
Reel/Frame 055787/0035 →
RELEASE OF SECURITY INTEREST Recorded Mar 31, 2021
From: BRIDGE BANK, NATIONAL ASSOCIATION
To: PHUNWARE, INC.
Reel/Frame 055787/0418 →
SECURITY INTEREST Recorded Apr 5, 2016
From: PHUNWARE, INC.
To: WESTERN ALLIANCE BANK
Reel/Frame 038194/0001 →
SECURITY AGREEMENT Recorded Jan 14, 2013
From: PHUNWARE, INC.
To: BRIDGE BANK, NATIONAL ASSOCIATION
Reel/Frame 029621/0751 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2010
From: HANDS-ON MOBLILE, INC.
To: GOTV NETWORKS, INC.
Reel/Frame 024306/0841 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2008
From: CLAVEL, PHILIPPE; WATERS, BRYAN
To: HANDS-ON-MOBILE, INC.
Reel/Frame 020439/0898 →