Mobile device applications (“apps”) have become increasingly popular, and provide mobile device users with a wide variety of additional functionality and data access not previously available on mobile devices. As the number of apps downloaded to a mobile device increases, it becomes more difficult for a user to quickly locate and access a desired application, and it becomes more likely that any particular downloaded app will be accessed less frequently.
Furthermore, mobile device users frequently find themselves with small blocks of time during which they may want to quickly be able to access information. For example, while in a doctor's office waiting room, a user may choose to access a news application to get a quick update on current headlines, or may choose to launch a social networking application to check for any recent status updates. However, as the number of data sources available through a mobile device increases, it becomes more difficult for a user with a limited window of time to quickly choose and access a data source of interest.
This document describes data collections on a mobile device. The data collections may be user-defined to include any number of different types of objects such as apps, contacts, email subscriptions, and so on. A user interface for displaying a data collection includes an area for displaying representations of the objects that are part of the data collection and an area for displaying broadcast data that is received in association with one or more of the objects associated with the data collection.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. The term “techniques,” for instance, may refer to device(s), system(s), method(s) and/or computer-readable instructions as permitted by the context above and throughout the document.
The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the drawings to reference like features and components.
Data collections on mobile devices provide logical groupings of mobile device applications (“apps”) and other content or objects. A user interface that supports data collections, as described herein, also provides a visible container to which real-time information may be surfaced from any member of a data collection.
Data collections may be defined by a user and may include any combination of objects, including, but not limited to, applications, contacts, and data streams (e.g., Really Simple Syndication (RSS) feeds, email subscriptions, podcasts, etc.). Data collections may also include applications or other objects through which real-time information is not available.
A user interface is provided for viewing the contents of a data collection, including a summary of at least some of the real-time information received in association with the objects that are part of the data collection. The summary of information is dynamically updated as data is received. In this way, a user is able to quickly view current data from multiple data sources without having to launch or otherwise interact with each individual object. After viewing the summary of real-time information associated with the data collection, the user may wish to view additional details associated with particular information included in the summary. To enable easy access to the data sources, the user interface also provides an area through which the user can launch or otherwise select any of the objects of the data collection.
Mobile device 106 presents a user interface 108 that displays a data collection, which may be user customizable. In the illustrated example, user interface 108 displays a user-defined data collection 110 entitled “Seattle.” The example user interface 108 includes a “media” section 112, a “feeds” section 114, and a “sources” section 116. Media section 112 and feeds section 114 each display data based on the sources 116 associated with the Seattle data collection. In the illustrated example, the Seattle data collection includes various types of sources, including apps (e.g., The Seattle Times app), contacts (e.g., Rick), RSS feeds (e.g., Craigslist Seattle), and email subscriptions (e.g., KEXP).
As data is received from the various sources that are part of the data collection 110, the media section 112 and the feeds section 114 are dynamically updated to reflect the data as it is received. For example, as news stories are made available through the Seattle Times app, images associated with those news stories may be displayed in the media section 112. Similarly, a title of the news story and an indication that it is from The Seattle Times may be displayed in the feeds section 114. Data associated with contacts that are associated with the data collection may also be displayed in the media section 112 and/or the feeds section 114. For example, when contact Rick posts a new Facebook status or sends a tweet through his Twitter account, an indication of such may appear in the media section 112 and/or the feeds section 114.
In the example illustrated in
An operating system 308, any number of objects 310, a data collection application 312, and any number of other applications 314 are stored in memory 306 as computer-readable instructions, and are executed, at least in part, on processor 304. Objects 310 may include any combination of the following: any number of apps 316, any number of RSS feeds 318, any number of email subscriptions 320, any number of social network contacts 322, and any number of podcasts 324. In addition to the example objects illustrated in
Apps 316 may include any number of various types of applications that may be executed on mobile device 106. These apps 316 may include, but are not limited to, games, productivity tools, merchant-specific applications (e.g., apps through which airlines or other merchants provide information regarding special offers, etc.), entertainment applications, lifestyle applications, reference applications, navigation applications, health and fitness applications, and so on. Some applications, like, for instance, merchant-specific applications, may be configured to receive data that is pushed, for example, from the merchant to the client device. Such data is received, even when the app is not currently being executed, and typically is made available to the user when the app is launched. Other applications like, for instance, games, productivity tools or reference applications may not be configured to receive data over the network, but rather, function as stand-alone applications.
RSS feeds 318, email subscriptions 320, social network contacts 322, and podcasts 324 each represent objects with which a user can interact to access broadcast data. For example, a user may subscribe to RSS feeds 318, email subscriptions 320, and podcasts 324. In response to the user subscription, data is pushed over the network 104 to the mobile device 106. Similarly, social network contact 322 represents an individual or entity (e.g., a musical group) that the user has chosen to follow, for example, by becoming a “friend” or “fan” through a social networking site like Facebook or Twitter. In response to following a particular contact, status updates, tweets, and other data broadcast by that contact is pushed to mobile device 106.
Data collection application 312 includes data collection definition module 326, data collections 328, and user interface module 330. Data collection definition module 326 enables the creation and maintenance of data collections by which various combinations of object 310 may be associated with one another. For example, data collection 328(1) may be defined by a user through data collection definition module 326 to associate an app 316, an RSS feed 318, and a social network contact 322 together in one collection. Similarly, another data collection, 328(n) may be defined through data collection module 326 to associate an email subscription 320, a podcast 324, and another social networking contact 322 together in another collection. Through data collection definition module 326, a user may, for example, create a data collection, add objects to a data collection, remove objects from a data collection, rename a data collection, or delete a data collection.
User interface module 330 dynamically generates a user interface for displaying information associated with data collections 328. For example, user interface module 330 may dynamically generate user interface displays that are similar to user interface 202 and user interface 108 shown in
Although illustrated in
Computer-readable media includes, at least, two types of computer-readable media, namely computer storage media and communications media.
Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information for access by a computing device.
In contrast, communication media may embody computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave, or other transmission mechanism. As defined herein, computer storage media does not include communication media.
At block 402, a data collection is defined. For example, through interaction with data collection definition module 326, a user defines a data collection. For example, data collection definition module 326 may include a user interface through which a user may specify a name for a new data collection. Alternatively, data collection definition module 326 may be configured to automatically create a data collection based on a determined relationship between two or more objects.
At block 404, objects are associated with the data collection. For example, a user may specify one or more objects to be associated with the data collection through a user interface provided by the data collection definition module 326. Alternatively, data collection definition module 326 may be configured to automatically suggest objects to include in a data collection.
At block 406, broadcast data received in association with one or more objects in the data collection is identified. For example, if the data collection includes an app, data broadcast to the app by a distributor of the app may be identified. Similarly, if the data collection includes a social networking contact, a social network status update of the contact may be identified.
At block 408, a user interface associated with the data group is dynamically generated or updated. For example, as described above with reference to
The media section 112 and the feeds section 114 are each dynamically generated based on recent data received in association with the objects of the data collection. The data shown in the media section 112 and the feeds section 114 may be organized based on any number of criteria as well. Furthermore, the criteria used to arrange data in the media section 112 may differ from the criteria used to arrange data in the feeds section 114. For example, in the media section 112, a size and/or a relative location of a representation of a particular data source may be based on any combination of frequency of received data, relative duration since the most recently received data from each data source, and/or frequency with which a user accesses data associated with the data source. Similarly, the order of data shown in the feeds section 114 may also be based on any one or more criteria.
As described above with reference to block 406 of
At block 504, feed items associated with the data collection are dynamically selected and arranged. For example, textual representations of recently received broadcast data are displayed in the feeds section. As with the media section, the order of the information presented in the feeds section may be dynamically determined based on any number of factors including, but not limited to, a frequency with which data is received in association with the objects, based on a relative amount of time since data was most recently received in association with each object, or based on any other sorting, ranking, or organizing criteria. Furthermore, the criteria used to arrange the feed items may be the same as or different from the criteria used to arrange the media items.
At block 506, sources associated with the data collection are arranged. For example, as shown in
Although the subject matter has been described in language specific to structural features and/or methodological operations, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or operations described. Rather, the specific features and acts are disclosed as example forms of implementing the claims.