IP Library Granted Patent US 12,041,123
Granted Patent B2
US 12,041,123 · App. 17/339,331 · Granted Jul 16, 2024

Peer-to-peer data communication between different applications

Inventors: Jayaprakash Mara (Atlanta, GA); Xinpi Du (Atlanta, GA); Sophat Nouv (Atlanta, GA); Ravi Sarma (Atlanta, GA); Ali Mohsin (Atlanta, GA)
Assignee: VMware LLC
H04L67/104G06F9/52G06F9/541H04L67/1095
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 12,041,123
App. No.
17/339,331
Granted
Jul 16, 2024
Kind
B2
Abstract

Examples described herein include systems and methods for synchronizing applications that target different software development kits (“SDK”). The system can execute a bridge application that registers an implementation of a content provider class. This allows the bridge application to communicate with a first application targeting a first SDK. The bridge application can also register to send and receive implicit broadcasts. After the bridge application verifies the request, it can broadcast to a second cluster of applications registered with an operating system to receive implicit broadcasts. Similarly, the bridge application can receive implicit broadcasts and synchronize those requests with a first cluster of applications by using the implemented content provider methods.

Claims (43)

1. A method for synchronizing between applications that target different software development kits (“SDK”) of an operating system (“OS”), comprising:

registering with the OS at least:

a peer-to-peer (“P2P”) provider of a bridge application, wherein the P2P provider facilitates communications on a P2P channel; and

a receiver that receives implicit broadcasts;

receiving, at the bridge application, a request from a first application, wherein the first application targets a first SDK that disallows registration for receiving implicit broadcasts; and

synchronizing the request by broadcasting to a second application that targets a second SDK that allows registration for implicit broadcasts.

2. The method of claim 1 , wherein the bridge application verifies a signature of the request prior to synchronizing the request.

3. The method of claim 1 , wherein the bridge application checks that the request is non-redundant prior to synchronizing the request.

4. The method of claim 1 , wherein the request is a push request, and wherein the bridge application updates its data in response to the push request.

5. The method of claim 1 , further comprising verifying a uniform resource indicator (“URI”) and channel ID prior to synchronizing the request.

6. The method of claim 1 , wherein the bridge application includes a manifest that targets the second SDK but also compiles the first SDK.

7. The method of claim 1 , further comprising:

receiving an implicit broadcast at the bridge application from the second application; and

sending a second request to a P2P provider of the first application to carry out a command.

8. A non-transitory, computer-readable medium comprising instructions that, when executed by a processor, perform stages for synchronizing between applications that target different software development kits (“SDK”), the stages comprising:

registering with the OS at least:

a peer-to-peer (“P2P”) provider of a bridge application, wherein the P2P provider facilitates communications on a P2P channel; and

a receiver that receives implicit broadcasts;

receiving, at the bridge application, a request from a first application, wherein the first application targets a first SDK that disallows registration for receiving implicit broadcasts; and

synchronizing the request by broadcasting to a second application that targets a second SDK that allows registration for implicit broadcasts.

9. The non-transitory, computer-readable medium of claim 8 , wherein the bridge application verifies a signature of the request prior to synchronizing the request.

10. The non-transitory, computer-readable medium of claim 8 , wherein the bridge application checks that the request is non-redundant prior to synchronizing the request.

11. The non-transitory, computer-readable medium of claim 8 , wherein the request is a push request, and wherein the bridge application updates its data in response to the push request.

12. The non-transitory, computer-readable medium of claim 8 , the stages further comprising verifying a uniform resource indicator (“URI”) and channel ID prior to synchronizing the request.

13. The non-transitory, computer-readable medium of claim 8 , wherein the bridge application includes a manifest that targets the second SDK but also compiles the first SDK.

14. The non-transitory, computer-readable medium of claim 8 , the stages further comprising:

receiving an implicit broadcast at the bridge application from the second application; and

sending a second request to a P2P provider of the first application to carry out a command.

15. A system for synchronizing application clusters that target different software development kits (“SDK”), comprising:

a memory storage including a non-transitory, computer-readable medium comprising instructions; and

a processor that executes the instructions to carry out stages of a bridge application, the stages comprising:

registering with the OS at least:

a peer-to-peer (“P2P”) provider of the bridge application, wherein the P2P provider facilitates communications on a P2P channel; and

a receiver that receives implicit broadcasts;

receiving, at the bridge application, a request from a first application, wherein the first application targets a first SDK that disallows registration for receiving implicit broadcasts; and

synchronizing the request by broadcasting to a second application that targets a second SDK that allows registration for implicit broadcasts.

16. The system of claim 15 , wherein the bridge application verifies a signature of the request prior to synchronizing the request.

17. The system of claim 15 , wherein the bridge application checks that the request is non-redundant prior to synchronizing the request.

18. The system of claim 15 , wherein the request is a push request, and wherein the bridge application updates its data in response to the push request.

19. The system of claim 15 , wherein the bridge application includes a manifest that targets the second SDK but also compiles the first SDK.

20. The system of claim 15 , the stages further comprising:

receiving an implicit broadcast at the bridge application from the second application; and

sending a second request to a P2P provider of the first application to carry out a command.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →