IP Library Granted Patent US 9,451,009
Granted Patent B2
US 9,451,009 · App. 12/032,093 · Granted Sep 20, 2016

Methods and system to create applications and distribute applications to a remote device

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 9,451,009
App. No.
12/032,093
Granted
Sep 20, 2016
Kind
B2
Abstract

A remotely accessible integrated development environment, and a sub-system for deploying applications to a remote device is disclosed. The sub-system may further comprise a rendering engine which is configured based upon a platform of the remote device, wherein the rendering engine is configured to communicate with, and receive applications from, a remotely accessible application server.

Claims (57)

1. A computing device, comprising:

a data store comprising executable software;

a processor in data communication with the data store, the processor configured to execute the software and cause the computing device to:

provide a first user with access to an integrated development environment comprising a debugging environment, wherein the first user is remote from the integrated development environment;

provide, to the first user, plugins for use in developing a common application representation;

receive, from the first user, an indication of a set of data;

assign a variable to the set of data, wherein the variable indicates a location of the set of data, and wherein the set of data comprises at least one of text data, audio data, image data, and video data;

provide a second user with access to the integrated development environment, wherein the second user is remote from the integrated development environment and from the first user;

receive first input in the integrated development environment from the first user, the first input being configured to modify the common application representation in the integrated development environment, wherein the common application representation comprises platform-independent source code configured to execute in the integrated development environment;

make visible a result of the first input in the integrated development environment to the second user concurrent with its receipt from the first user;

receive second input in the integrated development environment from the second user, the second input being configured to modify the common application representation in the integrated development environment;

configure the common application representation with first platform-specific code, wherein the first platform-specific code enables the common application representation to be executed on a mobile device having a first type of operating system;

configure the common application representation with second platform-specific code, wherein the second platform-specific code enables the common application representation to be executed on a mobile device having a second type of operating system, the second type of operating system being different from the first type of operating system;

compile at least the first platform-specific code or the second platform-specific code into an operating system-specific compiled code; and

package the operating system-specific compiled code into an application file configured to be executed by at least the mobile device having the first type of operating system or the mobile device having the second type of operating system.

2. The computing device of claim 1 , wherein the first platform-specific code is configured to interpret the common application representation on the mobile device having the first type of operating system, and the second platform-specific code is configured to interpret the common application representation on the mobile device having the second type of operating system.

3. The computing device of claim 1 , wherein each of the first type of operating system and the second type of operating system comprise at least one of: an Apple operating system, an Android operating system, a Symbian operating system, a Linux operating system, and a Microsoft Windows Operating System.

4. The computing device of claim 1 , wherein the common application representation comprises a script, and the processor is further configured to cause the computing device to translate the script into source code in accordance with a selected type of operating system.

5. The computing device of claim 1 , wherein the debugging environment is configured to reflect a state of a common application representation under development.

6. The computing device of claim 1 , wherein the debugging environment is configured to run in a first mode, in which user interaction with the common application representation is enabled, and a second mode, in which the user may change parameters associated with an element of the common application representation.

7. The computing device of claim 1 , wherein the integrated development environment is configured to simulate execution of a platform-specific application corresponding to the common application representation in at least one of the first type of operating system and the second type of operating system.

8. The computing device of claim 1 , wherein the computing device is a personal computer.

9. The computing device of claim 1 , wherein the executable software comprises a client application.

10. A non-transitory, computer-readable medium comprising computer-executable instructions that, when executed by a processor in a computing device comprising a data store, cause the computing device to perform a method, the method comprising:

providing a first user with access to an integrated development environment comprising a debugging environment, wherein the first user is remote from the integrated development environment;

provide, to the first user, plugins for use in developing a common application representation;

receiving, from the first user, an indication of a set of data;

assigning a variable to the set of data, wherein the variable indicates a location of the set of data, and wherein the set of data comprises at least one of text data, audio data, image data, and video data;

providing a second user with access to the integrated development environment, wherein the second user is remote from the integrated development environment and from the first user;

receiving first input in the integrated development environment from the first user, the first input being configured to modify the common application representation in the integrated development environment, wherein the common application representation comprises platform-independent source code configured to execute in the integrated development environment;

making visible a result of the first input in the integrated development environment to the second user concurrent with its receipt from the first user;

