Method and System for Maintaining and Distributing Wireless Applications
First Claim
1. A method in a computer-based environment for preparing content to be deployed on a target wireless device, comprising:
- determining whether pre-provisioned content corresponding to the target wireless device exists;
where the pre-provisioned content exists, determining whether the pre-provisioned content is stored with a trusted third party host, and where the pre-provisioned content is stored with the trusted third party host, retrieving the pre-provisioned content from the trusted third party host, and providing the pre-provisioned content to the target wireless device without additional provisioning; and
where the pre-provisioned content is unavailable, selecting the content from remotely stored, untrusted applications and provisioning the content for the target wireless device;
wherein the provisioning comprises intercepting the content and inspecting the content, wherein the inspecting comprises at least one of examining the content to detect malicious code, determining whether the content contains banned code, and determining whether the content contains designated API;
verifying that the target wireless device supports execution of the content by comparing the device capabilities to the content requirements; and
providing the verified and provisioned content to the target wireless device.
0 Assignments
0 Petitions
Accused Products
Abstract
Computer- and network-based methods and systems for maintaining and provisioning wireless applications are provided. Example embodiments provide a Mobile Application System (MAS), which is a collection of interoperating server components that work individually and together in a secure fashion to provide applications and resources to mobile subscriber devices, such as wireless devices. Embodiments of the present invention can also be used to deploy applications and resources for wired subscriber devices. Application, resources, and other content is provisioned and verified by the MAS for authorized access by the subscriber, compatibility with a requesting subscriber device, and the security and billing policies of the carrier and system administrators of the MAS. In this manner, applications, resources, and other content can be downloaded to devices, such as wireless devices, with greater assurance of their ability to successfully execute. In one embodiment, content is provisioned by one or more of the steps of inspecting the content for malicious or banned code, optimizing the content for smaller size and greater speed, instrumentation of code that implements security, billing, and other carrier policies, and packaging of code for the intended subscriber device. Additional security is provided through application filters that are used to prevent applications that contain designated API from being downloaded to a subscriber'"'"'s device. In one embodiment, the MAS includes a Protocol Manager, Provisioning Manager, Cache, Deployment Manager, Billing Manager, Logging Manager, Administrator, and Heartbeat Monitor, which interoperate to provide the provisioning functions.
-
Citations
73 Claims
-
1. A method in a computer-based environment for preparing content to be deployed on a target wireless device, comprising:
-
determining whether pre-provisioned content corresponding to the target wireless device exists; where the pre-provisioned content exists, determining whether the pre-provisioned content is stored with a trusted third party host, and where the pre-provisioned content is stored with the trusted third party host, retrieving the pre-provisioned content from the trusted third party host, and providing the pre-provisioned content to the target wireless device without additional provisioning; and where the pre-provisioned content is unavailable, selecting the content from remotely stored, untrusted applications and provisioning the content for the target wireless device;
wherein the provisioning comprises intercepting the content and inspecting the content, wherein the inspecting comprises at least one of examining the content to detect malicious code, determining whether the content contains banned code, and determining whether the content contains designated API;
verifying that the target wireless device supports execution of the content by comparing the device capabilities to the content requirements; andproviding the verified and provisioned content to the target wireless device. - View Dependent Claims (5, 13, 14, 23)
-
-
2. (canceled)
-
3. (canceled)
- 4. (canceled)
-
6. (canceled)
-
7. (canceled)
-
8. (canceled)
-
9. (canceled)
-
10. (canceled)
-
16. (canceled)
- 17. (canceled)
-
19. (canceled)
-
20. (canceled)
-
21. (canceled)
-
22. (canceled)
-
24. (canceled)
-
25. (canceled)
-
26. (canceled)
-
27. (canceled)
-
28. (canceled)
-
29. (canceled)
-
30. A network-based transmission system operable in conjunction with at least one computer processor comprising:
-
a provisioning manager operable to control the at least one computer processor and configured to determine whether pre-provisioned content corresponding to a requesting device exists and where pre-provisioned content exists, to determine whether the pre-provisioned content is stored with a trusted, third party application provider; a deployment manager operable to control the at least one computer processor and configured to retrieve an application, and where the pre-provisioned content is stored with the trusted, third party application provider to retrieve the pre-provisioned content from the trusted, third party application provider and to deploy the pre-provisioned content without additional provisioning, and otherwise from untrusted, third party hosts; and an inspector operable to control the at least one computer processor, wherein when the application is retrieved from an untrusted, third party host, the inspector from one of the group consisting of locally stored data repositories, trusted third party application providers, and untrusted, third party hosts; and an inspector, wherein when the application is retrieved from an untrusted, third party host, the inspector is configured to control the at least one computer processor to examine the application by a method selected from the group consisting of examining the application to detect malicious code, performing a class analysis of the application to verify that classes in the application conform to desired standards and applying application filters to the application. - View Dependent Claims (32, 33, 35, 36, 39, 40)
-
-
31. (canceled)
-
34. (canceled)
-
37. (canceled)
-
38. (canceled)
-
41. (canceled)
-
42. (canceled)
-
43. (canceled)
-
44. (canceled)
-
45. A mobile applications system operable in conjunction with a computer processor, the mobile applications system comprising a system application operable to control the computer processor to determine whether pre-provisioned content corresponding to a target device exists, and where it does not, to prepare content for deployment on the target device, such that when the pre-provisioned content exists, the computer processor determined whether the pre-provisioned content is stored with a trusted, third party application provider and fetches the pre-provisioned content from the trusted, third party application provider, and when the pre-provisioned content does not exist, to fetch a retrieved application from an untrusted, third party host;
wherein where the pre-provisioned content is stored with the trusted, third party application provider, the system application is configured to deliver the pre-provisioned content without additional provisioning; and
otherwise to examine the retrieved application by a method selected from the group consisting of examining the retrieved application to detect malicious code, performing a class analysis of the retrieved application to verify that classes in the retrieved application conform to desired standards, and applying application filters to the retrieved application; and
verifying that the target device supports execution of the retrieved application without executing the retrieved application on the device.
-
46. (canceled)
-
47. (canceled)
-
48. (canceled)
-
49. (canceled)
-
50. (canceled)
-
51. (canceled)
-
52. (canceled)
-
53. (canceled)
-
54. (canceled)
-
55. (canceled)
-
56. (canceled)
-
57. (canceled)
-
58. (canceled)
-
59. (canceled)
-
60. (canceled)
-
61. A computer-based content deployment system for one of delivering pre-provisioned content or provisioning retrieved content for a target device, operable with a computer and comprising:
-
a verification manager that causes the computer to verify that the retrieved content is authorized and the target device supports resources needed by the content; a deployment manager coupled to and operational with both the verification manager and the computer, the deployment manager being configured to retrieve the content from at least trusted, third party application providers and untrusted, third party hosts; an inspector, coupled to and operational with the verification manager and deployment manager and the computer, wherein when the content is retrieved from an untrusted, third party host, the inspector examines the content by a method selected from the group consisting of examining the retrieved content to detect malicious code, performing a class analysis of the content to verify that classes in the content conform to desired standards, and applying application filters to the content; and a provisioning manager, operable with the computer and operable with and coupled to the verification manager, the deployment manager, and the inspector that, wherein the content is retrieved from one or more of the untrusted, third party hosts, provisions the content according to the target device by at least one of inspecting the content, optimizing the content, and instrumenting the content or determined whether pre-provisioned content exists, and where the pre-provisioned content exists, determined whether the pre-provisioned content is stored with a trusted, third party host, and where the pre-provisioned content is stored with the trusted, third party host, retrieves the pre-provisioned content from the trusted third party host without additional provisioning. - View Dependent Claims (62, 63)
-
-
64. (canceled)
-
65. (canceled)
-
66. (canceled)
-
67. (canceled)
-
68. (canceled)
-
69. (canceled)
-
70. (canceled)
-
71. (canceled)
-
72. (canceled)
-
73. (canceled)
Specification