IP Library Granted Patent US 10,176,336
Granted Patent B2
US 10,176,336 · App. 14/852,451 · Granted Jan 8, 2019

Automated data transfer from mobile application silos to authorized third-party applications

Inventors: Vishnu Navda (Bangalore, IN); Ramachandran Ramjee (Bangalore, IN); Devarayasamudra Chandramouli Vageesh (Bangalore, IN); Saikat Guha (Bangalore, IN); Venkata N. Padmanabhan (Bangalore, IN)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F21/6218G06F3/0481G06F3/04842G06F3/04847G06F3/14G06F3/167G06F9/46G06F9/541G06F17/243G06F17/27
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 10,176,336
App. No.
14/852,451
Filed
Sep 11, 2015
Granted
Jan 8, 2019
Kind
B2
Examiner
NGUY, CHI D
Art Unit
2435
USPC
726/30
Abstract

A “Data Transfer Tool” extracts, labels and stores user data or information that may be confined within application silos during user interaction with arbitrary apps. The Data Transfer Tool enables sharing of this otherwise siloed data shared across and between authorized apps. The Data Transfer Tool provides a task-centric approach to define and extract structured and semantically meaningful information from source applications by providing multiple semantic models that are individually tailored to particular source apps. The Data Transfer Tool applies an accessibility API or the like of the OS in combination with the semantic model for the source app to scrape user entered or selected data or information from the source app. The Data Transfer Tool enables and creates new user experiences and increases user efficiency when interacting with various apps by making the scraped data or information available to subscribing destination apps approved to receive that data or information.

Claims (34)

1. A computer-implemented process, comprising:

applying an application programming interface (API) to extract a plurality of data items from a presentation layer of an operating system executing on a computing device, the presentation layer causing text to be rendered on a display device in response to user interaction with a source application executing under the operating system on the computing device;

applying a predefined application content model corresponding to the source application to identify and label the extracted data items;

applying a subscription process to authorize and subscribe one or more destination applications to access the identified and labeled extracted data items; and

automatically applying one or more of the identified and labeled extracted data items to populate one or more corresponding data fields of one or more of the authorized destination applications.

2. The computer-implemented process of claim 1 further comprising:

perform an automated search to retrieve information relevant to one or more of the extracted data items; and

present a notification in an assistant app that is unrelated to either the source application or the destination applications to present the retrieved information relevant to one or more of the extracted data items.

3. The computer-implemented process of claim 2 further comprising presenting the notification in the assistant app as an overlay on the source application.

4. The computer-implemented process of claim 2 further comprising presenting the notification in the assistant app as an overlay on one or more of the destination applications.

5. The computer-implemented process of claim 2 further comprising presenting sponsored content in the notification.

6. The computer-implemented process of claim 1 further comprising automatically updating the application content model when an analysis of the source application indicates changes to the source application binaries.

7. The computer-implemented process of claim 1 further comprising:

modeling user behaviors with respect to the source application; and

automatically initiating one or more destination applications in response to the modeled user behaviors and one or more of the extracted data items.

8. The computer-implemented process of claim 1 further comprising:

modeling user behaviors with respect to one or more of the source application and the destination applications; and

applying the modeled user behaviors in combination with and one or more of the extracted data items to customize a digital assistant.

9. The computer-implemented process of claim 1 further comprising providing at least a portion of the identified and labeled extracted data items to one or more destination apps running on one or more different computing devices of the user.

10. The computer-implemented process of claim 1 further comprising providing at least a portion of the identified and labeled extracted data items to one or more destination apps running on one or more of different computing devices of different users.

11. The computer-implemented process of claim 1 further comprising providing anonymized versions of at least a portion of the identified and labeled extracted data items to one or more computing devices of other users.

12. A computer-readable storage device having computer executable instructions stored therein, said instructions causing a computing device to execute a method comprising:

applying an application programming interface (API) to extract a plurality actions and corresponding attributes from a presentation layer of an operating system, the presentation layer causing content and user interface (UI) controls of a source app executing under the operating system to be rendered on a display device;

applying a content model of the source app to format the extracted actions and corresponding attributes as app-independent tasks; and

applying one or more of the app-independent tasks to populate one or more variables of one or more of destination apps that are subscribed to receive those app-independent tasks.

13. The computer-readable storage device of claim 12 further comprising a presenting a user interface for setting an authorization state for subscriptions to receive app-independent tasks.

14. The computer-readable storage device of claim 12 further comprising:

performing an automated search to retrieve information relevant to one or more of the app-independent tasks; and

applying an assistant app to present the retrieved information as a user selectable popup on the source application.

15. The computer-readable storage device of claim 12 further comprising automatically updating the content model when an analysis of the source app indicates that the source app has been updated.

16. The computer-readable storage device of claim 12 further comprising:

modeling user behaviors with respect to the source app; and

automatically initiating one or more destination apps in response to the modeled user behaviors and one or more of the app-independent tasks.

17. The computer-readable storage device of claim 12 further comprising providing at least a portion of the app-independent tasks to one or more destination apps running on one or more different computing devices of the user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2015
From: NAVDA, VISHNU; RAMJEE, RAMACHANDRAN; VAGEESH, DEVARAYASAMUDRA CHANDRAMOULI; GUHA, SAIKAT; PADMANABHAN, VENKATA N.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 036592/0557 →
Priority Claims (1)
IN 3847/CHE/2015 · Jul 27, 2015 · national
Continuity (1)
Related Publication 20170032138A1 · Feb 2, 2017
Cited By (1)
US 12,282,522