US20120210321A1 - Dormant Background Applications on Mobile Devices - Google Patents

Dormant Background Applications on Mobile Devices Download PDF

Info

Publication number
US20120210321A1
US20120210321A1 US13/164,497 US201113164497A US2012210321A1 US 20120210321 A1 US20120210321 A1 US 20120210321A1 US 201113164497 A US201113164497 A US 201113164497A US 2012210321 A1 US2012210321 A1 US 2012210321A1
Authority
US
United States
Prior art keywords
application
state
resource
dormant state
dormant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/164,497
Inventor
Bruno C. Silva
Abolade Gbadegesin
Ion Vasilian
Shawn P. Burke
Timothy Michael Kurtzman
Istvan Cseri
Randal J. Ramig
Adina Magdalena Trufinescu
Peter John Torr
Paul D. Barnett
Srivatsan Kidambi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Priority to US13/164,497 priority Critical patent/US20120210321A1/en
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: VASILIAN, ION, BURKE, SHAWN P., CSERI, ISTVAN, RAMIG, RANDAL J., TORR, Peter John, BARNETT, PAUL D., KURTZMAN, Timothy Michael, TRUFINESCU, Adina Magdalena, KIDAMBI, SRIVATSAN, SILVA, BRUNO C., GBADEGESIN, ABOLADE
Priority to TW101102210A priority patent/TW201241640A/en
Priority to PCT/US2012/024024 priority patent/WO2012112331A2/en
Priority to CN2012100322877A priority patent/CN102681896A/en
Publication of US20120210321A1 publication Critical patent/US20120210321A1/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0261Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
    • H04W52/0264Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by selectively disabling software applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • an application On a contemporary mobile device, if an application is running and is subsequently replaced in the foreground by another application or experience, the first application is deactivated and the application's process is terminated by the operating system.
  • An application may be deactivated if the user presses the Start button or if the device timeout causes the lock screen to be engaged, for example.
  • the shell may terminate the processes of dormant background applications, e.g., by tombstoning or fully terminating by not maintaining state/a marker. This frees up memory resources (and any other shared resources) for the application in the foreground.

Abstract