receiving second input in the integrated development environment from the second user, the second input being configured to modify the common application representation in the integrated development environment;

configuring the common application representation with first platform-specific code, wherein the first platform-specific code enables the common application representation to be executed on a mobile device having a first type of operating system;

configuring the common application representation with second platform-specific code, wherein the second platform-specific code enables the common application representation to be executed on a mobile device having a second type of operating system, the second type of operating system being different from the first type of operating system;

compiling at least the first platform-specific code or the second platform-specific code into an operating system-specific compiled code; and

packaging the operating system-specific compiled code into an application file configured to be executed by at least the mobile device having the first type of operating system or the mobile device having the second type of operating system.

11. The computing device of claim 10 , wherein the first platform-specific code is configured to interpret the common application representation on the mobile device having the first type of operating system, and the second platform-specific code is configured to interpret the common application representation on the mobile device having the second type of operating system.

12. The computing device of claim 10 , wherein each of the first type of operating system and the second type of operating system comprise at least one of: an Apple operating system, an Android operating system, a Symbian operating system, a Linux operating system, and a Microsoft Windows Operating System.

13. The computing device of claim 10 , wherein the common application representation comprises a script, and the processor is further configured to cause the computing device to translate the script into source code in accordance with a selected type of operating system.

14. The computing device of claim 10 , wherein the debugging environment is configured to reflect a state of a common application representation under development.

15. The computing device of claim 10 , wherein the debugging environment is configured to run in a first mode, in which user interaction with the common application representation is enabled, and a second mode, in which the user may change parameters associated with an element of the common application representation.

16. The computing device of claim 10 , wherein the integrated development environment is configured to simulate execution of a platform-specific application corresponding to the common application representation in at least one of the first type of operating system and the second type of operating system.

17. The computing device of claim 10 , wherein the computing device is a personal computer.

18. The computing device of claim 10 , wherein the computer-executable instructions comprise a client application.

19. A method performed by a computing device, the method comprising:

providing a first user with access to an integrated development environment comprising a debugging environment;

provide, to the first user, plugins for use in developing a common application representation;

receive, from the first user, an indication of a set of data;

assign a variable to the set of data, wherein the variable indicates a location of the set of data, and wherein the set of data comprises at least one of text data, audio data, image data, and video data;

providing a second user with access to the integrated development environment, wherein the second user is remote from the integrated development environment and from the first user;

receiving first input in the integrated development environment from the first user, the first input being configured to modify the common application representation in the integrated development environment, wherein the common application representation comprises platform-independent source code configured to execute in the integrated development environment;

making visible a result of the first input in the integrated development environment to the second user concurrent with its receipt from the first user;

receiving second input in the integrated development environment from the second user, the second input being configured to modify the common application representation in the integrated development environment;

configuring the common application representation with first platform-specific code, wherein the first platform-specific code enables the common application representation to be executed on a mobile device having a first type of operating system;

configuring the common application representation with second platform-specific code, wherein the second platform-specific code enables the common application representation to be executed on a mobile device having a second type of operating system, the second type of operating system being different from the first type of operating system;

compiling at least the first platform-specific code or the second platform-specific code into an operating system-specific compiled code; and

packaging the operating system-specific compiled code into an application file configured to be executed by at least the mobile device having the first type of operating system or the mobile device having the second type of operating system.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE COVER SHEET AT PAGE 50 TO REMOVE 12817157 PREVIOUSLY RECORDED ON REEL 063471 FRAME 0474. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 064806/0669 →
CORRECTIVE ASSIGNMENT TO CORRECT 12817157 APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 064015 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064807/0001 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 16, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064015/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 063471/0474 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2019
From: GOOD TECHNOLOGY HOLDINGS LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 048272/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2017
From: APPCENTRAL, INC.
To: GOOD TECHNOLOGY HOLDINGS LIMITED
Reel/Frame 044961/0768 →
CHANGE OF NAME Recorded Oct 29, 2012
From: ONDEEGO, INC.
To: APPCENTRAL, INC.
Reel/Frame 029207/0890 →
CHANGE OF NAME Recorded Oct 29, 2012
From: ONDEEGO, INC.
To: APPCENTRAL, INC.
Reel/Frame 029207/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2008
From: ASSENMACHER, HOLGER
To: ONDEEGO, INC.
Reel/Frame 020516/0954 →