The subject disclosure is directed towards a technology in which a mobile device maintains an application in a dormant state in which the application's process is not terminated and remains in memory, but the application cannot execute code. Further, state and execution context are maintained for the application, allowing the application to be quickly and efficiently resumed into the running state. To prevent the application from executing code while dormant, thread activity is suspended, requests canceled, completed or paused, resources detached, and so forth. Resource usage may be monitored for dormant applications, to remove a misbehaving dormant application process from memory if improperly using resources.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • The present application claims priority to U.S. provisional patent applications Ser. Nos. 61/442,701, 61/442,713, 61/442,735, 61/442,740 and 61/442,753, each filed Feb. 14, 2011 and hereby incorporated by reference. The present application is related to U.S. patent applications attorney docket nos. 332296.02, 332297.02, 332339.02 and 332340.02, assigned to the assignee of the present invention, and hereby incorporated by reference.
  • BACKGROUND
  • On a contemporary mobile device, if an application is running and is subsequently replaced in the foreground by another application or experience, the first application is deactivated and the application's process is terminated by the operating system. An application may be deactivated if the user presses the Start button or if the device timeout causes the lock screen to be engaged, for example.
  • In one system, the user may return to the application to continue an application task/experience from where the user left it. However, when returning to an application that was terminated by the operating system, the user needs to wait for the device application framework to initialize, and for the application itself to load saved state and to resume the previous experience. Resuming in this way can seem relatively slow and thus provide a somewhat undesirable user experience.
  • SUMMARY
  • This Summary is provided to introduce a selection of representative 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 in any way that would limit the scope of the claimed subject matter.
  • Briefly, various aspects of the subject matter described herein are directed towards a technology by which an application is moved from a running (e.g., foreground) state into a dormant state in which the application process is retained in memory. Further, state data and execution context information are maintained in association with the application, which allows the application to be activated to the running state, e.g., in a rapid, efficient manner. In one aspect, moving the application from the running state into the dormant state includes pausing for a time duration to allow the application to prepare for the dormant state, e.g., persist data from memory, close any open files, and so forth.
  • In one aspect, moving the foreground application from a running state into the dormant state includes detaching at least one resource from the application, pausing at least one update notification provided by a resource to the application, canceling at least one cancellable request, pausing at least one non-cancellable request, stopping at least one thread, and/or freeing at least one application resource (e.g., memory allocated to the application).
  • To activate the application back from the dormant state to a foreground application in the running state, the state data and the execution context information is accessed, and at least one resource is attached to the application. Also described is resuming at least one update notification provided by a resource to the application, running a failure path for at least one cancellable request, resuming at least one non-cancellable request, firing at least one notification, recreating an resuming at least one thread, and/or recreating at least one application resource.
  • In one aspect, a resource monitor is configured to evaluate whether the application, when in the dormant state, is using at least one resource (e.g., CPU) beyond an allowed threshold. If so, the shell is configured to move the application from the dormant state into another state in which the process of the application is not retained in memory.
  • Other advantages may become apparent from the following detailed description when taken in conjunction with the drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The present invention is illustrated by way of example and not limited in the accompanying figures in which like reference numerals indicate similar elements and in which:
  • FIG. 1 is a block diagram representing example applications in different states hosted by an operating system shell, including applications in a dormant state.
  • FIG. 2 is state diagram showing example states for applications, including a dormant state, and transitions between the states.
  • FIG. 3A is a sequence/control diagram representing an example flow of events/control among components when launching an application.
  • FIG. 3B is a sequence/control diagram representing an example flow of events/control among components when deactivating an application.
  • FIG. 4A is a sequence/control diagram representing an example flow of events/control among components when resuming a deactivated application from a dormant state.
  • FIG. 4B is a sequence/control diagram representing an example flow of events/control among components when closing an application.
  • FIG. 5 is a block diagram representing an exemplary non-limiting computing system or operating environment, e.g., in the example of a mobile phone device, in which one or more aspects of various embodiments described herein can be implemented.
  • DETAILED DESCRIPTION
  • Various aspects of the technology described herein are generally directed towards a technology in which a mobile device or the like maintains an application in a dormant state, generally corresponding to an application that cannot execute any code when in the background. To this end, the shell component/framework that comprises the (e.g., Windows® phone) application platform retains the application process in memory, and maintains state and execution context for the application, but does not allow the process to run. For example, the shell may suspend thread activity within background applications. The dormant background application regains the ability to execute code when the user brings the application to foreground.
  • In one implementation, the operating system does not terminate the application's process when deactivating an application. Instead, applications may go in the background and remain resident in memory. This eliminates the need to reinitialize the application and reload state, which implicitly means faster application resume time.
  • It should be understood that any of the examples herein are non-limiting. For one, example implementations and dormant applications are described in the context of a Windows® mobile device operating environment, however this is only for purposes of explanation, and other operating environments may benefit from the concept of a dormant application state as described herein. As such, the present invention is not limited to any particular embodiments, aspects, concepts, structures, functionalities or examples described herein. Rather, any of the embodiments, aspects, concepts, structures, functionalities or examples described herein are non-limiting, and the present invention may be used various ways that provide benefits and advantages in computing and application/task switching in general.
  • FIG. 1 is a generalized block diagram showing various example components in a mobile device environment. A plurality of applications are controlled by a shell 102 (application framework), which provides access to device resources, including exclusive resources 104 (e.g., the display) that only one application, usually only the foreground application 106, typically can access, and shared resources 108 (e.g., memory, networking and so forth) that the foreground application 106 and other applications may use.
  • As exemplified in FIG. 1, one or more applications are tombstoned applications 110 1-110 m. More particularly, in conventional mobile devices, applications are terminated shortly after they are no longer the foreground application. In previous devices, the application remained terminated (e.g., block 112) and had to be fully re-launched as a new instance. In some more contemporary mobile devices, if the UX (user experience, including user interface components) provides mechanisms for the user to navigate back to application instances, each application instead may be tombstoned in contrast to terminated, meaning that the application is given a chance to save state, after which the process is torn down and a marker of its prior existence is kept on an application stack.
  • The technology described herein is directed towards maintaining one or more applications as dormant applications 114 1-114 n, in which a dormant application (e.g., its process) is retained as resident in memory, in conjunction with maintaining the application's associated state and execution context. This allows a dormant application to be more rapidly activated (relative to tombstoned applications) to the foreground running state.
  • FIG. 2 is a state diagram showing example states of an application once the user launches the application (block 222) and the application enters the running state 224. In this example, the application remains in the running state 224 until the user takes a user interaction, navigation-related action, namely a backward navigation action (block 226, e.g., back past the application in the stack, or a close the application action), which in response closes the application, or a forward navigation action (block 228), such as pressing the Start button, which deactivates the application.
  • When deactivated, the shell/framework notifies the application and pauses for a duration (e.g., for up to ten seconds) to give the application time to prepare for becoming a dormant application. For example, the application is given time to persist memory, close any open files, and so forth.
  • Pausing is represented in FIG. 2 by the pausing state 230, which when pausing completes (block 234) enters the dormant state 236. In the event the user returns to the application (activated, block 240) before the full pause time is reached, the application returns to the running state 224.
  • The shell 102 detects when an application is deactivated, and moves it into the dormant state 236. When detected, the shell 102 performs certain operations to ensure that the dormant application is not able to interfere with the new foreground application. For example, the shell 102 cancels any cancellable requests, may block API utilization, releases exclusive hardware resources attached to the deactivated application, and suspends threads created by the application or on behalf of the application. The shell suspends the application's thread activity and prevents the background application from consuming CPU cycles. By doing so, dormant background applications act as if the process was terminated by the operating system and do not continue using the device's battery or slow down the device foreground activity.
  • Note that for performance/perceived performance, some of these operations may be in parallel with preparing the new foreground application. For example, the shell may give the new application the display resource during the pause time so that the user does not have to wait the full ten seconds to perceive the change to the new foreground application. The foreground application may not be given the camera resource right away, e.g., in case the user inadvertently pressed the Start button, for example, and wants to return to the application that was running.
  • The shell detaches resources from deactivated applications. Examples of such resources include the vibration controller, sound and media player, photo/video camera, location services, sensors, networking and so forth. By doing so, in the dormant state 236, dormant background applications act as if the process was terminated by the operating system and does not continue using device resources or prevent the application in the foreground from using these resources.
  • The shell may release memory resources from dormant background applications to minimize the memory footprint in the operating system. The smaller the application memory footprint, the greater the number of dormant background applications that are able to reside in memory, and thus be quickly resumed.
  • The shell 102, e.g., via a resource monitor component 120 (FIG. 1, incorporated therein or coupled thereto) also may monitor usage of at least one resource (e.g., CPU usage) by the dormant application. More particularly, a general goal is that a dormant application performs no significant activity, including that no code runs; however some code (e.g., first party native applications) may continue to run code. Thus, after the ten second duration to allow preparation for becoming dormant, the shell may enforce resource non-usage. To this end, periodically (e.g., every five minutes) or according to some other event, each dormant application's CPU usage is checked. If still dormant and there is some CPU usage, (e.g., CPU usage>0 or some other allowed threshold), the dormant application is moved to the tombstoned state 238 (FIG. 2). This may checked regardless of other state (e.g., not just when the device/phone is idle). Further, a progressive tightening policy may be used, e.g., the threshold may be non-zero and decrease over time.
  • If necessary, such as when the operating system reaches out-of-memory conditions, the shell may terminate the processes of dormant background applications, e.g., by tombstoning or fully terminating by not maintaining state/a marker. This frees up memory resources (and any other shared resources) for the application in the foreground.
  • To summarize, when paused, the system shell operates to detach exclusive use resources from underneath the application, and detach shared use resources from underneath the application. The shell pauses update notifications provided by a resource to the application. For cancellable requests that are pending, the shell cancels them; any non-cancellable requests are paused or given a completion notification. In process (in-proc) native threads created on behalf of the application are stopped, and if possible, any out of process (out-of-proc) native threads created on behalf of the application are stopped. Any application resources that can be easily and quickly recreated are freed.
  • Turning to activating/resuming the application from the dormant state, upon application activation, the framework resumes the application threads and runs the normal failure paths for cancelled requests, and attaches resources on behalf of the application. More particularly, when resuming, the system shell operates to reattach exclusive use resources and restore their state. If possible, shared use resources are reattached and their state restored. Update notifications provided by a resource to the application are resumed. For cancellable requests that were cancelled, the normal failure path in the application is run. Any non-cancellable requests are resumed, and any pending completion notifications are fired. The shell recreates/resumes any in-proc native threads created on behalf of the application, and any out-of-proc native threads created on behalf of the application as needed. Freed resources are also recreated as needed.
  • FIGS. 3A-4B are sequence diagrams directed towards a Windows® mobile device environment, generally showing how events trigger various components to participate in deactivating an application to the dormant state, and activating an application from the dormant state. FIG. 3A illustrates example combined control flows for a forward navigation scenario where an application is launching while an application (previously in the foreground) is deactivated (FIG. 3B). FIGS. 4A and 4B are sequence diagrams illustrating example combined control flows for resuming an activated application (FIG. 4A), and closing an application (FIG. 4B).
  • In FIGS. 3A-4B, the shell 102 comprises a server that hosts one or more client processes, e.g., the taskhost.exe 330 for each application. To start a launched task (FIG. 3A), a shell execution manager 331 communicates with a client execution manager 332, which in turn signals a task host component 334. In FIGS. 3A-4D, the task host component 334 communicates with a frame component 336 that handle pages exposed by application navigation, e.g., puts previous pages on a stack for navigation, manages buffers (including using an internal splash application to allocate image buffers) and so forth. As the user interacts via pages, the frame component generates events. The SLM/XNA and CLR components 338 and 340 refer to Silverlight®-based and common language runtimes, respectively, used in this example environment. The application code is represented via the app component 342.
  • Exemplary Operating Environment
  • FIG. 5 illustrates an example of a suitable mobile device 500 on which aspects of the subject matter described herein may be implemented. The mobile device 500 is only one example of a device and is not intended to suggest any limitation as to the scope of use or functionality of aspects of the subject matter described herein. Neither should the mobile device 500 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary mobile device 500.
  • With reference to FIG. 5, an exemplary device for implementing aspects of the subject matter described herein includes a mobile device 500. In some embodiments, the mobile device 500 comprises a cell phone, a handheld device that allows voice communications with others, some other voice communications device, or the like. In these embodiments, the mobile device 500 may be equipped with a camera for taking pictures, although this may not be required in other embodiments. In other embodiments, the mobile device 500 may comprise a personal digital assistant (PDA), hand-held gaming device, notebook computer, printer, appliance including a set-top, media center, or other appliance, other mobile devices, or the like. In yet other embodiments, the mobile device 500 may comprise devices that are generally considered non-mobile such as personal computers, servers, or the like.
  • Components of the mobile device 500 may include, but are not limited to, a processing unit 505, system memory 510, and a bus 515 that couples various system components including the system memory 510 to the processing unit 505. The bus 515 may include any of several types of bus structures including a memory bus, memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures, and the like. The bus 515 allows data to be transmitted between various components of the mobile device 500.
  • The mobile device 500 may include a variety of computer-readable media. Computer-readable media can be any available media that can be accessed by the mobile device 500 and includes both volatile and nonvolatile media, and removable and non-removable media. By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, 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 disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the mobile device 500.
  • Communication media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, Bluetooth®, Wireless USB, infrared, WiFi, WiMAX, and other wireless media. Combinations of any of the above should also be included within the scope of computer-readable media.
  • The system memory 510 includes computer storage media in the form of volatile and/or nonvolatile memory and may include read only memory (ROM) and random access memory (RAM). On a mobile device such as a cell phone, operating system code 520 is sometimes included in ROM although, in other embodiments, this is not required. Similarly, application programs 525 are often placed in RAM although again, in other embodiments, application programs may be placed in ROM or in other computer-readable memory. The heap 530 provides memory for state associated with the operating system 520 and the application programs 525. For example, the operating system 520 and application programs 525 may store variables and data structures in the heap 530 during their operations.
  • The mobile device 500 may also include other removable/non-removable, volatile/nonvolatile memory. By way of example, FIG. 5 illustrates a flash card 535, a hard disk drive 536, and a memory stick 537. The hard disk drive 536 may be miniaturized to fit in a memory slot, for example. The mobile device 500 may interface with these types of non-volatile removable memory via a removable memory interface 531, or may be connected via a universal serial bus (USB), IEEE 5394, one or more of the wired port(s) 540, or antenna(s) 565. In these embodiments, the removable memory devices 535-537 may interface with the mobile device via the communications module(s) 532. In some embodiments, not all of these types of memory may be included on a single mobile device. In other embodiments, one or more of these and other types of removable memory may be included on a single mobile device.
  • In some embodiments, the hard disk drive 536 may be connected in such a way as to be more permanently attached to the mobile device 500. For example, the hard disk drive 536 may be connected to an interface such as parallel advanced technology attachment (PATA), serial advanced technology attachment (SATA) or otherwise, which may be connected to the bus 515. In such embodiments, removing the hard drive may involve removing a cover of the mobile device 500 and removing screws or other fasteners that connect the hard drive 536 to support structures within the mobile device 500.
  • The removable memory devices 535-537 and their associated computer storage media, discussed above and illustrated in FIG. 5, provide storage of computer-readable instructions, program modules, data structures, and other data for the mobile device 500. For example, the removable memory device or devices 535-537 may store images taken by the mobile device 500, voice recordings, contact information, programs, data for the programs and so forth.
  • A user may enter commands and information into the mobile device 500 through input devices such as a key pad 541 and the microphone 542. In some embodiments, the display 543 may be touch-sensitive screen and may allow a user to enter commands and information thereon. The key pad 541 and display 543 may be connected to the processing unit 505 through a user input interface 550 that is coupled to the bus 515, but may also be connected by other interface and bus structures, such as the communications module(s) 532 and wired port(s) 540. Motion detection 552 can be used to determine gestures made with the device 500.
  • A user may communicate with other users via speaking into the microphone 542 and via text messages that are entered on the key pad 541 or a touch sensitive display 543, for example. The audio unit 555 may provide electrical signals to drive the speaker 544 as well as receive and digitize audio signals received from the microphone 542.
  • The mobile device 500 may include a video unit 560 that provides signals to drive a camera 561. The video unit 560 may also receive images obtained by the camera 561 and provide these images to the processing unit 505 and/or memory included on the mobile device 500. The images obtained by the camera 561 may comprise video, one or more images that do not form a video, or some combination thereof.
  • The communication module(s) 532 may provide signals to and receive signals from one or more antenna(s) 565. One of the antenna(s) 565 may transmit and receive messages for a cell phone network. Another antenna may transmit and receive Bluetooth® messages. Yet another antenna (or a shared antenna) may transmit and receive network messages via a wireless Ethernet network standard.
  • Still further, an antenna provides location-based information, e.g., GPS signals to a GPS interface and mechanism 572. In turn, the GPS mechanism 572 makes available the corresponding GPS data (e.g., time and coordinates) for processing.
  • In some embodiments, a single antenna may be used to transmit and/or receive messages for more than one type of network. For example, a single antenna may transmit and receive voice and packet messages.
  • When operated in a networked environment, the mobile device 500 may connect to one or more remote devices. The remote devices may include a personal computer, a server, a router, a network PC, a cell phone, a media playback device, a peer device or other common network node, and typically includes many or all of the elements described above relative to the mobile device 500.
  • Aspects of the subject matter described herein are operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well known computing systems, environments, and/or configurations that may be suitable for use with aspects of the subject matter described herein include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microcontroller-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • Aspects of the subject matter described herein may be described in the general context of computer-executable instructions, such as program modules, being executed by a mobile device. Generally, program modules include routines, programs, objects, components, data structures, and so forth, which perform particular tasks or implement particular abstract data types. Aspects of the subject matter described herein may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
  • Furthermore, although the term server may be used herein, it will be recognized that this term may also encompass a client, a set of one or more processes distributed on one or more computers, one or more stand-alone storage devices, a set of one or more other devices, a combination of one or more of the above, and the like.
  • Conclusion
  • While the invention is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. It should be understood, however, that there is no intention to limit the invention to the specific forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions, and equivalents falling within the spirit and scope of the invention.

Claims (20)

1. In a computing environment, a method performed at least in part on at least one processor, comprising, moving an application from a running state into a dormant state, including retaining an application process in memory, and maintaining state data and execution context information in association with the application that allows the application to be activated to the running state.
2. The method of claim 1 wherein moving the application from the running state into the dormant state includes pausing for a time duration to allow the application to prepare for the dormant state.
3. The method of claim 1 wherein moving the application from the running state into the dormant state occurs in response to detecting user interaction corresponding to forward navigation.
4. The method of claim 1 further comprising, activating the application from the dormant state into a running state, wherein moving the application from the dormant state into the running state occurs in response to detecting user interaction corresponding to backward navigation.
5. The method of claim 1 wherein moving the application from the running state into the dormant state includes suspending at least one thread created by the application or on behalf of the application, or both.
6. The method of claim 1 wherein moving the application from the running state into the dormant state includes canceling at least one cancellable request.
7. The method of claim 1 wherein moving the application from the running state into the dormant state includes blocking utilization of APIs by the application.
8. The method of claim 1 wherein moving the application from the running state into the dormant state includes releasing at least one resource attached to the application.
9. The method of claim 1 wherein the application is dormant on a mobile computing device, and further comprising, determining that the device needs more available memory, terminating the application process, including moving the application from the dormant state into a terminated state, and reclaiming at least some of the memory that was used for retaining the application process.
10. The method of claim 1 further comprising, monitoring resource usage of the dormant application, and if the resource usage exceeds a threshold, moving the application from the dormant state into a tombstoned state.
11. The method of claim 1 further comprising, activating the application from the dormant state into a running state, including accessing the state data and the execution context information.
12. The method of claim 11 wherein moving the application from the running state into the dormant state includes suspending at least one thread created by the application or on behalf of the application, or both, and wherein activating the application from the dormant state into the running state comprises resuming at least one suspended thread created by the application or on behalf of the application, or both.
13. The method of claim 11 wherein maintaining the application in the dormant state further comprises canceling at least one cancellable request, and wherein activating the application further comprises, running a failure path for at least one cancelled request.
14. The method of claim 11 wherein maintaining the application in the dormant state further comprises blocking utilization of APIs, and wherein activating the application further comprises allowing utilization of APIs.
15. The method of claim 11 wherein maintaining the application in the dormant state further comprises, releasing at least one resource associated with the application, and wherein activating the application further comprises attaching at least one resource to the application.
16. In a computing environment, a system comprising, a shell component configured to transition applications between states, including from a running state into a dormant state in which a process of the application is retained in memory, and a resource monitor component coupled to the shell component, the resource monitor component configured to evaluate whether the application when in the dormant state is using at least one resource beyond an allowed threshold, and if so, the shell component configured to move the application from the dormant state into a state in which the process of the application is not retained in memory.
17. The system of claim 16 wherein when moving the application into the dormant state, the shell component is further configured to detach at least one resource from the application, pause at least one update notification provided by a resource to the application, cancel at least one cancellable request, pause or complete or both at least one non-cancellable request, stop at least one thread, or free at least one application resource, or any combination thereof.
18. The system of claim 16 wherein the shell component is further configured to activate the application from the dormant state to a running state, including by attaching at least one resource to the application, resuming at least one update notification provided by a resource to the application, running a failure path for at least one cancellable request, resuming at least one non-cancellable request, firing at least one notification, recreating an resuming at least one thread, or recreating at least one application resource, or any combination thereof.
19. One or more computer-readable media having computer-executable instructions, which when executed perform steps, comprising,
moving a foreground application from a running state into a dormant state, including pausing for a time to allow the application to prepare for the dormant state, detaching at least one resource from the application, blocking API utilization, pausing at least one update notification provided by a resource to the application, canceling at least one cancellable request, pausing at least one non-cancellable request, stopping at least one thread, or freeing at least one application resource, or any combination thereof; and
moving the application from the dormant state to a foreground application in the running state, including by attaching at least one resource to the application, resuming at least one update notification provided by a resource to the application, allowing API utilization, running a failure path for at least one cancellable request, resuming at least one non-cancellable request, firing at least one notification, recreating an resuming at least one thread, or recreating at least one application resource, or any combination thereof
20. The one or more computer-readable media of claim 19 having further computer-executable instructions comprising, detecting navigation commands, and moving the foreground application from the running state into the dormant state based upon at least one navigation command, and moving the application from the dormant state into the running state based upon at least one other navigation command.
US13/164,497 2011-02-14 2011-06-20 Dormant Background Applications on Mobile Devices Abandoned US20120210321A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US13/164,497 US20120210321A1 (en) 2011-02-14 2011-06-20 Dormant Background Applications on Mobile Devices
TW101102210A TW201241640A (en) 2011-02-14 2012-01-19 Dormant background applications on mobile devices
PCT/US2012/024024 WO2012112331A2 (en) 2011-02-14 2012-02-06 Dormant background applications on mobile devices
CN2012100322877A CN102681896A (en) 2011-02-14 2012-02-14 Dormant background applications on mobile devices

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201161442753P 2011-02-14 2011-02-14
US201161442701P 2011-02-14 2011-02-14
US201161442735P 2011-02-14 2011-02-14
US201161442713P 2011-02-14 2011-02-14
US201161442740P 2011-02-14 2011-02-14
US13/164,497 US20120210321A1 (en) 2011-02-14 2011-06-20 Dormant Background Applications on Mobile Devices

Publications (1)

Publication Number Publication Date
US20120210321A1 true US20120210321A1 (en) 2012-08-16

Family

ID=46637513

Family Applications (8)

Application Number Title Priority Date Filing Date
US13/162,459 Abandoned US20120209413A1 (en) 2011-02-14 2011-06-16 Background Audio on Mobile Devices
US13/162,096 Active US10631246B2 (en) 2011-02-14 2011-06-16 Task switching on mobile devices
US13/162,936 Active US9060196B2 (en) 2011-02-14 2011-06-17 Constrained execution of background application code on mobile devices
US13/164,497 Abandoned US20120210321A1 (en) 2011-02-14 2011-06-20 Dormant Background Applications on Mobile Devices
US13/164,678 Active 2032-09-14 US9560405B2 (en) 2011-02-14 2011-06-20 Background transfer service for applications on mobile devices
US15/384,303 Active US10009850B2 (en) 2011-02-14 2016-12-19 Background transfer service for applications on mobile devices
US16/001,799 Active US10542496B2 (en) 2011-02-14 2018-06-06 Background transfer service for applications on mobile devices
US16/747,394 Active US11006369B2 (en) 2011-02-14 2020-01-20 Background transfer service for applications on mobile devices

Family Applications Before (3)

Application Number Title Priority Date Filing Date
US13/162,459 Abandoned US20120209413A1 (en) 2011-02-14 2011-06-16 Background Audio on Mobile Devices
US13/162,096 Active US10631246B2 (en) 2011-02-14 2011-06-16 Task switching on mobile devices
US13/162,936 Active US9060196B2 (en) 2011-02-14 2011-06-17 Constrained execution of background application code on mobile devices

Family Applications After (4)

Application Number Title Priority Date Filing Date
US13/164,678 Active 2032-09-14 US9560405B2 (en) 2011-02-14 2011-06-20 Background transfer service for applications on mobile devices
US15/384,303 Active US10009850B2 (en) 2011-02-14 2016-12-19 Background transfer service for applications on mobile devices
US16/001,799 Active US10542496B2 (en) 2011-02-14 2018-06-06 Background transfer service for applications on mobile devices
US16/747,394 Active US11006369B2 (en) 2011-02-14 2020-01-20 Background transfer service for applications on mobile devices

Country Status (4)

Country Link
US (8) US20120209413A1 (en)
EP (1) EP2676206B1 (en)
CN (3) CN102779070A (en)
WO (2) WO2012112405A2 (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014143969A2 (en) * 2013-03-15 2014-09-18 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US20140325518A1 (en) * 2013-04-24 2014-10-30 Samsung Electronics Co., Ltd. Method and device for managing memory of user device
US9060196B2 (en) 2011-02-14 2015-06-16 Microsoft Technology Licensing, Llc Constrained execution of background application code on mobile devices
US9301173B2 (en) 2013-03-15 2016-03-29 The Nielsen Company (Us), Llc Methods and apparatus to credit internet usage
US9307418B2 (en) 2011-06-30 2016-04-05 The Nielson Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US9471378B2 (en) 2012-05-31 2016-10-18 Apple Inc. Adaptive resource management of a data processing system
US20160335265A1 (en) * 2015-05-11 2016-11-17 Samsung Electronics Co., Ltd. User terminal apparatus and controlling method thereof
US9690685B2 (en) 2014-05-30 2017-06-27 Apple Inc. Performance management based on resource consumption
US20170205870A1 (en) * 2016-01-15 2017-07-20 Google Inc. Systems and methods for extending battery life by monitoring mobile application activity
US20170208549A1 (en) * 2016-01-15 2017-07-20 Google Inc. Systems and methods for extending battery life by monitoring device activity
US9736136B2 (en) 2010-08-14 2017-08-15 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US9762688B2 (en) 2014-10-31 2017-09-12 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US9760417B2 (en) 2014-03-10 2017-09-12 Microsoft Technology Licensing, Llc Application dehydration and rehydration during application-to-application calls
US9798580B2 (en) 2014-08-26 2017-10-24 Alibaba Group Holding Limited Method and apparatus for managing background application
CN107912063A (en) * 2016-04-27 2018-04-13 华为技术有限公司 A kind of method for recovering internal storage and device
US10320925B2 (en) 2010-08-14 2019-06-11 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US20190370015A1 (en) * 2018-06-05 2019-12-05 Microsoft Technology Licensing, Llc Operating system service for persistently executing programs
US10552179B2 (en) 2014-05-30 2020-02-04 Apple Inc. Resource management with dynamic resource policies
US11182213B2 (en) * 2016-03-31 2021-11-23 Banma Zhixing Network (Hongkong) Co., Limited Application program management method and device
US11196875B2 (en) * 2017-09-20 2021-12-07 Fujifilm Business Innovation Corp. Application apparatus, image processing apparatus, and non-transitory computer readable medium with plurality of recovery methods for applications switching to be in operation target state
US11409567B2 (en) * 2017-10-13 2022-08-09 Huawei Technologies Co., Ltd. Application management method and terminal
US11423420B2 (en) 2015-02-06 2022-08-23 The Nielsen Company (Us), Llc Methods and apparatus to credit media presentations for online media distributions

Families Citing this family (267)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US8307180B2 (en) 2008-02-28 2012-11-06 Nokia Corporation Extended utilization area for a memory device
TWI374382B (en) * 2008-09-01 2012-10-11 Htc Corp Icon operation method and icon operation module
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US8874824B2 (en) 2009-06-04 2014-10-28 Memory Technologies, LLC Apparatus and method to share host system RAM with mass storage memory RAM
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US9538003B2 (en) * 2009-09-18 2017-01-03 Audionow Ip Holdings, Llc System and method for interactive advertisement augmentation via a called voice connection
US20110099507A1 (en) 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
EP2577435B8 (en) * 2010-05-25 2017-12-06 Sony Mobile Communications Inc. A user interface for a touch sensitive display on an electronic device
US9110743B2 (en) * 2010-12-21 2015-08-18 Microsoft Technology Licensing, Llc Extensible system action for sharing while remaining in context
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
JP5772132B2 (en) * 2011-03-25 2015-09-02 富士通株式会社 Data transfer apparatus, data transfer method, and information processing apparatus
US9398103B2 (en) * 2011-04-15 2016-07-19 Qualcomm Incorporated Methods and apparatus for enhancing device performance through flow control
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9069380B2 (en) 2011-06-10 2015-06-30 Aliphcom Media device, application, and content management using sensory input
US9201812B2 (en) * 2011-07-25 2015-12-01 Aliphcom Multiple logical representations of audio functions in a wireless audio transmitter that transmits audio data at different data rates
US20130054325A1 (en) * 2011-08-29 2013-02-28 Ebay Inc. Mobile platform for redeeming deals
US9032413B2 (en) * 2011-09-01 2015-05-12 Microsoft Technology Licensing, Llc Decoupling background work and foreground work
US20130060661A1 (en) * 2011-09-06 2013-03-07 Apple Inc. Managing access to digital content items
US8701125B2 (en) * 2011-09-06 2014-04-15 The Nielsen Company (Us), Llc Methods and apparatus to detect uninstallation of an on-device meter
US9417998B2 (en) 2012-01-26 2016-08-16 Memory Technologies Llc Apparatus and method to provide cache move with non-volatile mass memory system
KR102008495B1 (en) * 2012-02-24 2019-08-08 삼성전자주식회사 Method for sharing content and mobile terminal thereof
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US8681801B2 (en) * 2012-03-09 2014-03-25 Alcatel Lucent Method and apparatus for determining available bandwidth for wireless communication
US10528994B2 (en) * 2012-03-29 2020-01-07 International Business Machines Corporation Allocation of application licenses within cloud or infrastructure
US9311226B2 (en) 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9164804B2 (en) 2012-06-20 2015-10-20 Memory Technologies Llc Virtual memory module
US9116820B2 (en) 2012-08-28 2015-08-25 Memory Technologies Llc Dynamic central cache memory
US9201693B2 (en) * 2012-09-04 2015-12-01 Microsoft Technology Licensing, Llc Quota-based resource management
US20140113616A1 (en) * 2012-10-19 2014-04-24 Sony Mobile Communications Ab Network initiated terminal background activity control
ES2797673T3 (en) * 2012-11-05 2020-12-03 Accenture Global Services Ltd Control a data flow
US10194239B2 (en) * 2012-11-06 2019-01-29 Nokia Technologies Oy Multi-resolution audio signals
US10185416B2 (en) 2012-11-20 2019-01-22 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving movement of device
US11237719B2 (en) 2012-11-20 2022-02-01 Samsung Electronics Company, Ltd. Controlling remote electronic device with wearable electronic device
US10551928B2 (en) 2012-11-20 2020-02-04 Samsung Electronics Company, Ltd. GUI transitions on wearable electronic device
US11157436B2 (en) 2012-11-20 2021-10-26 Samsung Electronics Company, Ltd. Services associated with wearable electronic device
US10423214B2 (en) 2012-11-20 2019-09-24 Samsung Electronics Company, Ltd Delegating processing from wearable electronic device
US11372536B2 (en) * 2012-11-20 2022-06-28 Samsung Electronics Company, Ltd. Transition and interaction model for wearable electronic device
US8994827B2 (en) 2012-11-20 2015-03-31 Samsung Electronics Co., Ltd Wearable electronic device
US9477313B2 (en) 2012-11-20 2016-10-25 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving outward-facing sensor of device
CN103076944A (en) * 2013-01-05 2013-05-01 深圳市中兴移动通信有限公司 WEBOS (Web-based Operating System)-based application switching method and system and mobile handheld terminal
CN103915095B (en) * 2013-01-06 2017-05-31 华为技术有限公司 The method of speech recognition, interactive device, server and system
CN103973729B (en) * 2013-01-28 2018-07-03 联想(北京)有限公司 Information processing method and information processing unit
BR112015018905B1 (en) 2013-02-07 2022-02-22 Apple Inc Voice activation feature operation method, computer readable storage media and electronic device
US10223450B1 (en) * 2013-03-14 2019-03-05 Google Llc Data delivery
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
CN103176842B (en) * 2013-03-15 2016-04-27 广东欧珀移动通信有限公司 background process management method and mobile terminal thereof
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9996246B2 (en) 2013-03-27 2018-06-12 Samsung Electronics Co., Ltd. Device and method for displaying execution result of application
WO2014157893A1 (en) 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Method and device for providing a private page
WO2014157894A1 (en) 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Display apparatus displaying user interface and method of providing the user interface
WO2014157897A1 (en) 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Method and device for switching tasks
WO2014157908A1 (en) 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Device and method for displaying execution result of application
US10229258B2 (en) 2013-03-27 2019-03-12 Samsung Electronics Co., Ltd. Method and device for providing security content
WO2014157886A1 (en) 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Method and device for executing application
KR102164454B1 (en) * 2013-03-27 2020-10-13 삼성전자주식회사 Method and device for providing a private page
WO2014157885A1 (en) 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Method and device for providing menu interface
KR20140123818A (en) * 2013-04-15 2014-10-23 삼성전자주식회사 Controlling Method for Audio output and Electronic Device supporting the same
US9955286B2 (en) * 2013-05-08 2018-04-24 Natalya Segal Smart wearable devices and system therefor
US20140359637A1 (en) * 2013-06-03 2014-12-04 Microsoft Corporation Task continuance across devices
KR20140142996A (en) * 2013-06-05 2014-12-15 삼성전자주식회사 Method for processing data of applet included in a plurity of secure element and apparatus for the same
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
CN105264524B (en) 2013-06-09 2019-08-02 苹果公司 For realizing the equipment, method and graphic user interface of the session continuity of two or more examples across digital assistants
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US10223156B2 (en) * 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
US8789040B1 (en) * 2013-07-16 2014-07-22 Appenity LLC Converting non-natively executable programs to downloadable executable programs
KR20150020350A (en) * 2013-08-12 2015-02-26 삼성전자주식회사 Apparatus and method for delegating a multimedia content in communication system
CN104424432B (en) * 2013-08-26 2017-11-28 联想(北京)有限公司 A kind of information processing method and electronic equipment
CN103561299B (en) * 2013-10-31 2017-09-08 宇龙计算机通信科技(深圳)有限公司 Method for broadcasting multimedia file, mobile terminal and multimedia file playing system
CN104639721B (en) * 2013-11-06 2018-11-27 阿里巴巴集团控股有限公司 The method and device of application information is provided in mobile terminal device
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
TWI616803B (en) * 2013-12-27 2018-03-01 宏碁股份有限公司 Method, apparatus and computer program product for zooming and operating screen frame
CN104750351A (en) * 2013-12-30 2015-07-01 比亚迪股份有限公司 Mobile terminal and desktop homing method and device thereof
CN103744671B (en) * 2013-12-31 2017-06-27 联想(北京)有限公司 The method and electronic equipment of a kind of information processing
US9558787B2 (en) 2014-01-29 2017-01-31 Google Inc. Media application backgrounding
US9432472B2 (en) 2014-02-24 2016-08-30 Microsoft Technology Licensing, Llc Accelerated training of personal daemons
US9473944B2 (en) 2014-02-24 2016-10-18 Microsoft Technology Licensing, Llc Local personal daemon
US9218497B2 (en) 2014-02-24 2015-12-22 Microsoft Technology Licensing, Llc Incentive-based app execution
US10691332B2 (en) 2014-02-28 2020-06-23 Samsung Electronics Company, Ltd. Text input on an interactive display
CN104899199B (en) * 2014-03-04 2018-12-28 阿里巴巴集团控股有限公司 A kind of data warehouse data processing method and system
US9871741B2 (en) * 2014-03-10 2018-01-16 Microsoft Technology Licensing, Llc Resource management based on device-specific or user-specific resource usage profiles
TWI602125B (en) * 2014-04-17 2017-10-11 國立臺灣大學 Resource allocation method
JP6399794B2 (en) * 2014-04-25 2018-10-03 キヤノン株式会社 Information processing terminal, control method, and program
US9560055B2 (en) 2014-04-30 2017-01-31 Microsoft Technology Licensing, Llc Client-side integration framework of services
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US9432796B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on peer event data
US9537852B2 (en) * 2014-06-04 2017-01-03 Sonos, Inc. Cloud queue access control
CN104038806B (en) * 2014-06-11 2017-09-29 深圳市九洲电器有限公司 A kind of application interface display methods and set top box
CN104346560B (en) * 2014-06-25 2017-06-16 腾讯科技(深圳)有限公司 A kind of safe verification method and device
CN104023147B (en) * 2014-06-27 2016-05-11 广东欧珀移动通信有限公司 A kind of method and system that make mobile terminal stablize dormancy
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9665248B2 (en) * 2014-07-15 2017-05-30 Google Inc. Adaptive background playback behavior
US11275861B2 (en) * 2014-07-25 2022-03-15 Fisher-Rosemount Systems, Inc. Process control software security architecture based on least privileges
CN105446803A (en) * 2014-08-18 2016-03-30 阿里巴巴集团控股有限公司 Application management method and apparatus
US20160085840A1 (en) * 2014-09-22 2016-03-24 Microsoft Corporation Universal Interaction for Capturing Content to Persistent Storage
US10448111B2 (en) 2014-09-24 2019-10-15 Microsoft Technology Licensing, Llc Content projection
US10635296B2 (en) 2014-09-24 2020-04-28 Microsoft Technology Licensing, Llc Partitioned application presentation across devices
US9860306B2 (en) * 2014-09-24 2018-01-02 Microsoft Technology Licensing, Llc Component-specific application presentation histories
US9769227B2 (en) 2014-09-24 2017-09-19 Microsoft Technology Licensing, Llc Presentation of computing environment on multiple devices
US10025684B2 (en) 2014-09-24 2018-07-17 Microsoft Technology Licensing, Llc Lending target device resources to host device computing environment
US9678640B2 (en) 2014-09-24 2017-06-13 Microsoft Technology Licensing, Llc View management architecture
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
CN104407981B (en) * 2014-10-28 2018-03-20 小米科技有限责任公司 EMS memory management process and device
US10192549B2 (en) 2014-11-28 2019-01-29 Microsoft Technology Licensing, Llc Extending digital personal assistant action providers
CN104503740A (en) * 2014-12-01 2015-04-08 小米科技有限责任公司 Memory management method and device
US9959129B2 (en) 2015-01-09 2018-05-01 Microsoft Technology Licensing, Llc Headless task completion within digital personal assistants
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US20160291846A1 (en) * 2015-03-31 2016-10-06 Airwatch Llc Generating carousel user interface with graphics processing unit
CN104793846A (en) * 2015-04-27 2015-07-22 小米科技有限责任公司 Displaying method and device for interface of application program
US9405597B1 (en) 2015-05-01 2016-08-02 Salesforce.Com, Inc. Centralized throttling service
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10594835B2 (en) 2015-06-05 2020-03-17 Apple Inc. Efficient context monitoring
US10069785B2 (en) 2015-06-05 2018-09-04 Apple Inc. Network messaging for paired devices
KR20160143429A (en) * 2015-06-05 2016-12-14 엘지전자 주식회사 Mobile terminal and method for controlling the same
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10659845B2 (en) 2015-08-06 2020-05-19 Google Llc Methods, systems, and media for providing video content suitable for audio-only playback
US10216694B2 (en) 2015-08-24 2019-02-26 Google Llc Generic scheduling
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
CN105335242B (en) * 2015-11-02 2019-03-26 传线网络科技(上海)有限公司 The method and system of backstage to download video files in IOS system
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US11086418B2 (en) * 2016-02-04 2021-08-10 Douzen, Inc. Method and system for providing input to a device
KR102459031B1 (en) * 2016-02-15 2022-10-26 삼성전자 주식회사 Electronic device and method for displaying application used therein
EP3430613B1 (en) * 2016-03-16 2019-10-30 Sony Mobile Communications Inc. Controlling playback of speech-containing audio data
CN105868624A (en) * 2016-03-23 2016-08-17 北京小米移动软件有限公司 Application program authority management method and device
US10216370B2 (en) * 2016-03-29 2019-02-26 Microsoft Technology Licensing, Llc Tabs in system task switchers
CN105704239B (en) * 2016-03-31 2018-08-24 广州指点网络科技有限公司 High-speed downloads hotspot cloud terminal and application process
US20170353603A1 (en) * 2016-06-03 2017-12-07 Facebook, Inc. Recommending applications using social networking information
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10747467B2 (en) 2016-06-10 2020-08-18 Apple Inc. Memory management for application loading
US10725761B2 (en) * 2016-06-10 2020-07-28 Apple Inc. Providing updated application data for previewing applications on a display
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10520979B2 (en) 2016-06-10 2019-12-31 Apple Inc. Enhanced application preview mode
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
CN105955701A (en) * 2016-06-21 2016-09-21 深圳市金立通信设备有限公司 Volume adjustment method and terminal
KR20180013608A (en) * 2016-07-29 2018-02-07 삼성전자주식회사 Method and apparatus for reducing power consumption of electronic device
US20180063670A1 (en) * 2016-08-26 2018-03-01 Microsoft Technology Licensing, Llc Background management of mobile applications
US11599383B2 (en) * 2016-08-30 2023-03-07 Microsoft Technology Licensing, Llc Concurrent execution of task instances relating to a plurality of applications
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
CN107968960A (en) * 2016-10-20 2018-04-27 中兴通讯股份有限公司 A kind of backstage audio and video playing control method and device
CN106559572B (en) * 2016-11-15 2020-12-01 泾县谷声信息科技有限公司 Noise positioning method and device
US10353686B1 (en) * 2016-12-28 2019-07-16 Facebook, Inc. Application installation system
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10666707B2 (en) * 2017-01-11 2020-05-26 Microsoft Technology Licensing, Llc Nonconsecutive file downloading
US10536322B2 (en) 2017-01-17 2020-01-14 Microsoft Technology Licensing, Llc Resource management for services
CN106897135A (en) * 2017-02-28 2017-06-27 努比亚技术有限公司 Restoration methods and device after a kind of application interruption
US10117083B1 (en) 2017-04-28 2018-10-30 Motorola Solutions, Inc. Method and apparatus for audio prioritization
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. User interface for correcting recognition errors
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. Low-latency intelligent automated assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. Far-field extension for digital assistant services
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10528228B2 (en) 2017-06-21 2020-01-07 Microsoft Technology Licensing, Llc Interaction with notifications across devices with a digital assistant
WO2019028912A1 (en) * 2017-08-11 2019-02-14 华为技术有限公司 Application switching method and device
CN107678817A (en) * 2017-09-21 2018-02-09 北京三快在线科技有限公司 View switching method and apparatus and computing device
CN107678796A (en) * 2017-09-28 2018-02-09 惠州Tcl移动通信有限公司 A kind of method, storage device and mobile terminal for optimizing system resource
CN107634962B (en) * 2017-10-11 2019-06-18 Oppo广东移动通信有限公司 The management method and Related product of network bandwidth
CN107770381B (en) * 2017-10-25 2020-08-14 Oppo广东移动通信有限公司 Network management method and related product
CN109714640B (en) * 2017-10-26 2022-01-21 创盛视联数码科技(北京)有限公司 Method for playing live video
US11068127B2 (en) * 2017-10-27 2021-07-20 Oracle International Corporation Springboard interface for quick task transitions
KR102477043B1 (en) * 2017-11-08 2022-12-14 삼성전자주식회사 Electronic device and control method thereof
US10366766B2 (en) * 2017-12-12 2019-07-30 Western Digital Technologies, Inc. Power shaping and peak power reduction by data transfer throttling
CN109992398B (en) * 2017-12-29 2021-06-25 Oppo广东移动通信有限公司 Resource management method, resource management device, mobile terminal and computer-readable storage medium
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US11010498B1 (en) 2018-02-06 2021-05-18 Life360, Inc. App usage detection based on screen lock state
US11627215B1 (en) 2018-02-14 2023-04-11 Life360, Inc. Smart usage monitoring and access control of web and mobile applications
US10764143B2 (en) * 2018-02-26 2020-09-01 Verizon Patent And Licensing Inc. System and method for enforcing group policies for MTC devices to perform background data transfers
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
JP7041559B2 (en) * 2018-03-14 2022-03-24 キヤノン株式会社 Communication devices, data transfer devices and their control methods, and programs
CN108600817B (en) * 2018-03-15 2021-03-16 聚好看科技股份有限公司 Smart television and method for facilitating browsing of application installation progress in display device
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
KR20200139771A (en) * 2018-04-06 2020-12-14 콘비다 와이어리스, 엘엘씨 Methods of managing access to local area data network (LADN) in 5G network
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10713212B2 (en) 2018-05-21 2020-07-14 Microsoft Technology Licensing Llc Mobile remote direct memory access
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (en) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. Virtual assistant operation in multi-device environments
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
CN108882041B (en) * 2018-07-09 2021-03-05 海信视像科技股份有限公司 Player state acquisition method and device
CN110806925B (en) * 2018-08-06 2022-08-23 成都鼎桥通信技术有限公司 Audio playing method and equipment
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
CN111045632B (en) * 2018-10-11 2024-01-30 瑞昱半导体股份有限公司 Audio playing device and operation method thereof
US11159601B1 (en) * 2018-10-16 2021-10-26 Amazon Technologies, Inc. Triggering a content-related action based on a network identifier
CN109634549A (en) * 2018-10-23 2019-04-16 中国平安人寿保险股份有限公司 Audio frequency playing method, audio player, computer installation and readable storage medium storing program for executing
CN109088997B (en) * 2018-10-26 2021-05-21 努比亚技术有限公司 Game audio control method, terminal and computer readable storage medium
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. User activity shortcut suggestions
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11792612B2 (en) 2019-06-17 2023-10-17 Telefonaktiebolaget Lm Ericsson (Publ) Method of updating a background data transfer policy negotiated between an application function and a core network, a policy control function, and an application function
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
CN112685167A (en) * 2019-10-17 2021-04-20 伊姆西Ip控股有限责任公司 Resource using method, electronic device and computer program product
US11775362B2 (en) * 2019-10-22 2023-10-03 Vmware, Inc. Content provisioning to virtual machines
US11392422B1 (en) * 2019-11-27 2022-07-19 Amazon Technologies, Inc. Service-managed containers for container orchestration service
US11422844B1 (en) 2019-11-27 2022-08-23 Amazon Technologies, Inc. Client-specified network interface configuration for serverless container management service
CN111200753A (en) * 2020-02-20 2020-05-26 四川长虹电器股份有限公司 Method for improving Android television network video playing fluency
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
MX2022016292A (en) * 2020-06-22 2023-04-19 Audiomob Ltd Adding audio content to digital works.
BR112022026072A2 (en) 2020-06-22 2023-01-17 Audiomob Ltd SUBMISSION OF AUDIO CONTENT FOR DIGITAL WORKS
US11403150B1 (en) 2020-06-23 2022-08-02 Amazon Technologies, Inc. Replenishment-aware resource usage management
US11573816B1 (en) 2020-06-26 2023-02-07 Amazon Technologies, Inc. Prefetching and managing container images using cluster manifest
US11487591B1 (en) 2020-06-29 2022-11-01 Amazon Technologies, Inc. Automatically configuring execution of a containerized application
CN111880875B (en) * 2020-07-15 2023-12-22 百度在线网络技术(北京)有限公司 Control method, device, equipment, storage medium and system for multimedia playing
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11567800B2 (en) 2020-07-21 2023-01-31 Appnomic Systems Private Limited Early identification of problems in execution of background processes
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
WO2022018592A1 (en) * 2020-07-21 2022-01-27 Appnomic Systems Private Limited Early identification of problems in execution of background processes
US11853807B1 (en) 2020-12-01 2023-12-26 Amazon Technologies, Inc. Cluster scaling based on task state information
CN112650958B (en) * 2020-12-28 2023-12-19 北京达佳互联信息技术有限公司 Page processing method, page processing device, electronic equipment and computer readable storage medium
US11797287B1 (en) 2021-03-17 2023-10-24 Amazon Technologies, Inc. Automatically terminating deployment of containerized applications
US11892418B1 (en) 2021-06-30 2024-02-06 Amazon Technologies, Inc. Container image inspection and optimization
CN116737104A (en) * 2022-09-16 2023-09-12 荣耀终端有限公司 Volume adjusting method and related device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6874145B1 (en) * 1999-07-13 2005-03-29 Sun Microsystems, Inc. Methods and apparatus for implementing an application lifecycle design for applications
US20090300192A1 (en) * 1994-12-12 2009-12-03 Cappelle Networking De, Llc Subscription-Based Services
US20120158827A1 (en) * 2010-12-21 2012-06-21 Verizon Patent And Licensing Inc. Active server system monitor

Family Cites Families (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03288934A (en) 1990-04-05 1991-12-19 Fujitsu Ltd Data transfer control system for virtual computer system
IL97894A0 (en) 1991-04-17 1992-06-21 Ibm Multi-processor computer system
US5398723A (en) * 1994-02-28 1995-03-21 Aeroquip Corporation Fluid coupling with adjustable pressure relief valve
US5655081A (en) 1995-03-08 1997-08-05 Bmc Software, Inc. System for monitoring and managing computer resources and applications across a distributed computing environment using an intelligent autonomous agent architecture
US5754776A (en) 1995-12-28 1998-05-19 Intel Corporation Re-prioritizing background data transfers in multipoint conferencing
US8120652B2 (en) * 1997-04-02 2012-02-21 Gentex Corporation System for controlling vehicle equipment
US6324411B1 (en) 1997-05-20 2001-11-27 Telefonaktiebolaget Lm Ericsson (Publ) Background software loading in cellular telecommunication systems
US6005488A (en) * 1997-12-03 1999-12-21 Ford Motor Company User control interface architecture for automotive electronic systems
US6957395B1 (en) * 2000-01-04 2005-10-18 Apple Computer, Inc. Computer interface having a single window mode of operation
US7275085B1 (en) 2000-04-14 2007-09-25 International Business Machines Corporation Method and apparatus for maintaining state information for web pages using a directory server
US7058947B1 (en) 2000-05-02 2006-06-06 Microsoft Corporation Resource manager architecture utilizing a policy manager
WO2001084824A2 (en) 2000-05-03 2001-11-08 Worldgate Service, Inc. Television terminal for processing and controlling memory resources for plural applications
US6629227B1 (en) 2000-05-04 2003-09-30 Scientific-Atlanta, Inc. System and method for a communication terminal to manage memory and maintain a current application version for multiple applications
US20020012329A1 (en) * 2000-06-02 2002-01-31 Timothy Atkinson Communications apparatus interface and method for discovery of remote devices
US7124424B2 (en) 2000-11-27 2006-10-17 Sedna Patent Services, Llc Method and apparatus for providing interactive program guide (IPG) and video-on-demand (VOD) user interfaces
US7512952B1 (en) 2001-04-06 2009-03-31 Palmsource, Inc. Task switching with state preservation for programs running on an electronic device
US7539483B2 (en) 2001-05-02 2009-05-26 Qualcomm Incorporated System and method for entering alphanumeric characters in a wireless communication device
US20050024341A1 (en) * 2001-05-16 2005-02-03 Synaptics, Inc. Touch screen with user interface enhancement
US7546602B2 (en) * 2001-07-10 2009-06-09 Microsoft Corporation Application program interface for network software platform
US6683938B1 (en) 2001-08-30 2004-01-27 At&T Corp. Method and system for transmitting background audio during a telephone call
US20030061260A1 (en) 2001-09-25 2003-03-27 Timesys Corporation Resource reservation and priority management
US7237240B1 (en) * 2001-10-30 2007-06-26 Microsoft Corporation Most used programs list
US7346855B2 (en) 2001-12-21 2008-03-18 Microsoft Corporation Method and system for switching between multiple computer applications
US20040153504A1 (en) * 2002-11-21 2004-08-05 Norman Hutchinson Method and system for enhancing collaboration using computers and networking
KR20040046483A (en) * 2002-11-27 2004-06-05 삼성전자주식회사 Computer system and control method thereof
US20040194153A1 (en) 2003-03-24 2004-09-30 Sony Corporation And Sony Electronics Inc. Conservation of system resources by efficiently activating/de-activating applications
US7076616B2 (en) 2003-03-24 2006-07-11 Sony Corporation Application pre-launch to reduce user interface latency
GB0308991D0 (en) 2003-04-17 2003-05-28 Psion Digital Ltd A data access replication or communication system comprising a distributed software application
US7146439B1 (en) 2003-06-27 2006-12-05 Emc Corporation Management of background copy task for point-in-time copies
GB0315492D0 (en) 2003-07-02 2003-08-06 Symbian Ltd A method of enabling a multitasking wireless information device to conserve battery power
US8032890B2 (en) 2003-07-22 2011-10-04 Sap Ag Resources managing in isolated plurality of applications context using data slots to access application global data and specification of resources lifetime to access resources
US20050026654A1 (en) 2003-07-30 2005-02-03 Motorola, Inc. Dynamic application resource management
CA2548598A1 (en) * 2003-12-01 2005-06-16 Research In Motion Limited Previewing a new event on a small screen device
EP2341432A1 (en) 2004-03-13 2011-07-06 Adaptive Computing Enterprises, Inc. System and method of co-allocating a reservation spanning different compute resources types
US7535456B2 (en) * 2004-04-30 2009-05-19 Hillcrest Laboratories, Inc. Methods and devices for removing unintentional movement in 3D pointing devices
US20050278449A1 (en) 2004-05-28 2005-12-15 Moss Douglas G Method of restricting access to certain materials available on electronic devices
US20080154601A1 (en) 2004-09-29 2008-06-26 Microsoft Corporation Method and system for providing menu and other services for an information processing system using a telephone or other audio interface
EP1657888A1 (en) * 2004-11-16 2006-05-17 Abb Research Ltd. Reception of redundant and non-redundant frames
JP4611000B2 (en) 2004-11-17 2011-01-12 パナソニック株式会社 Mobile terminal device
US7668576B2 (en) * 2004-12-16 2010-02-23 Dashjack, Inc. Incorporating a portable digital music player into a vehicle audio system
US20060136882A1 (en) 2004-12-17 2006-06-22 Nokia Corporation System and method for background JAVA application resource control
US20060213754A1 (en) 2005-03-17 2006-09-28 Microsoft Corporation Method and system for computer application program task switching via a single hardware button
US7673255B2 (en) * 2005-04-22 2010-03-02 Microsoft Corporation Interface and system for manipulating thumbnails of live windows in a window manager
EP1724955A3 (en) 2005-05-17 2007-01-03 Samsung Electronics Co.,Ltd. Method for taking a telephone call while receiving a broadcast service, and digital multimedia broadcasting terminal using this method
US20060288336A1 (en) 2005-06-21 2006-12-21 Microsoft Corporation Module initialization
US20070036137A1 (en) * 2005-07-29 2007-02-15 Horner Richard M Indicating presence of a contact on a communication device
US7663045B2 (en) * 2005-09-20 2010-02-16 Microsoft Corporation Music replacement in a gaming system
US7869395B2 (en) 2005-09-30 2011-01-11 Research In Motion Limited Methods and apparatus for dynamically adjusting a data packet window size for data packet transmission in a wireless communication network
US9274774B2 (en) * 2005-10-28 2016-03-01 Google Inc. Common installer server
US8082008B2 (en) 2006-02-10 2011-12-20 Access Co., Ltd. User-interface and architecture for portable processing device
JP4177873B2 (en) 2006-03-13 2008-11-05 株式会社カシオ日立モバイルコミュニケーションズ Electronic device and program
US8745526B2 (en) 2006-03-14 2014-06-03 Blackberry Limited Screen display in application switching
US7706903B2 (en) * 2006-04-13 2010-04-27 International Business Machines Corporation Selective muting of applications
US20070294699A1 (en) 2006-06-16 2007-12-20 Microsoft Corporation Conditionally reserving resources in an operating system
KR100700951B1 (en) 2006-08-23 2007-03-28 삼성전자주식회사 Apparatus and method for multi task management in mobile communication system
WO2008026252A1 (en) * 2006-08-29 2008-03-06 Pioneer Corporation Information recording and reproducing device and method, information recording and reproducing system, and computer program
KR100784973B1 (en) 2006-09-11 2007-12-11 삼성전자주식회사 Area displaying method using image data variation
US20080082936A1 (en) 2006-09-28 2008-04-03 Richard Eric Helvick Method and system for displaying alternative task data on mobile electronic device
US8245154B2 (en) * 2006-11-03 2012-08-14 International Business Machines Corporation Most-recently-used task switching among parent and child windows
TWI377813B (en) 2006-11-24 2012-11-21 Inst Information Industry Apparatus, method, computer program, and computer readable medium for transnitting data via a plurality of network interfaces
US8448067B2 (en) 2006-12-07 2013-05-21 Sony Computer Entertainment America, LLC Graphics command management tool and methods for analyzing performance for command changes before application modification
US7827358B2 (en) 2007-01-07 2010-11-02 Apple Inc. Memory management methods and systems
US20080172698A1 (en) 2007-01-12 2008-07-17 Berger Adam L Performing support functions on a portable device
WO2008091248A1 (en) 2007-01-23 2008-07-31 Agere Systems Inc. Application switching in a single threaded architecture for devices
US8499312B2 (en) 2007-03-09 2013-07-30 Microsoft Corporation Administrator level access to backend stores
US20100115048A1 (en) 2007-03-16 2010-05-06 Scahill Francis J Data transmission scheduler
US8185581B2 (en) * 2009-05-19 2012-05-22 Nholdings Sa Providing a local device with computing services from a remote host
US8261205B2 (en) * 2007-05-30 2012-09-04 Hewlett-Packard Development Company, L.P. User interface for presenting a list of thumbnail items associated with media items
JP5327497B2 (en) * 2007-07-11 2013-10-30 日立オートモティブシステムズ株式会社 Map data distribution system and map data update method
US7823076B2 (en) * 2007-07-13 2010-10-26 Adobe Systems Incorporated Simplified user interface navigation
US20090028127A1 (en) 2007-07-26 2009-01-29 Gordon Kent Walker Methods and apparatus for providing computational load allocation in a network environment
WO2009037522A2 (en) 2007-08-30 2009-03-26 Nokia Corporation Mobile messaging
JP5184018B2 (en) * 2007-09-14 2013-04-17 京セラ株式会社 Electronics
US8510743B2 (en) 2007-10-31 2013-08-13 Google Inc. Terminating computer applications
US8943520B1 (en) * 2007-11-28 2015-01-27 Sprint Communications Company L.P. Uniform resource locator application initiation
US8059570B2 (en) 2008-01-11 2011-11-15 Apple Inc. Mobile network device battery conservation system and methods
CN101981987B (en) 2008-01-30 2014-12-03 谷歌公司 Notification of mobile device events
US8555201B2 (en) 2008-06-05 2013-10-08 Qualcomm Incorporated Wireless communication device having deterministic control of foreground access of the user interface
US20090327953A1 (en) 2008-06-30 2009-12-31 Nokia Corporation Unified navigation model between multiple applications
US8255562B2 (en) 2008-06-30 2012-08-28 International Business Machines Corporation Adaptive data throttling for storage controllers
US8196213B2 (en) 2008-07-11 2012-06-05 Microsoft Corporation Verification of un-trusted code for consumption on an insecure device
US9542222B2 (en) * 2008-11-14 2017-01-10 Oracle International Corporation Resource broker system for dynamically deploying and managing software services in a virtual environment based on resource usage and service level agreement
US20100153877A1 (en) * 2008-12-11 2010-06-17 Mika Antero Rautava Task Switching
US8458498B2 (en) 2008-12-23 2013-06-04 Intel Corporation Method and apparatus of power management of processor
US8495403B2 (en) 2008-12-31 2013-07-23 Intel Corporation Platform and processor power management
US8175653B2 (en) * 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US8190930B2 (en) 2009-03-30 2012-05-29 Intel Corporation Methods and apparatuses for controlling thread contention
DE102009016742B4 (en) 2009-04-09 2011-03-10 Technische Universität Braunschweig Carolo-Wilhelmina Multiprocessor computer system
US20100281481A1 (en) 2009-04-30 2010-11-04 Nokia Corporation Apparatus and method for providing a user interface within a computing device
US8340099B2 (en) * 2009-07-15 2012-12-25 Microsoft Corporation Control of background data transfers
WO2011040849A1 (en) 2009-10-01 2011-04-07 Telefonaktiebolaget L M Ericsson (Publ) A method and arrangement for managing persistent rich internet applications
US9152299B2 (en) * 2009-10-08 2015-10-06 Red Hat, Inc. Activity management tool
US9420602B2 (en) 2009-12-21 2016-08-16 At&T Intellectual Property I, L.P. Emergency and prioritized access to wireless resources
CN101788926B (en) 2009-12-28 2014-04-30 中兴通讯股份有限公司 Resource allocation method and device for switching J2ME (Java 2 Micro Edition) application platform
EP2357575A1 (en) * 2010-02-12 2011-08-17 Research In Motion Limited Image-based and predictive browsing
US9104476B2 (en) 2010-04-07 2015-08-11 Apple Inc. Opportunistic multitasking of VOIP applications
US20120084737A1 (en) * 2010-10-01 2012-04-05 Flextronics Id, Llc Gesture controls for multi-screen hierarchical applications
US8856798B2 (en) 2010-10-21 2014-10-07 Qualcomm Incorporated Mobile computing device activity manager
US8635630B2 (en) 2010-10-25 2014-01-21 Microsoft Corporation Application lifetime management
US9763140B2 (en) 2010-11-02 2017-09-12 Cisco Technology, Inc. Resource reservation on networks comprising wireless and wired segments
US9600780B2 (en) 2010-11-29 2017-03-21 Nokia Technologies Oy Method and apparatus for sharing and managing resource availability
US9288230B2 (en) * 2010-12-20 2016-03-15 Qualcomm Incorporated Methods and apparatus for providing or receiving data connectivity
US8698822B1 (en) * 2010-12-30 2014-04-15 The Mathworks, Inc. Managing visual updates
US20120174020A1 (en) * 2010-12-31 2012-07-05 International Business Machines Corporation Indication of active window when switching tasks in a multi-monitor environment
US20120209413A1 (en) 2011-02-14 2012-08-16 Microsoft Corporation Background Audio on Mobile Devices
US9104440B2 (en) * 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9439208B2 (en) 2011-11-04 2016-09-06 Intel Corporation Scheduling requests for wireless communication devices running background applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090300192A1 (en) * 1994-12-12 2009-12-03 Cappelle Networking De, Llc Subscription-Based Services
US6874145B1 (en) * 1999-07-13 2005-03-29 Sun Microsystems, Inc. Methods and apparatus for implementing an application lifecycle design for applications
US20120158827A1 (en) * 2010-12-21 2012-06-21 Verizon Patent And Licensing Inc. Active server system monitor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Unknown Author, "MSDN - API Basic", April 1, 2002, msdn.microsoft.com/en-us/library/aa165081(office.10).aspx. *

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11438429B2 (en) 2010-08-14 2022-09-06 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US10320925B2 (en) 2010-08-14 2019-06-11 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US11849001B2 (en) 2010-08-14 2023-12-19 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US10965765B2 (en) 2010-08-14 2021-03-30 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US9736136B2 (en) 2010-08-14 2017-08-15 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US10009850B2 (en) 2011-02-14 2018-06-26 Microsoft Technology Licensing, Llc Background transfer service for applications on mobile devices
US10631246B2 (en) 2011-02-14 2020-04-21 Microsoft Technology Licensing, Llc Task switching on mobile devices
US9560405B2 (en) 2011-02-14 2017-01-31 Microsoft Technology Licensing, Llc Background transfer service for applications on mobile devices
US9060196B2 (en) 2011-02-14 2015-06-16 Microsoft Technology Licensing, Llc Constrained execution of background application code on mobile devices
US9307418B2 (en) 2011-06-30 2016-04-05 The Nielson Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US9471378B2 (en) 2012-05-31 2016-10-18 Apple Inc. Adaptive resource management of a data processing system
WO2014143969A3 (en) * 2013-03-15 2014-11-06 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US11510037B2 (en) 2013-03-15 2022-11-22 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
WO2014143969A2 (en) * 2013-03-15 2014-09-18 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US9301173B2 (en) 2013-03-15 2016-03-29 The Nielsen Company (Us), Llc Methods and apparatus to credit internet usage
US10356579B2 (en) 2013-03-15 2019-07-16 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US20140325518A1 (en) * 2013-04-24 2014-10-30 Samsung Electronics Co., Ltd. Method and device for managing memory of user device
US9465661B2 (en) * 2013-04-24 2016-10-11 Samsung Electronics Co., Ltd. Method and device for managing memory of user device
US9760417B2 (en) 2014-03-10 2017-09-12 Microsoft Technology Licensing, Llc Application dehydration and rehydration during application-to-application calls
US9690685B2 (en) 2014-05-30 2017-06-27 Apple Inc. Performance management based on resource consumption
US10552179B2 (en) 2014-05-30 2020-02-04 Apple Inc. Resource management with dynamic resource policies
US11586451B2 (en) 2014-05-30 2023-02-21 Apple Inc. Resource management with dynamic resource policies
US10970085B2 (en) 2014-05-30 2021-04-06 Apple Inc. Resource management with dynamic resource policies
US10031772B2 (en) 2014-08-26 2018-07-24 Alibaba Group Holding Limited Method and apparatus for managing background application
US9798580B2 (en) 2014-08-26 2017-10-24 Alibaba Group Holding Limited Method and apparatus for managing background application
US10257297B2 (en) 2014-10-31 2019-04-09 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US11671511B2 (en) 2014-10-31 2023-06-06 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US10798192B2 (en) 2014-10-31 2020-10-06 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US9762688B2 (en) 2014-10-31 2017-09-12 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US11418610B2 (en) 2014-10-31 2022-08-16 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US11423420B2 (en) 2015-02-06 2022-08-23 The Nielsen Company (Us), Llc Methods and apparatus to credit media presentations for online media distributions
US20160335265A1 (en) * 2015-05-11 2016-11-17 Samsung Electronics Co., Ltd. User terminal apparatus and controlling method thereof
US10887840B2 (en) 2016-01-15 2021-01-05 Google Llc Systems and methods for extending battery life by monitoring device activity
US10268254B2 (en) * 2016-01-15 2019-04-23 Google Llc Systems and methods for extending battery life by monitoring mobile application activity
US10462745B2 (en) * 2016-01-15 2019-10-29 Google Llc Systems and methods for extending battery life by monitoring device activity
US20170208549A1 (en) * 2016-01-15 2017-07-20 Google Inc. Systems and methods for extending battery life by monitoring device activity
US20170205870A1 (en) * 2016-01-15 2017-07-20 Google Inc. Systems and methods for extending battery life by monitoring mobile application activity
US11182213B2 (en) * 2016-03-31 2021-11-23 Banma Zhixing Network (Hongkong) Co., Limited Application program management method and device
CN107912063A (en) * 2016-04-27 2018-04-13 华为技术有限公司 A kind of method for recovering internal storage and device
US11196875B2 (en) * 2017-09-20 2021-12-07 Fujifilm Business Innovation Corp. Application apparatus, image processing apparatus, and non-transitory computer readable medium with plurality of recovery methods for applications switching to be in operation target state
US11409567B2 (en) * 2017-10-13 2022-08-09 Huawei Technologies Co., Ltd. Application management method and terminal
US11055110B2 (en) * 2018-06-05 2021-07-06 Microsoft Technology Licensing, Llc Operating system service for persistently executing programs
US20190370015A1 (en) * 2018-06-05 2019-12-05 Microsoft Technology Licensing, Llc Operating system service for persistently executing programs

Also Published As

Publication number Publication date
WO2012112405A3 (en) 2012-11-29
US11006369B2 (en) 2021-05-11
US20120209946A1 (en) 2012-08-16
US20180352516A1 (en) 2018-12-06
US20180139700A9 (en) 2018-05-17
EP2676206A2 (en) 2013-12-25
CN102685729B (en) 2018-05-04
CN102685729A (en) 2012-09-19
EP2676206A4 (en) 2016-08-03
US10542496B2 (en) 2020-01-21
US9060196B2 (en) 2015-06-16
US20120210326A1 (en) 2012-08-16
WO2012112405A2 (en) 2012-08-23
US20200154360A1 (en) 2020-05-14
CN102779070A (en) 2012-11-14
CN102866913A (en) 2013-01-09
US10009850B2 (en) 2018-06-26
WO2012112404A3 (en) 2012-12-27
WO2012112404A2 (en) 2012-08-23
US20170238259A1 (en) 2017-08-17
US9560405B2 (en) 2017-01-31
US20120210266A1 (en) 2012-08-16
EP2676206B1 (en) 2017-08-16
US10631246B2 (en) 2020-04-21
US20120209413A1 (en) 2012-08-16
CN102866913B (en) 2018-03-30

Similar Documents

Publication Publication Date Title
US20120210321A1 (en) Dormant Background Applications on Mobile Devices
WO2012112331A2 (en) Dormant background applications on mobile devices
US11720368B2 (en) Memory management of data processing systems
US10437631B2 (en) Operating system hot-switching method and apparatus and mobile terminal
JP6073323B2 (en) Application resumption and / or application interruption exclusion
US10592276B2 (en) Reducing resource consumption by blocking a function associated with an asynchronous procedure call
TWI573075B (en) Persistent and resilient worker processes
US20180113764A1 (en) Hypervisor Based Watchdog Timer
US20170061105A1 (en) Client apparatus and license management method
EP3678023A1 (en) Method and device for handling timeout of system service
US20150095838A1 (en) Virtual tabs supporting web content suspension
US20160072856A1 (en) Cross-Process Media Handling in a Voice-Over-Internet Protocol (VOIP) Application Platform
US20150095758A1 (en) Web content suspension compatibility and suspended web content lifetime
CN115576645A (en) Virtual processor scheduling method and device, storage medium and electronic equipment
US20160170912A1 (en) Safely discovering secure monitors and hypervisor implementations in systems operable at multiple hierarchical privilege levels
JP5014179B2 (en) OS priority changing device and OS priority changing program
US9319246B2 (en) Voice-over-internet protocol (VOIP) application platform
WO2015184902A1 (en) Concurrent processing method for intelligent split-screen and corresponding intelligent terminal
US8832708B2 (en) Process pool of empty application hosts to improve user perceived launch time of applications
US9319456B2 (en) “Go home” feature for roaming applications
CN114201354A (en) Timeout detection method of application program and terminal equipment
Gilder et al. Go home” feature for roaming applications
JP2007293730A (en) Execution method of intermediate code program and information terminal

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SILVA, BRUNO C.;GBADEGESIN, ABOLADE;VASILIAN, ION;AND OTHERS;SIGNING DATES FROM 20110611 TO 20110620;REEL/FRAME:026484/0256

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034544/0001

Effective date: 20141014