CN106575232B - The long-range management of graphic user interface - Google Patents

The long-range management of graphic user interface Download PDF

Info

Publication number
CN106575232B
CN106575232B CN201580045237.4A CN201580045237A CN106575232B CN 106575232 B CN106575232 B CN 106575232B CN 201580045237 A CN201580045237 A CN 201580045237A CN 106575232 B CN106575232 B CN 106575232B
Authority
CN
China
Prior art keywords
computing device
equipment
topology file
client computing
gui
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.)
Active
Application number
CN201580045237.4A
Other languages
Chinese (zh)
Other versions
CN106575232A (en
Inventor
D·D·本特利
A·阿尔维
T·M·富卡
G·R·斯潘塞三世
P·A·帕顿
A·沙尔马
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 Technology Licensing LLC
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 Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106575232A publication Critical patent/CN106575232A/en
Application granted granted Critical
Publication of CN106575232B publication Critical patent/CN106575232B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Abstract

User interface (UI) topology file is received on the computing device.UI topology file defines the visual layout of GUI.UI topology file includes multiple UI elements, and every UI element includes UI component identifier and UI element descriptor.GUI is shown according to UI topology file via display.Receive the upgating object of UI element to be altered in specified UI topology file.For every UI element to be altered, upgating object includes UI component identifier and including will be via the update payload for the updated information that the UI element is shown.GUI is changed according to upgating object via display.

Description

The long-range management of graphic user interface
Background
Some calculating equipment (for example, wearable computing devices) can have limited processing locality, data storage and storage It can resource.Such localization constraint can limit the ability that equipment executes various operations that calculates.
Brief description
Figure 1A shows the various aspects of example wearable computing devices.
Figure 1B shows each additional aspect of the example wearable computing devices.
Fig. 2 shows example computing devices.
Fig. 3 shows the various aspects that exemplary client calculates equipment.
Fig. 4 is shown can be by example graphical user interface (GUI) that client computing device is shown.
Fig. 5 illustrates that example user interface (UI) element-tree of the example GUI of Fig. 4.
Fig. 6 shows the example UI topology file of the example GUI for generating Fig. 4.
The example that Fig. 7 shows one or more UI elements in the example GUI for updating Fig. 4 updates binary large object (BLOB)。
Fig. 8 shows example localization UI component identifier.
Fig. 9 shows the individualized UI component identifier of example.
It is associated with the UI element of client computing device for adjusting client that Figure 10 shows wherein event triggering Calculate the exemplary scene of the order of the operation of equipment.
It is associated by adjusting based on host with the UI element of client computing device that Figure 11 shows wherein event triggering Calculate the exemplary scene of the order of the operation of equipment.
It is associated with the UI element of client computing device for adjusting connection net that Figure 12 shows wherein event triggering The exemplary scene of the order of the operation of the calculating equipment of network.
Figure 13 shows the example command point received during the command phase of three stage protocols by client computing device Group.
Figure 14 A shows wherein remote computing device and transmits data packets to visitor during the data phase of three stage protocols The exemplary scene of family end calculating equipment.
Figure 14 B shows wherein client computing device and transmits data packets to during the data phase of three stage protocols The exemplary scene of remote computing device.
Figure 14 C is shown wherein during the data phase of three stage protocols in remote computing device and client computing device Between there is no the exemplary scene that data grouping is sent.
Figure 15 is shown for manage can be by the exemplary method of the demonstration for the GUI that client computing device is shown.
Figure 16 is shown can be by multiple visitor to manage for calculating data of the equipment offer based on subscription to multiple client Family end calculates the exemplary method of the demonstration for the GUI that equipment is shown.
Figure 17 is shown for remotely providing showing for resource to client computing device in response to the notice for receiving event Example method.
Figure 18 shows the example side that the communication between equipment and service calculating equipment is calculated for efficiently relay client Method.
Figure 19 is shown for being carried out using identical three stage protocol by different communication I/O interface and remote computing device The exemplary method of communication.
Figure 20 shows exemplary computing system.
Detailed description
To improve the perceived of the client computing device that there is localization process, data storage and/or energy storage to constrain Ability, various operations can be handled from the calculating equipment outsourcing and by one or more remote computing devices.Due to such outer Packet, the traffic between client computing device and remote computing device can dramatically increase.Therefore, this disclosure relates to for promoting Data efficient between client computing device and the remote computing device for being the interests of client computing device to distribute resource With the various methods of energy efficient communication.
In some implementations, client computing device may lack with remote computing device direct communication (for example, via because Special net) wide area network connectivity.However, client computing device can have with the LAN connection of host computing device (for example, Via universal serial bus (USB), bluetooth (BT), low-power consumption bluetooth (BTLE)), and host computing device can connect via wide area network It connects and is communicated (for example, via internet) with remote computing device.In such an implementation, client computing device and remote computation Communication between equipment can be relayed by host computing device.In addition, in some cases, host computing device can execute Some or all are operated to further increase the communication efficiency of client computing device.
By improving the communication efficiency of client computing device, the local resource of client computing device can be hidden to user Constraint.
Client computing device can be using any suitable form without departing from the scope of the present disclosure.Figure 1A and 1B are shown The various aspects of example client end equipment including 10 form of wearable computing devices for promoting the feature of efficient communication.It is shown Equipment take the form of composite band 12.In one implementation, closure mechanism allows the easy to be attached of the end of the composite band With separate so that the band can be closed cyclization and be worn in wrist.In other implementations, which can be manufactured into elastic foot It is more than hand and the continuous loop for still conforming to wrist to be opened.Alternatively, which can have open bracelet form factor, wherein The end of the band is not fixed to one another.In other other realizations, the band-like wearable computing devices more extended can be worn In the biceps of user, waist, chest, ankle, leg, head or body other parts.Therefore, the wearable computing devices packet conceived herein Include glasses, headband, armband, ankle guard band, chest strap or any other wearable form factor.In addition, not having wearable construction Calculating equipment may include plating contact.
As shown in the figures, wearable computing devices 10 may include various function electronic building bricks: computing system 14, display Device 16, loudspeaker 18, haptic motor 20, communication suite 22 and various sensors.In shown realization, each function electronics group Part be integrated in several rigid sections of the band — that is, display carrier module 24A, base 24B, energy storage storehouse 24C and 24D, with And buckle 24E.This tactful defencive function component from physical impact, from overheat and moist and avoid being exposed to skin The water and substance found on skin, such as sweat, lotion, ointment etc..It is multiple in the construction of wearable computing devices 10 shown in One end of crossed belt 12 is Chong Die with the other end.Buckle 24E is disposed at the overlapping ends of composite band, and receiving slit 26 is disposed in At the end of the overlapping.
Each functional unit of wearable computing devices 10 draws energy from one or more energy storage electronic building bricks 28.Electricity Pond-such as lithium ion battery-is a type of energy storage electronic building brick.
The example of substitution includes super and studies carefully electrode capacitor.
In order to provide the suitable memory capacity of minimum rigidity volume, multiple separate energy storage electronic building brick can be used.This It can be disposed in energy storage storehouse 24C and 24D a bit, or in any rigid section of composite band 12.Energy storage electronic building brick and function electricity Electrical connection between sub-component is routed through compliant section 30 (for example, 30A, 30B, 30C, 30D).In some implementations, energy storage Battery has curved shape cosily to fit in around the wrist or other physical feelings of wearer.In some implementations, Energy-storage units can be flexible to accommodate the coupling of wearer.
In general, energy storage electronic building brick 28 can be it is interchangeable and/or rechargeable.In some instances, then Charge power can be provided by port universal serial bus (USB) 32.In other examples, which can pass through Wireless induction or the charging of environment light are to recharge.In other other examples, which may include electromechanical portion Part with from user is accidental or body kinematics of with purpose in energy-storage units are recharged.
In wearable computing devices 10, computing system 14 is accommodated in display carrier module 24A and is placed on Under display 16.The computing system is operatively coupled to display 16, loudspeaker 18, communication suite 22 and various sensings Device.The computing system includes the logical machine 36 for keeping the data of data and instruction to store machine 34 and execute instruction.
In some implementations, shared data buffer 66 can be located near data storage machine 34 or be included in data storage In machine 34.Shared data buffer 66 can be configured to storing data grouping to prepare via in multiple and different communication I/O interfaces Any one transmit.In a particular example, 66 storing data of shared data buffer is grouped for via wire communication I/O interface wirelessly communicates I/O interface to transmit, as will be discussed in more detail below.
Display 16 can be the display of any suitable type, such as frivolous, low-power consumption light emitting diode (LED) array Or liquid crystal display (LCD) array.Quantum dot display technology can also be used.Electronic paper technology can also be used.Suitable LED array packet Include organic LED (OLED) or Activematric OLED array etc..LCD array can actively be illuminated from behind.However, certain The LCD array (for example, liquid crystal LCOS array on silicon) of type can be via environment light from front lit.Although attached drawing shows base Flat display surface in sheet, this aspect is not intended to be necessary, because curved display surface can be used as.Make certain With in situation, wearable computing devices 10 can be worn on before wearer's wrist in company with display 16, similar tradition watch.
Communication suite 22 may include any wired or wireless communication I/O interface unit appropriate.In figs. 1 a and 1b, this is logical Believe that external member includes USB port 32, can be used for the swapping data in wearable computing devices 10 and other computer systems And provide charge power supply.The communication suite can further comprise two-way BT, BTLE Wi-Fi, honeycomb, Ethernet, near-field communication And/or other radio devices.In some implementations, the communication suite may include it is additional for optic communication, sighting distance (for example, It is infrared) communication transceiver.Any suitable communication I/O interface unit of communication suite 22 can be used to believe via digital communication Transmit machine sensible information in road.For example, radio digital communication channel can be established on Wi-Fi or BT to transmit data.Another In example, wired digital communication channel can be established on USB to transmit data.
In some implementations, to make full use of multiple and different communication I/O interfaces, wearable computing devices can use identical Three stage protocols come in multiple and different transport layers (for example, USB, BT, BTLE) communicated.Three stage protocols may include life Enable stage, data phase and state phase.Specifically, bidding protocol can have to the communication in all different transport layers For identical packet format.This unified realization allows the shared order that can above send in any one of different transport layers Library.Communication efficiency can be improved in shared command library and unity of command agreement, while reducing the memory usage of wearable computing devices.
In wearable computing devices 10, touch panel sensor 38 is coupled and configured to receive and come from display 16 The touch input of user.Therefore, display can be touch sensor display in some implementations.In general, the touch Sensor can be resistance-type, condenser type or based on optical.Button sensor (for example, microswitch) can be used for detection can The state of button 40A and 40B including rocking bar.Input from button sensor can be used for executing home key or on-off is special Sign controls audio volume, microphone or another suitable operation.
Figure 1A and 1B shows various other sensors of wearable computing devices 10.Such sensor includes microphone 42, visible light sensor 44, UV sensor 46 and environment temperature sensor 48.Microphone to can be used for measure environment Sound level or the computing system 14 for receiving voice command from the user provide input.It is sensed from visible light sensor, ultraviolet light The input of device and environment temperature sensor can be used for the various aspects for assessing user's local environment.
Figure 1A and 1B shows a pair of of contact sensor --- and the charge contact being arranged on display carrier module 24A passes Sensor 50, and the base contact sensor 52 being arranged on base 24B.Each contact sensor is in 10 quilt of wearable computing devices The skin of wearer is contacted when having on, and may also include plating contact.The contact sensor may include independent or cooperation Sensor element multiple sensing functions are provided.For example, the contact sensor can provide the electricity of the skin in response to wearer The resistance and/or capacitance sensing function of resistance and/or capacitor.For this purpose, for example to can be configured to skin pricktest anti-for two contact sensors Inductive sensing device.In the configuration shown in, the interval between described two contact sensors is provided for the more acurrate of Skin Resistance Measurement relatively long electrical path length.In some instances, contact sensor also provides the skin temperature of the wearer Measurement.In the configuration shown in, the skin temperature transducer 54 of thermistor form is integrated into charge contact sensor 50 In, the direct heat conduction path for arriving skin is provided.Output from environment temperature sensor 48 and skin temperature transducer 54 It can be by differently application to estimate the heat flux from wearer's body.The measurement can be used to improve for example based on pedimeter Calorie count accuracy.In addition to the skin sensor described above based on contact, various types of non-contact skins Sensor can also be included.
It is optics pulse rate sensor 56 that configuration, which is disposed in inside base contact sensor 52, shown in.The optics Pulse rate sensor may include that narrowband (for example, green) LED emitter and matched photodiode are percutaneous to detect Measurement of the pulsatile blood flow and thereby offer of capillary to the pulse frequency of the wearer.In some implementations, optics pulse frequency Sensor can also be configured to sense the blood pressure of wearer.In the configuration shown in, optics pulse rate sensor 56 and display On the opposite side of 16 equipment when being arranged at wearing.In order to convenient in engineering, pulse rate sensor alternatively can directly be set After display.
Wearable computing devices 10 can equally include the fortune of such as accelerometer 58, gyroscope 60 and magnetometer 62 etc Dynamic sensing element.The accelerometer and gyroscope can provide along the inertial data of three quadrature axis and about the rotation number of three axis According to as combined six-freedom degree.The sensing data can be utilized to provide such as pedometer/calorie tally function.Come The data of autoacceleration meter and gyroscope can be in conjunction with from the geomagnetic data of magnetometer further to define according to geographic orientation Inertia and spin data.
Wearable computing devices 10 may also include global positioning system (GPS) receiver 64 to determine the geographical position of wearer It sets and/or speed.In some configurations, the antenna of the GPS receiver can be relatively flexible and extend to compliant section 30A.In the configuration of Figure 1A and 1B, GPS receiver comes from the optics pulse frequency far from optics pulse rate sensor 56 to reduce The interference of sensor.
The wearable computing devices are only that can will calculate the client of processing Reduction of Students' Study Load to the remote computing device of operation One example of equipment.Client computing device can take any suitable form.
Fig. 2 shows example computing devices 200.Calculating environment 200 may include being configured to calculate equipment to multiple client (for example, client computing device A, client computing device B, client computing device N) 204 provides long-range management and processing function The service of energy property calculates equipment 202.Service calculates equipment 202 and can be configured to execute and appointing in multiple client calculating equipment The relevant operation of any suitable aspect of one.Service calculates equipment 202 can be to any number of client computing device Process resource is provided.In addition, service, which calculates equipment 202, can provide resource to any kind of client computing device.One In a little realizations, service calculates the calculating equipment for multiple and different connection networks that equipment can indicate in cloud computing system.
Different clients, which calculate equipment, can be configured with different communication ability.Correspondingly, service calculate equipment 202 can be by Different modes and different clients computing device communication.In some cases, service calculating equipment 202 can be (all via network 206 Such as internet) and client computing device direct communication.Such client computing device is referred to alternatively as the calculating of connection network Equipment.In the example shown, client computing device N is the connection that 202 direct communication of equipment is calculated via network 206 and service The calculating equipment of network.
In some cases, client computing device can not have the straight-forward network for calculating equipment 202 with service and connect.Phase Instead, client computing device can be configured to Jin Fuyuan LAN connection (for example, USB, bluetooth, low-power consumption bluetooth) and host meter Calculate equipment communication.LAN connection can be wired connection or wireless connection.Such client computing device is referred to alternatively as non- Connect the calculating equipment of network.Service calculates equipment 202 can be by the host computing device relayed communications via connection network Carry out the computing device communication with disconnected network.
The host computing device of connection network can take any suitable form.For example, host computing device may include Smart phone, laptop computer, desktop computer, plate, entertainment console, dedicated hot spot or another suitable calculating are set It is standby.In a particular example, the client computing device of disconnected network is wearable computing devices and host computing device It is smart phone.
In some implementations, client computing device may include for communicating at different conditions with host computing device Multiple communication I/O interfaces.For example, multiple communication I/O interface may include the cable modem for being configured to communicate with host computing device Believe I/O interface and is configured to the wireless communication I/O interface communicated with host computing device.In a particular example, client Calculating equipment can be configured to communicate via any one of USB link, BT link or BTLE link with host computing device.
In the example shown, client computing device A is configured to not calculate equipment 202 via network 206 and service The calculating equipment of the disconnected network of direct communication.On the contrary, client computing device A is configured to via LAN connection 208 It is communicated with host computing device A.In one example, LAN connection 208 can be for example via the wired of USB or Ethernet Network connection.In another example, LAN connection 208 can be the wireless network connection for example via BT or BTLE.In addition, Host computing device A is configured to calculate equipment 202 with service via network 206 and communicate.Correspondingly, service calculates equipment 202 It can be configured to communicate and be sent to host computing device A, and host computing device A can be configured to the communication relay to visitor Family end calculates equipment A, and vice versa.Equally, host computing device B and client computing device B can be in a similar fashion Communication.
Note that in some implementations, host computing device can directly distribute for the interests of associated client device Resource calculates equipment without regard to service.Equipment is calculated to calculate to client for example, host computing device can replace service Equipment provides long-range processing and administration functionality.In addition, host computing device can be configured to any suitable number of client End calculates equipment and provides all examples of all services.
Fig. 3 illustrates in greater detail the various aspects that exemplary client calculates equipment 300.Client computing device 300 can be with table Show that the multiple client for including in calculating environment 200 shown in Figure 2 calculates any one of equipment 204.Client calculating is set Standby 300 may include device identifier 302.Device identifier 302 can will client computing device 300 and calculate environment 200 in It is each other calculate equipment distinguish.In one example, device identifier 302 is globally unique identifier (GUID).If Standby GUID can have any suitable uniqueness property and probability.In one example, apparatus GUI D is stored as 128 Value.In another example, the not instead of GUID of device identifier 302, is changed to sequence number.Device identifier 302, which can meet, appoints What suitable addressing scheme.For example, device identifier 302 can be included as a part of addressing scheme to identify from client Calculate the communication of the transmission of equipment 300 and by the received communication of client computing device 300.
Client computing device 300 may include the display for being configured to visually present graphic user interface (GUI) 306 304.The visual element for the application (such as using 308) installed in client computing device 300 can be presented in GUI 306.Using 308 can be one of the multiple applications installed in client computing device 300.
Note that application can be mounted or otherwise can be in any suitable manner can in client computing device With.In addition, using the pipeline that may act as receiving information from remote source in any suitable manner.For example, using may include Website or the general web browser of other remote information sources are navigate to, and web browser can be presented via GUI from long-range letter The information that breath source receives.
Each application may include application identifier.For example, including application identifier 310 using 308.Application identifier 310 The each other application installed in the application and client computing device 300 can be distinguished.In some implementations, using mark Application 308 and each other application calculated in environment 200 can be distinguished by knowing symbol 310.In some implementations, application identities Symbol 310 can be GUID.Can have any suitable uniqueness property and probability using GUID.In one example, it applies GUID is stored as 128 values.In some implementations, one application is distinguished using GUID with other application, but do not distinguished All examples of the application or installation.For example, two different instances of same application may be mounted to that two different calculating equipment Upper and the application each example having the same can apply GUID.
Each application may include multiple pages.Every page can be addressed by page index.For example, page 312 includes page index 314. Page index 314 can distinguish other each pages for including in page 312 and application 308.Multiple pages in the application can be by appointing What suitable mode is found.In one example, each page of application can have linear position, and therefore ordinal number can by with Make the page index of this page.Note that GUI 306 can once show the single page of an application in this realization.In some realizations In, GUI can be configured to once show more than one page.Ordinal number page number is an example, and each page can be by another conjunction Suitable mode identifies.
Note that page can indicate any space and/or the logical grouping and to be not limited to display primary of different UI elements It can be for the area of space of presentation.For example, page can be more than or less than the display area of display.
Every page may include multiple user interfaces (UI) element 316 (for example, UI elements A, UI element B, UI element N).Page In include multiple UI elements the vision content presented by GUI 306 can be provided.UI element can take any suitable shape Formula.The non-limiting example of different types of UI element includes textview field, button, text area, check box, radio button, drop-down List allows the list individually with multiple selections, for organizing into groups visual component, image, video and other suitable UI elements Panel.
Every UI element may include the UI element for distinguishing other each UI elements for including in the UI element and this page Label.For example, UI elements A includes the UI element tags 318 for distinguishing other each UI elements in UI elements A and page 312. Note that UI element tags may include that any suitable mark comprising number, character string, code or any other identifier is special Property.
In some implementations, display 304 can be configured to detection touch input.Display can use any suitable Touch detection technical.In such an implementation, one or more of multiple UI elements can be selectable via touch input. In some cases, initiation can be triggered by client computing device locally or by long-range via touch input selection UI element Equipment (for example, calculating equipment with the host computing device of client computing device pairing or by service) is calculated remotely to execute The event of operation.Additionally or alternatively, other input mode can be selected or are otherwise activated (for example, voice, appearance Gesture, watch attentively, hardware controls and other).
As described above, service shown in Figure 2, which calculates equipment 202, is configured to multiple client calculating equipment 204 Interests carry out allocation processing resource.It is held for example, service calculating equipment 202 is configured to multiple client calculating equipment 204 Row different operation.In one example, service calculate that equipment 202 can be configured to remotely to manage can be by client computing device The demonstration of the GUI of display.In order to manage the demonstration of GUI by the efficient mode of communication, service calculating equipment may be implemented will be in GUI The binary data for the actual information that the formatted message of the UI element of presentation and expression are presented via UI element is (for example, text The number and letter presented in the UI element of domain) separated method.Updated information is sent in this way, calculating equipment 202 in service When to client computing device to show via one or more UI elements, it need not include that any formatting is believed that this, which is updated information, Breath.
In one example, service calculates equipment 202 and can be configured to for UI topology file 320 to be sent to client calculating Equipment 300.UI topology file 320 can define the visual layout of the UI element presented in GUI 306, be used to fill out without specified Fill the bottom data of the UI element.As an example, UI layout can define the text box being particularly shown in position, and it is laid out text Part, which can specify the text shown in the frame, will have 12 pounds of Arial fonts, but topology file will not be specified and be shown at this Practical letter in text box.In other implementations, UI topology file define the UI element presented in GUI visual layout and can Initial version including being used to fill the bottom data of UI element.In some implementations, UI topology file 320 can be at every page On the basis of define the visual layout of UI element, and service to calculate equipment 202 and can send to client computing device and be directed to client End calculates the UI topology file of the every page for each application installed in equipment 300.In other embodiments, UI topology file can To generate on the basis of every application, and UI topology file can define the view of the UI element in the every page for including in the application Feel layout.
UI topology file 320 can calculate equipment 202 according to predefined scheme or in any other suitable manner by service It generates.In one example, UI topology file can be generated from XML file.XML file can provide professional standard scheme and really Tool is recognized to assist in ensuring that UI topology file is suitable for being shown by client computing device.
In some cases, service, which calculates equipment 202, can be generated the XML file.Under some other situations, service meter The reception of equipment 210 XML file can be calculated from third party by calculating equipment 202.Third party calculates equipment 210 can be by any kind of Contents producer operation, non-limiting example include position host, social networks, news feed host or another suitable UI layout information source.
It may include being configured to execute XML file (or other layout source information) to may be easier to that service, which calculates equipment 202, The conversion module 212 of the transformation for the binary machine readable format consumed by client computing device.For example, transformed UI layout The binary format of file can be indicated with the direct memory of the data of mirror image client computing device.Specifically, UI is laid out The binary data format of file may include the binary system copy according to the data of class formation tissue.In addition, XML file wherein It is in the case of the offer of equipment 210 is provided from third party, map function can provide chance to allow to be transformed into and be suitable for showing Show that the third party of the layout in client computing device calculates the transformation based on automatic machine of the layout of equipment.For example, third The format that side calculates the UI layout of equipment 210 can be configured for the platform different from client computing device 300, and service meter Calculating equipment 202 can be configured to convert the format information with compatible with the platform of client computing device.
Fig. 4-6 is shown in which that the exemplary scene of GUI can be generated from UI topology file.Fig. 4 is shown including multiple UI members The example GUI 400 of element 420.Multiple UI elements 402 may include different UI element types, include page, frame and character string.Note Meaning, GUI 400 is only an example, and the UI element of any suitable type can be presented in GUI.In GUI 400, some UI Element can be nested in other UI elements to form parent-child relationship.
Fig. 5 illustrates that the example layered of the parent-child relationship for the multiple UI elements 402 for including in GUI 400 UI element tree construction 500.Specifically, page 1 is the root element of UI element tree construction 500.Page 1 does not have father's element, and 2 He of frame Frame 7 is the direct daughter element of page 1.There is frame 2 frame 3 and frame 5 to be used as direct daughter element.There is frame 7 frame 8 to be used as direct daughter element. There is frame 3 character string 4 to be used as direct daughter element.There is frame 5 character string 6 to be used as direct daughter element.Frame 8 has character string 9 and word Symbol string 10 is used as direct daughter element.Character string 4, character string 6, character string 9 and string 10 are the leaf nodes without child node.
Fig. 6 shows the example UI topology file 600 that can be generated from tree construction 500.For example, UI topology file 600 can be with Indicate UI topology file 320 shown in Fig. 3.UI topology file 600 includes the page of the universal architecture for the page that instruction GUI is presented Title 602.
For example, page head 602 may include the direct sub- section of the version 604 of UI topology file, root UI element (for example, page 1) The number of point 606 and the sum 608 (for example, 9) of UI topology file neutron UI element.Version 604 can indicate currently Which UI topology file UI element type is suitably determined when UI element is updated using.
UI topology file 600 may include multiple UI elements 610.Every UI element may include UI component identifier 612 and UI Element descriptor 614.UI component identifier 612 can be by other each UI elements in the UI element and UI topology file 600 It distinguishes.For example, UI component identifier can be uniqueness numeric identifier.UI component identifier can be used for data and update two System blob (BLOB) and individual data update the data binding of both requests.Note that updating BLOB is the one of upgating object A non-limiting example.The object of any suitable type may be utilized to transmit more new data.UI element descriptor 614 can be determined The UI element type 616 and formatting property 618 for the information that justice is shown via UI element.In the attribute value explained, format Attribute 618 includes the number of memory size, position, color, font type, alignment, transparency and sub- UI element.However, Any suitable formatting property can be defined by UI element descriptor.
The flattening of tree construction 500 according to figure 5 optionally in UI topology file 600 of multiple UI elements 610 Version sorts.Specifically, multiple UI elements 610 can be in UI topology file 600 according to indicated by tree construction 500 Parent-child relationship sorts.The tree construction of flattening can indicate that client computing device is used to generate the final memory lattice of GUI Formula.Number by sorting and providing the child node of every UI element to UI element in the tree construction of flattening, which is used as, to be belonged to Property, the position of the UI element in parent-child layered structure can be conveyed with the information of minimum.In other words, such format can Data volume included in the UI topology file of client computing device is sent to reduce.Such method provides wherein objective Family end calculates the example that the communication efficiency of equipment can be enhanced.
In one example, UI topology file 600 has possible efficient for being sent to client computing device Binary machine readable format.Note that can be sent to client computing device primary for UI topology file, to calculate to client Equipment notifies the formatting property of every UI element in UI topology file.However, in some cases, being updated UI layout text Part can be sent to client computing device to change the visual layout of GUI.Such updated UI topology file can have can The different editions of equipment tracking are calculated by service.For example, be updated UI topology file can change UI element formatting property, Page is added, page is deleted, UI element is added to page, and/or deletes UI element from page.It can be only note that being updated UI topology file Update UI element formatting property, and may differ from include will via UI element presentation updated information update BLOB。
Once client computing device 300 is realised that the formatting property of UI element, service meter from UI topology file 320 Calculation equipment 202 just can be configured to send subsequent update BLOB to update Existing information.
Fig. 7 shows the example for updating one or more UI elements in GUI and updates BLOB 700.Update BLOB 700 may include UI element 702 to be altered UI component identifier 704 and will via UI element 702 show be updated The payload 706 of information.Updated information can replace the information previously shown via the UI element.For example, including in payload 706 Updated information can be the straight binary machine-readable representation of updated information.In some cases, to be updated The UI component identifier of multiple UI elements and updated information can be bundled into same update BLOB.In other circumstances, only One UI element can be updated.The selected update of this type is efficient, because need not send for the UI member not being updated The data of element.
In addition, each payload can be omitted the formatting property of UI element to be altered, because of client computing device Such formatting property is quoted from UI topology file.For example, UI element type can by searching for in UI topology file UI component identifier associated type determine.In this way, object type need not be transmitted via payload.In UI topology file Including every other aspect can similarly be saved from payload because these aspects, which can be used, updates UI included in BLOB Component identifier is searched.
In a particular example, UI element can be updated so that digital " 7 " are presented, and corresponding update BLOB can only include The UI component identifier and binary representation of digital " 7 ".Receive update BLOB when, client computing device can be from previous In the UI topology file received search binary data UI element type (for example, integer) in other words, UI component identifier The binding mechanism of binary data included in payload can be served as.Similarly, client computing device can be searched and is used for Screen position and the formatting characteristics of the required visual representation of digital " 7 " are created, even if such formatting is updated without being used as A part of BLOB is transmitted.
Opposite with this method, other communication formats (for example, JSON or XML) include interior in itself from payload user data to BLOB Data internal representation mapping.In a particular example, update BLOB may include comprising number seven character string and Indicate that the character string is the mapping of integer UI element.In addition, such method may include the possessive case for showing bottom data Formula.Compared with the method for wherein determining UI element type from UI topology file, such method can increase the number for updating BLOB According to amount.
Updating updated information included in BLOB can be received by client computing device from any suitable source.One Under a little situations, service, which calculates equipment 202, can be generated updated information.In some cases, service calculate equipment 202 can be from Third party calculates equipment 210 and receives updated information.In one example, service calculates equipment 202 and can calculate from third party Equipment 210 subscribes to the information.In another example, service calculates equipment 202 can calculate the excavation of equipment 210 through more from third party New information.In some cases, updated information can calculate equipment 210 from third party by XML format and receive.Service is calculated and is set Standby 202 can be configured to that XML data is for example converted into binary machine readable format via conversion module 212.In some feelings Under shape, service, which calculates equipment 202, can calculate the updated information of the reception of equipment 210 from third party by binary machine readable format And it converts and is not required.
In some cases, UI topology file and/or subsequent update BLOB, which can be connected via wide area network from service, calculates Equipment is transmitted directly to client computing device.For example, service calculates the device identification of the knowable client computing device of equipment Symbol, and communication can be sent to client computing device (that is, push method).In another example, client computing device Device request UI topology file can be calculated to service and/or updates BLOB, and servicing calculating equipment can be in response to receiving Communication (also referred to as pulling method) is sent to the request.In some cases, multiple client, which calculates equipment, can subscribe to UI cloth Office file and subsequent update BLOB.Service calculates the client computing device of the knowable subscription of equipment, and can be by communication broadcast To the client computing device of all subscription.
In some implementations, equipment is calculated via intermediate host in client computing device and service computing device communication Under situation, some or all of processing or management responsibility for updating GUI can replace service to calculate by host computing device Equipment is directly handled.In one example, UI topology file can by service calculate equipment generate, and/or with UI topology file phase Corresponding subsequent update BLOB can be generated by host computing device, and vice versa.
In another example, service, which calculates equipment, can be sent to host computing device for the XML file for indicating GUI, and The XML file can be transformed into the UI topology file with binary machine readable format by host computing device.Such In realization, host computing device may include conversion module 212.In another example, host computing device can handle for managing Manage all processing responsibilities of GUI.Specifically, host computing device GUI layout file and subsequent update BLOB can be generated and Without with service computing device communication.
In another example approaches for improving communication efficiency, remote computing device is (for example, service calculates equipment or host meter Calculate equipment) event of client computing device can be subscribed to.In other words, method described herein can make client computing device The processing and control request for executing various operations can be transmitted to remote computing device in an efficient way.In an example In, remote computing device can subscribe to event associated with the specific UI element in GUI shown by client computing device. In another example, remote computing device can subscribe to event associated with each component of client computing device.For example, remote Journey, which calculates equipment, can subscribe to the different sensors of client computing device, and client computing device can be in response to not working together Sensor reading is sent to remote computing device by part.It is set note that any suitable event can trigger for client calculating Standby interests execute operation.In addition, such operation can be for example associated with specific UI element via mapping.In addition, this One method can calculate the client meter that device request remotely handled and controlled the disconnected network of resource to via intermediate host It calculates equipment communication efficiency is provided and advanced optimize, as herein by described in.In addition, such method can permit Framework computing Equipment directly provides long-range processing and control resource to client computing device and calculates equipment without regard to service.
In one example, service, which calculates equipment 202, can identify any client computing device calculated in environment 200 Any example of any UI element of upper display.As described above, the page including multiple UI elements of application can be presented in GUI.It should Using with the application identifier for distinguishing the application with each other application calculated in environment.The page shown in GUI Page index distinguishes this page and other each pages included in the application.Every UI element included by this page has will The UI element tags that other included each UI elements distinguish in the UI element and this page.
As shown in figure 8, these addressing elements, which can be included in, can be used to own across what is installed in client computing device Using in the localization UI component identifier 800 to identify any UI element.In other words, localization UI component identifier is first by UI Other each examples of the every UI element shown in the example of element and any application that can be installed in client computing device It distinguishes.Specifically, localization UI component identifier 800 may include application identifier 802, page index 804 and UI element The address triple of identifier 806.In one example, application identifier 802 indicates application identifier 310, and page indexes 804 tables Show page index 314, and UI element tags 806 indicate UI element tags 318, all of which is shown in FIG. 3.
In one example, application identifier is the GUID with first memory size, and page indexes and UI element mark Label are the other kinds of identifiers respectively with the memory size for being less than the first memory size using GUID.This other Identifier can be smaller to save client computing device when that will localize UI component identifier and be sent to remote computing device Bandwidth.
In addition, as shown in FIG. 9, localization UI component identifier 800 can be by being added to this for device identifier 902 Address triple is converted into individual UI component identifiers 900.Specifically, individualized UI component identifier 900 may include Device identifier 902, application identifier 802, page index 804 and UI component identifier 806.In one example, equipment mark Knowing symbol 902 indicates device identifier 302 shown in Fig. 3.Individualized UI component identifier 900 can be used to across calculating environment All clients in 200 calculate all applications for installing in equipment to identify any example of UI element.
Note that the different address element of localization UI component identifier and individualized UI component identifier can be by any suitable Mode sort to form any suitable format variation of UI element address.
Service calculates equipment 202 and/or host computing device and can be configured to receive and calculate equipment from one or more Event notice.In one example, service is calculated equipment 202 and can be calculated by service based on equipment subscription different clients Calculate the notice that each UI member in equipment usually receives event.In one example, it includes that can be configured to that service, which calculates equipment 202, Generation, modification, and/or the subscribing module 214 for safeguarding the subscription list to the different instances of UI element.Service calculates equipment can be with Subscribe to any suitable number of different instances for the UI element that different clients calculate in equipment.In some cases, notice can Directly to be received from the client computing device of connection network.In some cases, notice can be from representing disconnected network The host computing device of client computing device receives.
Service calculates the notice that equipment can receive the event of any suitable type.In one example, event includes warp By selection of user's input to the example of UI element to client computing device.In another example, event includes via arriving The example that the user of client computing device inputs modification UI element.In another example, event includes client computing device Physical button be pressed.Note that event can not be related to UI element.For example, event can periodically occur.In another example In, another suitable operation that event may be in response to client computing device occurs.
Calculating each notice that equipment 202 receives by service may include individualized UI component identifier.Service is calculated and is set Standby 202 examples that can be configured to individualized UI component identifier included in the notice based on event to identify UI element.
In the case of wherein client computing device is the equipment of disconnected network, client computing device can be by thing The notice of part is sent to host computing device.The notice of event may include localization UI component identifier.Host computing device can It is configured to for the device identifier for sending the client computing device of the notice being added to localization UI component identifier with life At individualized UI component identifier, and host computing device can be configured to include that this of individualized UI component identifier leads to Know that the service of being relayed to calculates equipment.By the way that device identifier is preset to localization UI element mark not at client computing device Know symbol, the amount of the data sent by client computing device can be lowered, and communication efficiency can be enhanced.It is set in Framework computing In the case of having relative to a large amount of process resources and communication bandwidth of client computing device, such method can especially have Benefit.In terms of energy in reducing battery powered client computing device by communicating consumption, such method can also especially have Benefit.
Example in response to identifying UI element, service calculating equipment 202 can be configured to execute associated with the UI element Operation.Service calculate equipment 202 may include be configured to generate, the example of modification and/or maintenance UI element is to different operation Mapping mapping block 216.In one example, the example of UI element is mapped to individual operations.In another example, The example of UI element is mapped to the multiple and different operations that can be conditionally executed based on various operating conditions.
Service calculate equipment 202 may include be configured to execute it is related to the example for being identified as UI element involved in event The operation processing module 218 of the operation of connection.Specifically, operation processing module 218, which can be configured to management service, calculates equipment 202 processing and data storage resource are to execute operation.In addition, in some cases, operation processing module 218 can be configured to It generates and is sent to other remote computing devices to represent the order that requesting party's client computing device executes operation.For example, clothes Business, which calculates equipment 202, may act as calculating equipment (the responsible third party calculating equipment that client computing device connect network with other 210) intermediary between.In another example, service calculates equipment 202 can send order to host computing device, and main Machine calculates equipment and can be configured to execute operation specified by the order.In another example, service calculate equipment 202 can be to Host computing device send order, and host computing device can by the command auto repeat arrive with the host computing device match or The client computing device otherwise communicated.In some implementations, host computing device may include operation processing mould Block.For example, being that client device directly executes operation without regard to the realization of service calculating equipment in wherein host computing device In, host computing device may include operation processing module.
It may include event logging module 220 that service, which calculates equipment 202,.Event logging module 220 can be configured to creation simultaneously Safeguard service calculates the log of the event of UI element ordered by equipment 202.For example, event logging module 220 can be each Service calculates when equipment 202 receives the notice of event and creates journal entries.In one example, log can be organized to so that Each client computing device has the list of event associated with the UI element of the client computing device is associated with.Another In one example, log can be organized to so that every UI element is with unknowable for any particular clients calculate equipment The list of event.The tissue of this type for across specific UI element different clients calculate equipment on all examples come with It is useful for the interaction of track and the UI element.Log can track the event of different UI elements to judge the prevalence of UI element Property, utilization rate or other suitable aspects.Such tracking can be used to refine and develop various applications.In addition, log can Collectively tracking multiple client calculates equipment to the utilization rate or popularity of UI element, and it is (all that this can be applied to different application Such as poll, ballot or other suitable activities).
In addition, in some cases, host computing device, which can handle, to be notified and directly executes to operate without and service Computing device communication.For example, host computing device can execute operation directly to reduce and service the communication for calculating equipment.Another In one example, if host computing device loses the network connection for calculating equipment with service, host computing device can be direct Execute operation.
Host computing device may include example of the mapping block 216 to identify the UI element identified in the notice with event Associated operation.In some cases, the version for the mapping safeguarded on host computing device can be calculated relative in service The version for the mapping safeguarded in equipment is truncated.For example, the version for the mapping safeguarded on host computing device can only include installation The example of the UI element of application in associated client computing device.
In some implementations, host computing device may include event logging module 220.Event logging module 220 can be matched It is set to and locally records event associated with the associated UI element of calculating equipment of disconnected network.
It is any suitable that service calculating equipment and/or host computing device are configured to client computing device execution Operation.Figure 10-12 shows the example of the associated different operation of the example of UI element executed with the notice in response to event Scene.
The wherein event that Figure 10 shows triggers the example field for adjusting the order of the operation of client computing device 1000 Scape.The order can indicate operation associated with the UI element of client computing device 1000.Specifically, client calculating is set Standby 1000 include generating that GUI 1002 of the baseball for the sports applications installed in client computing device 1000 than paging is presented Touch display screen.GUI 1002 include the multiple UI elements 1004 for the form that there are different teams to fight in different matches with These associated scores of different teams.In addition, GUI 1002 includes update-score button 1006.
Client computing device 1000 can be configured to defeated in response to receiving the touch for selecting to update score button 1006 Enter to generate the notice of event associated with score button 1006 is updated.In other implementations, 1006 quilt of score button is updated It omits and score is updated periodically.In other other realizations, update is pushed to client computing device.Any conjunction Suitable event can trigger execution operation associated with the example of UI element.
The notice includes identifying the example of the update score button 1006 in client computing device 1000 or with other Mode identifies the individualized UI component identifier of triggering appropriate (even if it is button-free triggering).Client computing device 1000 The notice of event is transmitted directly to service via wide area network connection and calculates equipment 1008 or the host meter by connecting network Equipment is calculated to be relayed.Service calculate equipment 1008 identified based on individualized UI component identifier update score button 1006 or Another triggering simultaneously searches operation associated with the UI element.In this case, which includes to client computing device 1000 send the order for adjusting the operation of the client computing device.Specifically, service, which will calculate equipment 1008, to be updated BLOB is sent to client computing device 1000.Update BLOB includes will be via corresponding with the updated score in GUI 1002 UI element present updated information.
Service calculates equipment and can send in response to an event by any suitable updated information or through refreshing information To client computing device usually to be shown via UI member.For example, if since final updating only one team score It has changed, then only has score needs to be included in and update in BLOB.In the example explained, the score of SEA is uniquely to change The UI element of change.In this way, updating the UI component identifier and number that BLOB includes the corresponding UI element of score with SEA The payload user data of " 7 ".Note that this change is highlighted in Figure 12, but in fact, highlighting can save from GUI Slightly.
The wherein event that Figure 11 shows triggers the exemplary scene for adjusting the order of the operation of host computing device.The life Order can indicate operation associated with the UI element of client computing device.Specifically, client computing device 1100 includes Generate the touch display screen that the GUI 1102 of one page for the phone volume application installed in client computing device 1100 is presented.Electricity Speech amount application can permit the smart phone that the host computing device for the client computing device is served as in user's adjustment 1110 volume.GUI 1102 includes multiple UI elements 1104 with 1106 form of different text marks and volume slide.
Client computing device 1100 can be configured to come in response to the touch input for receiving adjustment volume slide 1106 Generate the notice of event associated with volume slide 1106.The notice includes identifying volume in client computing device 1100 to slide The individualized UI component identifier of the example of block 1106.Client computing device 1100 can connect the notice of event via wide area network It connects the service of being transmitted directly to and calculates equipment 1108 or the host computing device (for example, smart phone 1110) by connecting network It is relayed.Service is calculated equipment 1108 and is identified volume slide 1106 based on individualized UI component identifier and searched and the UI The associated operation of element.In this case, which includes sending to smart phone 1110 for adjusting the smart phone Operation order.Specifically, the order can instruct the volume for the loudspeaker that smart phone adjusts on the smart phone.
In another example, client computing device 1100 is the calculating equipment of disconnected network and smart phone 1110 fills When the host computing device of the client computing device.In the example present, client computing device 1100 is by the notice of event It is sent to smart phone 1110.The notice includes localization UI component identifier.Smart phone 1110 is based on localization UI element Identifier identifies volume slide 1106, such as searches operation associated with the UI element via the mapping being locally stored. In addition, smart phone 1110 executes the operation directly to adjust volume.In some implementations, as the measure for saving bandwidth, intelligence The notice can not be relayed to service and calculate equipment by energy phone 1110.In some implementations, smart phone 1110 can lead to this Know that the service of being relayed to calculates a part of equipment 1008 as event recording function.
Figure 12 shows the example field of the order of the operation of calculating equipment of the wherein event triggering for adjusting connection network Scape.The order can indicate operation associated with the UI element of client computing device.Specifically, client computing device 1200 include generating the TV viewers investigation page that the television-viewing companion application installed in client computing device 1200 is presented The touch display screen of GUI 1202.GUI 1202 includes the different-style for having with showing on the television set 1210 for connecting network Multiple UI elements of corresponding different ballot button (for example, ballot A, ballot B, the ballot C, ballot D) forms of TV programme 1204。
Client computing device 1200 can be configured in response to via touch or other input come select ballot button it One and generate the notice of event.In the example present, user by via the touch input to client computing device 1200 come Select button 1206 gives movement style to vote.The notice includes the example for identifying button 1206 in client computing device 1100 Individualized UI component identifier.The notice of event is transmitted directly to take by client computing device 1200 via wide area network connection Business calculates equipment 1208 or the host computing device by connecting network is relayed.Service calculates equipment 1208 and is based on individually Change UI component identifier to carry out labeled button 1206 and search operation associated with the UI element.In this case, the operation Including for example following up the case in the log of UI elementary event via above-mentioned event logging module.The log is traceable how much not The different ballot buttons in GUI have been selected to provide investigation/voting function with client computing device.In addition, service calculates Equipment 1208 can be configured to send the result of TV viewers investigation to be shown in client computing device 1200 or connection network Television set 1210 on.
In some implementations, service calculates all UI elements that equipment is configured in different clients calculating equipment Example executes operation.For example, same television-viewing companion application may be mounted to that in multiple and different client computing devices.One In a example, a part of the GUI of equipment is calculated as management multiple client, service, which calculates equipment and can send, updates BLOB To update the information shown via investigation result UI element.Specifically, updating BLOB may include investigation result to be updated The localization UI component identifier of UI element and the payload of the binary data comprising indicating investigation result.In an example In, service, which calculates equipment, can be broadcast to update BLOB all clients calculating equipment.If using client is installed in It calculates in equipment, then client computing device can be updated via investigation result UI member specified by localization UI component identifier The information of element display.If client computing device can abandon this using not being installed in client computing device Update BLOB.
In another example, it may be mounted to that client calculating is set for controlling the application of the television set 1210 of connection network On standby 1200, such as virtual remote control application.Virtual remote control application may include the television set that can be selected to adjust connection network The UI element of 1210 operation.For example, UI element may include volume control, channel control, DVR control or another suitable electricity It is controlled depending on machine.Client computing device can come in response to one of the UI element via user input selection these remote-control types to Service calculates equipment 1208 and/or connects the notice of the transmission event of television set 1210 of network.In addition, service calculates equipment 1208 Order associated with UI element can be sent to the television set 1210 of connection network to adjust the television set of the connection network Operation.For example, the order can change channel, adjustment volume, record television program or execute another suitable movement.Visitor Family end calculates equipment and can be used to adjust any suitable parameters of the television set of connection network by this method.
According to above-mentioned method, it includes any for only being provided by client computing device (or associated host computing device) The notice of the individualized UI component identifier of any UI element shown in the GUI of client computing device, so that it may Xiang Yuancheng Calculate equipment (for example, service calculates equipment, host computing device, third party's calculating equipment or another suitable calculating equipment) Notification triggers execute the event of operation associated with the UI element.In other words, such addressing scheme can permit client It calculates equipment and transmits processing result to remote computing device in the way of data efficient.
In the another example approaches for improving communication efficiency, client computing device can be configured to use same protocol and exist It is communicated on both wire communication I/O interface and wireless communication I/O interface with remote computing device.In general, this agreement can To be used together from any number of different transport layers (for example, USB, BT and BTLE).The packet format of the agreement can be not It is identical in transport layer with communication I/O interface.In addition, the client computing device side of the agreement can have for all biographies The single unified realization of defeated layer.In one example, which can be by mode identical in multiple and different transport layers by client End calculates the feature of equipment, and such as UI element, sensor signal and other composition information are exposed to remote computing device.This The uniformity of sample allows shared library that can be compatible from different transport layers.Correspondingly, which can reduce client meter It calculates the memory usage in equipment and communication efficiency can be improved.
In one example, which can be the association of three stages including command phase, data phase and state phase View.During the command phase, command grouping can be sent to client computing device from remote computing device, and command grouping can be with The specified order to be serviced by client computing device.During data phase, optionally, one or more data point Group can be transmitted between remote computing device and client computing device based on order specified in command grouping.In state Whether during the stage, status code can be sent to remote computing device by client computing device, indicate the order by client Equipment is calculated successfully to service.
In one example, three stage protocols can be the bidding protocol including multiple and different orders.More specifically, it orders Enable agreement that can define three different command types.First command type assigning remote calculates equipment and will count during data phase According to being sent to client computing device.In an example of the first command type, the backlight of client computing device is set The order of sensitivity level may include the required strength level of backlight.Required intensity value can be during data phase from long-range meter It calculates equipment and is sent to client computing device.
Second command type assigning remote calculates equipment and receives the number from client computing device during data phase According to.In an example of the second command type, the order that requesting client calculates the present intensity level of the backlight of equipment can To cause client computing device that the present intensity level of backlight is sent to remote computing device.
Third command type is specified does not have data in remote computing device and client computing device during data phase Between exchange.In an example of third command type, the order for opening backlight can be sent to visitor from remote computing device Family end calculates equipment.
In some implementations, all orders of bidding protocol can be by remote computing device (for example, service calculates equipment or master Machine calculates equipment) it initiates.By initiating all orders from remote computing device, client computing device can be allowed to have less Processing capacity and still realize the bidding protocol.
Figure 13, which is shown, can be sent to client from remote computing device during the command phase of three stage bidding protocols Calculate the example command grouping 1300 of equipment.Command grouping 1300 may include order or command identifier 1302, order independent variable 1304 and memory size 1306.Order 1302 can be from the order compatible from the different transport layers of different communication I/O interface It is selected in library.Specifically, command library can be shared by wire communication I/O interface and wireless communication I/O interface.Order independent variable The 1304 multiple orders that can be serviced from that can be handled by the command processor of client computing device the order are certainly It is selected in variable.Order independent variable optionally based on be selected to processing order type and be included in command grouping In.The format of order independent variable can be in the command processor of host computing device and the client computing device for executing the order Between implicitly know.Order independent variable can be used to send it from host computing device in data during data phase Come to be arranged or initialization client computing device is to execute order.Memory size 1306 can specify to order in three stages and assist The total memory size of the data transmitted during the data phase of view.
In one example, each command processor in client computing device can be defined by three functions.The One function, which can be, is optionally performed independent variable setting function based on command type specified by command grouping.It is specific and Speech, this can optionally function can be registered by command processor to be held in client computing device when receiving command grouping Row setting operation.Second function, which can be, can be registered and be sent out from client computing device in command processor wherein data The order for being sent to remote computing device carries out the transmission function of service execution.Third function, which can be, can be registered and at order Manage the reception letter that program is carried out service execution to wherein data by client computing device from the received order of remote computing device Number.
Figure Figure 14 A-14C shows the remote computing device 1400 and client computing device according to three stage bidding protocols The exemplary scene of communication between 1402.Specifically, three stage bidding protocols may include command phase 1404, data phase 1406 and state phase 1408.During the command phase 1404, command grouping 1410 can be sent out from remote computing device 1400 Give client computing device 1402.Based on the type of order specified by command grouping 1410, data grouping can with or can be with It is not sent during data phase 1406.If ordering specified data grouping to send during data phase 1406, the order It can further specify that data grouping direction to be sent.In one example, the direction can be encoded implicitly marks in order Know in symbol.Specifically, data grouping is sent to client computing device from remote computing device 1400 during data phase 1402 or data grouping from client computing device 1402 be sent to remote computing device 1400.In some implementations, data rank Section can be configured for one-way communication on the basis of every order.
Figure 14 A shows wherein order assigning remote and calculates equipment 1400 during data phase 1406 for multiple data groupings 1412 are sent to the exemplary scene of client computing device 1402.Figure 14 B shows wherein order given client end and calculates equipment 1402 are sent to multiple data groupings 1412 exemplary scene of remote computing device 1400.It is specified that Figure 14 C shows wherein order It is transmitted between remote computing device 1400 and client computing device 1402 during data phase 1406 without data grouping Exemplary scene.During data phase 1406, any suitable number of data grouping can be transmitted or received.
In some implementations, data phase 1406 can be optimized for efficient, high bandwidth communication.In an example In, multiple data groupings 1406 can be configured to transmit between each equipment without any special header or mark with reduction The amount of data.
In another example, the size of data grouping 1406 can be dynamically selected to send the data grouping with by it Communication I/O interface maximum transmission unit (MTU) it is corresponding.Specifically, if data grouping connects via wire communication I/O Mouth is sent, then each grouping can be sized according to the MTU of wire communication I/O interface.If data grouping is via channel radio Believe that I/O interface is sent, then each data grouping can be sized according to the MTU of wireless communication I/O interface.Note that different logical Letter I/O interface can respectively have different MTU.
As described above, in some implementations, client computing device may include sharing synthesis process, shown in such as Figure 1B Sharing synthesis process 66.Sharing synthesis process can be arranged to keep to send via wire communication I/O interface or via wireless communication The storage machine for the machine-readable data grouping that I/O interface is sent.In other words, sharing synthesis process may act as in 1306 phase of data phase Between the clue of outgoing data grouping that sends.In some implementations, any spy can be once provided on only one transport protocol Fixed order (for example, when order is run on USB, the order on BT/BTLE is blocked).Once order is sent, then next Order can be processed.In one example, each transport layer can support the order through blocking, and transport layer through hindering The order of plug can be stored in sharing synthesis process.
In one example, sharing synthesis process can have and the MTU of wire communication I/O interface and wireless communication I/O interface MTU in the corresponding size of maximum MTU.Wherein there are multiple and different wireless and/or wire communications with different MTU In the case of I/O interface, sharing synthesis process can be sized according to the maximum MTU in multiple difference MTU.Correspondingly, altogether Buffer is enjoyed to be designed to promote operation to communicate on different communication I/O interface in an identical manner.
During state phase 1408, status code 1414 can be sent to remote computation and set by client computing device 1402 It is standby.Status code 1414 can indicate whether the order is command by processing routine and successfully services.In one example, in bidding protocol Each order can be sent to remote computing device with status code 1414 and terminate.In some implementations, if the order does not have Have and successfully serviced by client computing device 1402, then status code 1414 can indicate to occur when servicing order The type of mistake.It in one example, can by stopping thereon if data phase intermediate report on USB mistake The USB pipe of data transmission occurs to indicate the mistake.In another example, if among data phase on BT/BTLE Mistake is reported, then can indicate the mistake by disconnecting the socket connection of just transmission data on it.If in data rank Mistake just has occurred during the decline of section or before state phase, then can indicate this by sending error status message Mistake.
By improving communication efficiency according to above-mentioned method, the local resource constraint of client computing device can be hidden.
Figure 15 is shown for manage can be by the exemplary method 1500 of the demonstration for the GUI that client computing device is shown.For example, Method 1500 can be executed by client computing device, all client computing device A-N as shown in Figure 2.
1502, method 1500 may include the UI topology file for receiving the visual layout for defining GUI.UI topology file can wrap Include multiple UI elements.Every UI element may include UI component identifier and UI element descriptor.UI component identifier can should UI element is distinguished with other each UI elements in UI topology file.UI element descriptor can define aobvious via the UI element The attribute for the information shown.For example, the attribute may include the number of UI element type, memory size, position, color, sub- UI element Mesh, and/or other suitable attributes.
In some implementations, UI topology file can have flattening tree construction, and plurality of UI element is laid out text in the UI It is sorted in part according to parent-child relationship.In some implementations, UI topology file may include indicate the UI topology file version, The page header of the sum of UI element in the number of the direct child node of root UI element and the UI topology file.In some realizations In, UI topology file can have binary machine readable format.
UI topology file can be received via digital communication channel.In some cases, UI topology file can be by wide Domain net connection calculates equipment from service and receives.In some cases, client computing device can not be connected and be taken via wide area network Business calculates equipment direct communication.On the contrary, the calculating equipment can be configured to via the first LAN connection and host computing device Communication.In addition, host computing device can be configured to connect via the second wide area network and service computing device communication.Service calculates Equipment can be configured to for UI topology file to be sent to host computing device, and host computing device can be configured to for UI being laid out File relay receives UI topology file from host computing device to client computing device.In other words, UI layout text Part can come to calculate equipment reception from service via host computing device relaying.
1504, method 1500 may include that GUI is presented via the display of client computing device according to UI topology file.
1506, method 1500 may include receiving to update BLOB.Update BLOB may specify to be altered in UI topology file One or more UI elements.For every UI element to be altered, the UI element mark that BLOB may include the UI element is updated Know symbol and comprising will be via the update payload for the updated information that the UI element is shown.
In some cases, equipment reception can be calculated from service by updating BLOB.In some cases, updating BLOB can be with It is received from host computing device.In some implementations, binary machine readable format can be had by updating BLOB.
1508, method 1500 may include for updating every UI element specified by BLOB, the UI based on the UI element Component identifier to determine the UI attribute of an element from UI topology file.
1510, method 1500 may include changing GUI via display according to update BLOB.
Figure 16 is shown can be by multiple visitor to manage for calculating data of the equipment offer based on subscription to multiple client Family end calculates the exemplary method 1600 of the demonstration for the GUI that equipment is shown.For example, method 1600 can calculate equipment or host by service It calculates equipment to execute, all services as shown in Figure 2 calculate equipment 202 or host computing device A and B.
1602, method 1600 may include the subscription that equipment offer is calculated to multiple subscribers to UI topology file.
UI topology file can define can be by the visual layout of the GUI of each of multiple calculating equipment display.UI Topology file may include multiple UI elements.Every UI element may include UI component identifier and UI element descriptor.UI element mark The UI element and other each UI elements in UI topology file can be distinguished by knowing symbol.UI element descriptor can define warp By the attribute for the information that the UI element is shown.In some implementations, UI topology file can have binary machine readable form.
1604, method 1600 may include that UI topology file is sent to multiple subscribers to calculate equipment to be laid out according to UI File shows GUI.
1606, method 1600 may include generating one or more UI elements to be altered in specified UI topology file Update BLOB.For every UI element to be altered, the UI component identifier and packet that BLOB may include the UI element are updated Containing will be via the update payload for the updated information that the UI element is shown.
In some implementations, equipment generation can be calculated by service by being updated more new information included in BLOB.At other In realization, updated information can be received from another source.Correspondingly, 1608, method 1600 optionally may include from third Side calculates equipment and receives the information with human readable format.
1610, method 1600 optionally may include executing the transformation of the information with human readable format to generate tool There is the updated information of binary machine readable format.This, which is updated information and can be included in, updates in BLOB.
1612, method 1600 may include that will update BLOB to be sent to multiple subscribers' calculating equipment according to the update BLOB changes GUI.In some implementations, updating BLOB has binary machine readable format.In some cases, UI layout text Part can be connected with update BLOB by wide area network is sent to subscriber's calculating equipment.In other circumstances, UI topology file can It is sent to subscriber to be relayed via host computing device and calculates equipment.
Figure 17 is shown for coming in response to the notice for receiving event associated with the UI element of client computing device The exemplary method 1700 of resource is remotely provided to client computing device.For example, method 1700 can calculate equipment or master by service Machine calculates equipment and executes.
1702, method 1700 may include the notice of reception event.The notice may include by the example of a UI element and appointing The individualized UI component identifier that other each examples of what UI element distinguish.Individualized UI component identifier may include equipment Identifier, application identifier, page index and UI element tags.Device identifier can by client computing device with it is each Other calculate equipment and distinguish.Application identifier can distinguish an application with each other application.Page index can be by UI Other included each pages distinguish in the example of element page disposed thereon and application.UI element tags can be by UI member Element is distinguished with other each UI elements included in this page.
Any suitable event can be sent to remote computing device with trigger notice.In one example, event can wrap It includes and is interacted via user's input to client computing device to the selection of the example of UI element or otherwise.Another In one example, event can be triggered by another operation of client computing device.In another example, event can be repeated touching Hair, such as periodically.
1704, method 1700 may include the individualized UI component identifier that includes in the notice based on event to identify UI The example of element.
1706, method 1700 may include the example in response to identifying UI element, execute associated with the example of UI element Operation.In one example, each individualized UI component identifier is mapped to one or more operations, and the operation It can be identified by executing the lookup to mapping.The operation may include the operation of any suitable type.In one example, In 1708, method 1700 may include that the order of the operation of adjustment host computing device is sent to host computing device.In another example In, 1710, method 1700 may include sending to adjust the company to the calculating equipment for the connection network for being different from host computing device Connect the order of the operation of the calculating equipment of network.In another example, 1712, method 1700 may include to host computing device Send the order of the operation of adjustment client computing device.In this situation, host computing device can be configured to the life Order is transmitted to client computing device.
Figure 18 shows the example side that the communication between equipment and service calculating equipment is calculated for efficiently relay client Method 1800.For example, method 1800 can be by host computing device (all masters as shown in Figure 2 for matching with client computing device Machine calculates equipment A and B) it executes.
1802, method 1802 may include that the notice of event is received from client computing device.The notice may include by UI Other each example areas of one example of element and the every UI element that can be shown in any application of client computing device Separated localization UI component identifier.Localization UI component identifier may include application identifier, page index and UI element Label.Application identifier can distinguish an application with each other application.The example of UI element can be located at by page index Other each pages for including in page thereon and application distinguish.UI element tags can will include in the UI element and this page Other each UI elements distinguish.The notice of event can be received via digital communication channel.Digital communication channel can be Line is wireless.Digital communication channel can take the communication channel of any suitable form to transmit machine-readable data.
1804, method 1800 may include that device identifier is added to localization UI component identifier is individualized to generate UI component identifier.Client computing device can be calculated equipment with each other and distinguished by device identifier.
1806, method 1800 may include that the notice including individualized UI component identifier is relayed to service calculating to set It is standby.
Depending on the type of operation associated with the example of UI element, service, which calculates equipment, can send a command to master Machine calculates equipment or client computing device.Correspondingly, 1808, method 1800 optionally may include in response to that will notify in After calculating equipment to service, equipment is calculated from service and receives the order for adjusting the operation of the calculating equipment, the operation and UI The example of element is associated.In other circumstances, service calculates the equipment that equipment can send a command to different connection networks. Under other other situations, service, which calculates equipment, can execute operation without sending order to another calculating equipment.
1810, method 1800 optionally may include that the determining order is oriented at host computing device or is somebody's turn to do Order is oriented at client computing device.If order is oriented at host computing device, method 1800 be can be moved to 1812.Otherwise, method 1800 can be moved to 1814.
1812, method 1800 optionally may include that the operation for calculating equipment is adjusted according to order.
1814, method 1800 optionally may include by command auto repeat to client computing device.
Figure 19 is shown for being carried out using identical three stage protocol by different communication I/O interface and remote computing device The exemplary method 1900 of communication.For example, this method can be executed by client computing device, all client meters as shown in Figure 2 Calculate equipment A-N.
1902, method 1900 may include using identical three stage protocol via wire communication I/O interface and channel radio Both letter I/O interfaces are communicated with remote computing device.Three stage protocols may include command phase, data phase and state rank Section.
1904, method 1900 may include receiving command grouping from host computing device during the command phase.Order point Group may include order, order independent variable and memory size.Order can be from by wire communication I/O interface and wireless communication The shared command library selection of I/O interface.Order independent variable can be handled from by the command processor of the calculating equipment to this It orders and is selected in the multiple order independents variable serviced.Memory size can specify the data transmitted during data phase Total memory size.
1906, method 1900 may include that order included in determining command grouping is specified during data phase from visitor Family end calculating equipment transmission data receive data or during data phase during data phase at client device Do not transmit data.If order, which is specified, sends data from client computing device during data phase, this method is moved to 1908.Otherwise, if order is specified receives data during data phase at client computing device, method 1900 is moved to 1910.Otherwise, method 1900 moves to 1912.
1908, method 1900 may include that one or more data groupings are sent to remote computation during data phase Equipment.
1910, method 1900 may include receiving one or more data point from remote computing device during data phase Group.
1912, method 1900 may include sending status code to host computing device during state phase.Status code can It is successfully serviced with indicating whether the order is command by processing routine.In some implementations, if the order is not wearable Equipment successfully services, then status code can indicate the type of the mistake occurred when servicing order.
In some implementations, the first command grouping can be via wired I/O interface.In this way, first one or more numbers It can be transmitted or received as specified by the order from the first command grouping according to grouping.Because the first command grouping is via having Line I/O interface, so first one or more data groupings can also send or receive via wired I/O interface. In addition, the second command grouping can be received via wireless I/O interface.In this way, second one or more data groupings can such as come from The order of second command grouping is transmitted or received specifiedly.Because the second command grouping is via wireless I/O interface , so second one or more data groupings can also send or receive via wireless I/O interface.
In some embodiments, method and process described herein can be with one or more calculating systems for calculating equipment System binding.Specifically, such method and process can be implemented as computer applied algorithm or service, Application Programming Interface (API), library and/or other computer program products.
Figure 20 schematically shows the computing system 2000 of one or more of the executable above method and process Non-limiting embodiment.Show in simplified form computing system 2000.Computing system 2000 can take the form of one or Multiple personal computer, server computers, tablet computer, home entertaining computer, network computing device, game station, Mobile computing device, mobile communication equipment (for example, smart phone) and/or other calculating equipment.For example, computing system 2000 can To indicate that service calculates equipment, host computing device, client computing device, third party's calculating equipment, the calculating for connecting network Equipment, the calculating equipment of disconnected network or another suitable calculating equipment.In one example, computing system 2000 can be with Indicate that client computing device A-N shown in Figure 2, host computing device A and B, service calculate equipment 202 and third party Calculate equipment 210.
Computing system 2000 includes logical machine 2002 and storage machine 2004.Computing system 2000 optionally includes display System 2006, input subsystem 2008, communication subsystem 2010, command library 2012, and/or other unshowned groups in Fig. 2 Part.
Logical machine 2002 includes the one or more physical equipments for being configured to execute instruction.For example, logical machine can be matched It is set to the instruction for executing a part as the following terms: one or more application, service, program, routine, library, object, group Part, data structure or other logical constructs.This instruction can be implemented to performing task, realize data type, conversion one or The state of multiple components is realized technical effect or is otherwise arrive at.
Logical machine may include the one or more processors for being configured to execute software instruction.Additionally or alternatively, it patrols The machine of collecting may include the one or more hardware or firmware logic machine for being configured to execute hardware or firmware instructions.The processing of logical machine Device can be single or multiple core, and the instruction executed on it can be configured to serial, parallel and/or distributed treatment.Logic The various components of machine are optionally distributed on two or more specific installations, these equipment can be located at long-range and/or be matched It is set to and carries out collaboration processing.The various aspects of logical machine can be calculated by the networking capable of making remote access configured with cloud computing Equipment is virtualized and is executed.
Storage machine 2004 includes being configured to save to be executed by logical machine to realize methods and procedures described herein One or more physical equipments of instruction.When realizing these method and process, the state of storage machine 2004 can be converted --- For example, saving different data.
Storage machine 2004 may include removable and/or built-in device.Storage machine 2004 may include optical memory (example Such as, CD, DVD, HD-DVD, Blu-ray disc), semiconductor memory (for example, RAM, EPROM, EEPROM etc.) and/or magnetic memory (for example, hard disk drive, floppy disk drive, tape drive, MRAM), etc..Storage machine 2004 may include volatibility, it is non-easily The property lost, dynamic, static state, read/write, read-only, arbitrary access, sequential access, position addressable, file addressable and/or content can Address equipment.
It is appreciated that storage machine 2004 includes one or more physical equipments.However, the various aspects of instruction described herein Alternatively by not passed by physical equipment there is a communication media held in limit (for example, electromagnetic signal, optical signal) It broadcasts.
The various aspects of logical machine 2002 and storage machine 2004 can be integrated together into one or more hardware logic components. These hardware logic components may include the integrated circuit of such as field programmable gate array (FPGA), program and application specific (PASIC/ASIC), the standardized product (PSSP/ASSP) of program and application specific, system on chip (SOC) and complex programmable Logical device (CPLD).
Term " module ", " program " and " engine " can be used for the computing system for describing to be implemented as executing a specific function 2000 one side.In some cases, can by execute the logical machine 2002 of the instruction kept by storage machine 2004 come Instantiate module, program or engine.It will be understood that can be from same application, service, code block, object, library, routine, API or letter Number instantiates different module, program and/or engine.It is also possible to by different application programs, service, code block, object, Routine, API or function instantiate same module, program and/or engine.Term " module ", " program " and " engine " can be covered Single or groups of executable file, data file, library, driver, script or data-base recording.
It should be understood that " service " as used herein is the application program that can be performed across multiple user conversations.Service can be used for One or more system components, program and/or other services.In some implementations, service can be in one or more servers It calculates and is run in equipment.
When included, display subsystem 2006 can be used for presenting the visual representation of the data saved by storage machine 2004. The form of graphic user interface (GUI) can be used in this visual representation.Since approach described herein and process change are by depositing The data that storage machine is kept, and the state of storage machine has thus been converted, therefore can equally change the state of display subsystem 2006 Visually to indicate the change of bottom data.Display subsystem 2006 may include one using essentially any type of technology Or multiple display equipment.It can combine such display equipment with logical machine 2002 and/or memory machine 2004 in shared encapsulation, Or such display equipment can be peripheral display device.
When including input subsystem 2008, input subsystem 2008 includes such as keyboard, mouse, touch screen or game control One or more user input equipments or interfaced of device processed etc.In some embodiments, input subsystem can wrap It includes selected natural user and inputs (NUI) component or interfaced.Such component can be it is integrated or peripheral, and The conversion and/or processing of input action can be processed onboard or outside plate.The example of NUI component may include for language and/ Or the microphone of speech recognition;For machine vision and/or the infrared of gesture recognition, color, stereoscopic display and/or depth camera; For motion detection and/or the head-tracker of intention assessment, eye tracker, accelerometer and/or gyroscope;And for commenting Estimate the electric field sensing component of brain activity.
When including communication subsystem 2010, communication subsystem 2010 can be configured to computing system 2000 and one or Couple to other multiple computing device communications.Communication subsystem 2010 may include compatible with one or more different communication protocols Wired and or wireless communications equipment.As non-limiting example, communication subsystem be may be configured for via radiotelephony network Network or wired or wireless LAN or wide area network are communicated.In some embodiments, communication subsystem allows to calculate System 2000 sends a message to other equipment via network as such as internet and/or disappears from other equipment reception Breath.
Command library 2012 is provided to allow to be communicated on different communication I/O interface using same protocol.For example, order Library is provided to the build tool communicated by USB, BT or BTLE transport layer with client computing device.Command library 2012 can Including any suitable order.
One example provides a kind of calculating equipment, including display, logical machine and saves the storage machine instructed, these Instruction can be executed by logical machine to receive user interface (UI) the layout text for the visual layout for defining graphic user interface (GUI) Part, the UI topology file include multiple UI elements, and every UI element includes UI component identifier and UI element descriptor, UI element Identifier distinguishes the UI element and each other UI elements in UI topology file, and UI element descriptor definition via GUI is presented according to UI topology file via display for the formatting property for the information that the UI element is shown, receives specified UI cloth The upgating object of one or more UI elements to be altered in office file, the upgating object is for every UI to be altered Element includes the UI component identifier of the UI element and including that will be shown according to the UI element descriptor of the UI element It is updated the update payload of information, and GUI is changed according to upgating object via display.In such an example, UI cloth Office file can optionally have binary machine readable format and upgating object has binary machine readable format.In this way Example in, UI topology file can optionally have flattening tree construction, plurality of UI element root in UI topology file It sorts according to parent-child relationship.In such an example, UI topology file optionally may include the version for indicating the UI topology file The top margin portion of the sum of UI element in sheet, the number of the direct child node of root UI element and the UI topology file.Such In example, the attribute defined by UI element descriptor optionally may include UI element type, memory size, position, color, One or more of font style, alignment, transparency and number of sub- UI element.In such an example, the storage machine Instruction is optionally saved, these instructions can be executed as logical machine so as to for every UI element, base specified by upgating object The UI attribute of an element is determined from UI topology file in the UI component identifier of the UI element.In such an example, UI cloth Office file and upgating object optionally can calculate equipment from service by network connection and receive.In such an example, UI Topology file can optionally come to calculate equipment reception from service via host computing device relaying.In example described above Any one or all can be combined in any suitable way in each realization.
Another example provides a kind of method for calculating the presentation for managing graphic user interface (GUI) in equipment, This method includes that user interface (UI) topology file for defining the visual layout of GUI is received via digital communication channel, the UI cloth Office file includes multiple UI elements, and every UI element includes UI component identifier and UI element descriptor, and UI component identifier will The UI element is distinguished with each other UI elements in UI topology file, and the definition of UI element descriptor is via the UI element GUI is presented according to UI topology file via the display of the calculating equipment, via the number in the formatting property of the information of display Word communication channel receives the upgating object of one or more UI elements to be altered in specified UI topology file, the update pair As including the UI component identifier of the UI element and including will be according to the UI element for every UI element to be altered UI element descriptor changed come the update payload of the updated information shown, and via display according to upgating object GUI.In such an example, UI topology file can optionally have binary machine readable format and upgating object has two System machine readable format.In such an example, UI topology file can optionally have flattening tree construction, plurality of UI element sorts in UI topology file according to parent-child relationship.In such an example, UI topology file can optionally wrap Include UI element in the version, the number of the direct child node of root UI element and the UI topology file for indicating the UI topology file Sum top margin portion.In such an example, the attribute defined by UI element descriptor optionally may include UI element class One or more of type, memory size, position, color, font style, alignment, transparency and number of sub- UI element. In such an example, this method optionally may include for every UI element specified by upgating object, based on UI member The UI component identifier of element from UI topology file determines the UI attribute of an element.In such an example, UI topology file and Upgating object optionally can calculate equipment from service by network connection and receive.In such an example, UI topology file It can optionally come to calculate equipment reception from service via host computing device relaying.Any one in example described above It is a or can all be combined in any suitable way in each realization.
Another example provides a kind of calculating equipment, including logical machine and saves the storage machine instructed, these instructions can It is executed from logical machine to calculate equipment offer to multiple subscribers and can be shown by each of multiple calculating equipment to definition Graphic user interface (GUI) visual layout user interface (UI) topology file subscription, the UI topology file include it is more A UI element, every UI element include UI component identifier and UI element descriptor, and UI component identifier is by the UI element and UI Each other UI elements in topology file distinguish, and UI element descriptor defines the information shown via the UI element Attribute calculates equipment to multiple subscriber and sends UI topology file to show GUI according to the UI topology file, generates specified The upgating object of one or more UI elements to be altered in UI topology file, the upgating object is for be altered every One UI element includes the UI component identifier of the UI element and including that will be shown according to the UI element descriptor of the UI element The update payload for the updated information shown, and by the upgating object be sent to multiple subscriber calculate equipment with according to this more New object changes GUI.In the example present, storage machine optionally saves instruction, these instruction can be executed by logical machine with Equipment is calculated from third party and receives the information with human readable format, and executes the change to the information with human readable format It changes to generate the updated information with binary machine readable format, this is updated information and is included in upgating object.In In such example, UI topology file can optionally have binary machine readable format and upgating object has binary system machine Device readable format.In such an example, UI topology file and upgating object can optionally be relayed via host computing device It is sent to one or more subscribers and calculates equipment.Any one of example described above all can be by any suitable Mode be combined in each realization.
Another example provides a kind of calculating equipment, including logical machine and saves the storage machine instructed, these instructions can It is executed by logical machine to receive the notice of event, which includes by each other of the example of a UI element and any UI element Individualized user interface (UI) component identifier that example distinguishes, the individualized UI component identifier include device identifier, Application identifier, page index and UI element tags, device identifier is by client computing device and each other calculating equipment It distinguishes, application identifier distinguishes an application with each other application, and page index is disposed thereon by the example of the UI element Page and application in include other each pages distinguish, and UI element tags by include in the UI element and this page it is each its He distinguishes UI element, the example for identifying UI element based on individualized UI component identifier included in the notice of event, And the example in response to identifying UI element, execute operation associated with the example of the UI element.In such an example, should Notice can optionally be come to receive from client computing device via host computing device relaying.In such an example, with The associated operation of the example of UI element optionally may include sending to the host computing device for relaying the notice for adjusting The order of the operation of host computing device.In such an example, operation associated with the example of UI element optionally may be used Calculating equipment including from the connection network to the host computing device for being different from relaying the notice is sent for adjusting the connection net The order of the operation of the calculating equipment of network.In such an example, operation associated with the example of UI element optionally may be used The operation for adjusting the client computing device is sent to client computing device including relaying via host computing device Order.In such an example, the order of the operation for adjusting client computing device optionally may include upgating object, The upgating object includes the individualized UI component identifier of the example of identified UI element and updates payload, updates payload packet Include the updated information that can be shown via the example of the UI element.In such an example, the event optionally may include through The example that the UI element is selected by user's input to client computing device, and execute related to the example of the UI element The operation of connection optionally may include following up the case in the log of UI elementary event.In such an example, application identities Symbol optionally can be the globally unique identifier (GUID) with first memory size, and wherein page index and UI member Plain label has the memory size for being respectively less than first memory size.Any one of example described above is whole It can be combined in any suitable way in each realization.
Another example provides a kind of on the computing device associated with the example of user interface (UI) element for controlling Operation method, this method include via digital communication channel receive event notice, which includes by a UI element The individualized UI component identifier that example and each other examples of any UI element distinguish, the individualized UI component identifier Including device identifier, application identifier, page index and UI element tags, device identifier is by client computing device and often One other calculating equipment distinguish, and application identifier distinguishes an application with each other application, and page is indexed the UI element Example page and application disposed thereon in include other each pages distinguish, and UI element tags are by the UI element and the page In include other each UI elements distinguish, UI is identified based on the individualized UI component identifier for including in the notice of event The example of element, and the example in response to identifying UI element, execute operation associated with the example of the UI element.In this way Example in, the notice can optionally come via host computing device relaying from client computing device receive.In this way Example in, it is associated with the example of UI element operation optionally may include to relay the notice host computing device hair Send the order of the operation for adjusting host computing device.In such an example, operation associated with the example of UI element It optionally may include sending to the calculating equipment for being different from relaying the connection network of the host computing device of the notice for adjusting The order of the operation of the calculating equipment of the whole connection network.In such an example, operation associated with the example of UI element It optionally may include relaying to send to client computing device via host computing device to set for adjusting client calculating The order of standby operation.In such an example, it can optionally be wrapped for adjusting the order of the operation of client computing device Upgating object is included, which includes the individualized UI component identifier of the example of identified UI element and update net Lotus, updating payload includes the updated information that can be shown via the example of the UI element.In such an example, which can appoint Selection of land may include the example for selecting the UI element via user's input to client computing device, and execute and UI member The associated operation of the example of element includes following up the case in the log of UI elementary event.In such an example, using mark Knowing symbol optionally can be the globally unique identifier (GUID) with first memory size, and device identifier, page Index and UI element tags can have the memory size for being respectively less than first memory size.In example described above Any one or all can be combined in any suitable way in each realization.
Another example provides a kind of calculating equipment including logical machine, storage machine, and the preservation of storage machine can be held by logical machine Instruction of the row to perform the following operation: the notice of event is received from client computing device, which includes by a UI element The sheet that example and other each examples for the every UI element that can be shown in any application of client computing device distinguish Ground UI component identifier, localization UI component identifier include application identifier, page index and UI element tags, application Identifier distinguishes an application with each other application, and page index will be in the example of the UI element page and application disposed thereon Including other each pages distinguish, and UI element tags distinguish other each UI elements for including in the UI element and this page It opens, and device identifier is added to localization UI component identifier to generate individualized UI component identifier, device identifier Client computing device is calculated equipment with each other to distinguish;And it will be in the notice including individualized UI component identifier Equipment is calculated after the service of arriving.It in such an example, optionally can be via including localizing the notice of UI component identifier First network connection is received from client computing device, and the notice including individualized UI component identifier optionally can be through The second network connection by being different from first network connection calculates equipment from service and receives.In the example present, storage machine can appoint Selection of land, which saves, can be executed by logical machine to execute the following instruction operated: in response to that will notify that being relayed to service calculates equipment, from Service calculates equipment and receives the order for adjusting the operation of the calculating equipment, and the operation is associated with the example of UI element;With And the operation of the calculating equipment is adjusted according to the order.In the example present, optionally save can be by logical machine for storage machine It executes to execute the instruction operated below: in response to that will notify that being relayed to service calculates equipment, receiving and use from service calculating equipment In the order for the operation for adjusting the client computing device, the operation is associated with the example of UI element;And it will be in the order After arrive the client computing device.Any one of example described above can all be combined in any suitable way In each realization.
Another example provides a kind of wire communication input/output (I/ including being configured to communicate with host computing device O) interface, the calculating equipment for wirelessly communicating I/O interface, logical machine and storage machine for being configured to communicate with host computing device, Storage machine saves the instruction that can be executed by logical machine to perform the following operation: using identical three stage protocol via wire communication Both I/O interface and wireless communication I/O interface are communicated with host computing device.In the example present, storage machine is optionally protected Depositing can be executed by logical machine to execute the following instruction operated: from host computing device during the command phase of three stage protocols Command grouping is received, which includes from the command library that wire communication I/O interface and wireless communication I/O interface are shared The order of selection.In such an example, order optionally may include order independent variable and memory size, order independent variable It is selected in the multiple order independents variable that can be serviced from that can be handled by the command processor of calculating equipment order, and And memory size specifies the total memory size of the data transmitted during the data phase of three stage protocols.In this example In, storage machine, which optionally saves, can be executed by logical machine to execute the following instruction operated: if the order is specified to send one The one or more data grouping is then sent to host computing device during data phase by a or multiple data groupings;With And if the order is specified to receive one or more data groupings, during data phase from host computing device receive this one A or multiple data groupings.In such an example, if the one or more data grouping is sent out via wire communication I/O interface It send, then the one or more data grouping can optionally have maximum transmission unit (MTU) phase with wire communication I/O interface Corresponding size, and if the one or more data grouping is sent via wireless communication I/O interface, the one or more number There is size corresponding with the wireless communication MTU of I/O interface according to grouping, the MTU of wireless communication I/O interface is different from cable modem Believe the MTU of I/O interface.In such an example, calculating equipment optionally may include being configured to keep via wire communication I/O The sharing synthesis process of data grouping and the data grouping sent via wireless communication I/O interface that interface is sent, if cable modem Believe that the MTU of I/O interface is greater than the MTU of wireless communication I/O interface, then the sharing synthesis process has and wire communication I/O interface The corresponding size of MTU, and if the MTU of wireless communication I/O interface is greater than the MTU of wire communication I/O interface, this is shared Buffer has size corresponding with the wireless communication MTU of I/O interface.In such an example, the one or more data Grouping optionally can be configured to that there is identical binary packet format, but regardless of the one or more data grouping be via Wire communication I/O interface still wirelessly communicates the transmission of I/O interface.In such an example, data phase optionally can be One-way communication is configured on the basis of every order.In the example present, storage machine is optionally saved and can be held by logical machine Row is to execute the instruction operated below: sending status code to host computing device during state phase, status code instruction should Whether order, which is command by processing routine, successfully services.In such an example, if the order is not succeeded by calculating equipment Ground service, then status code can optionally indicate the type of the mistake occurred when servicing order.It is described above to show Any one of example can be all combined in any suitable way in each realization.
Another example provides a kind of wire communication input/output (I/ including being configured to communicate with host computing device O) interface, the calculating equipment for wirelessly communicating I/O interface, logical machine and storage machine for being configured to communicate with host computing device, Storage machine saves the instruction that can be executed by logical machine to perform the following operation: using identical three stage protocol via wire communication Both I/O interface and wireless communication I/O interface are communicated with host computing device;From master during the command phase of three stage protocols Machine calculates equipment and receives command grouping, which includes order, order independent variable and memory size, the order be from It is selected in wire communication I/O interface and the command library shared of wireless communication I/O interface, order independent variable is from can be by calculating The command processor processing of equipment is with to selecting in multiple order independents variable for being serviced of order, and memory size Specify the total memory size of the data transmitted during the data phase of three stage protocols;If the order is specified to send one One or more of data groupings are then sent to the Framework computing during data phase and set by a or multiple data groupings It is standby;If the order is specified to receive one or more data groupings, receiving during data phase from host computing device should One or more data groupings;And status code is sent to host computing device during state phase, status code instruction should Whether order, which is command by processing routine, successfully services.In such an example, command grouping is optionally via wired I/O First command grouping of interface, the one or more data grouping are sent or connect via wired I/O interface The one or more data groupings of first received, and wherein storage machine is optionally saved and can be executed by logical machine below to execute The instruction of operation: via wireless the second command grouping of I/O interface;It is sent if the order from the second command grouping is specified Second one or more data groupings, then during data phase via wireless I/O interface by second one or more data Send packets to host computing device;And if the order from the second command grouping is specified to receive second one or more numbers According to grouping, then second one or more data are received from host computing device via wireless I/O interface during data phase Grouping.In such an example, if the one or more data grouping is sent via wire communication I/O interface, this Or multiple data groupings can optionally have size corresponding with maximum transmission unit (MTU) of wire communication I/O interface, And if the one or more data grouping is sent via wireless communication I/O interface, which has The MTU of size corresponding with the wireless communication MTU of I/O interface, wireless communication I/O interface is different from wire communication I/O interface MTU.In such an example, calculating equipment optionally may include being configured to keep sending via wire communication I/O interface Data grouping and via wireless communication I/O interface send data grouping sharing synthesis process, if wire communication I/O interface MTU be greater than wireless communication I/O interface MTU, then the sharing synthesis process have it is corresponding with the MTU of wire communication I/O interface Size, and if wireless communication I/O interface MTU be greater than wire communication I/O interface MTU, the shared buffer utensil The corresponding size of MTU of being and not being line communication I/O interface.In such an example, which can appoint Selection of land can be configured to have identical binary packet format, be via wire communication but regardless of the one or more data grouping What I/O interface is sent or wireless communication I/O interface was sent.In such an example, if the order is not set by calculating Standby successfully to service, then status code can optionally indicate the type of the mistake occurred when servicing order.It retouches above Any one of example stated can be all combined in any suitable way in each realization.
Another example provide it is a kind of on the computing device for using identical three stage protocol via wire communication The method that both input/output (I/O) interface and wireless communication I/O interface are communicated with host computing device, this method comprises: In Command grouping is received from host computing device during the command phase of three stage protocols, which includes from wire communication I/ The order selected in the command library that O Interface and wireless communication I/O interface are shared;If the order is specified to send one or more The one or more data grouping is then sent to Framework computing during the data phase of three stage protocols and set by data grouping It is standby;If the order is specified to receive one or more data groupings, from host meter during the data phase of three stage protocols It calculates equipment and receives the one or more data grouping;And it is sent out during the state phase of three stage protocols to host computing device Status code is sent, which indicates whether the order is successfully serviced.In such an example, if the order not by It calculates equipment successfully to service, then status code can optionally indicate the type of the mistake occurred when servicing order. In such an example, if the one or more data grouping is sent via wire communication I/O interface, the one or more Data grouping can optionally have a size corresponding with maximum transmission unit (MTU) of wire communication I/O interface, and if The one or more data grouping via wireless communication I/O interface send, then the one or more data grouping with it is wireless The corresponding size of MTU of I/O interface is communicated, the MTU of wireless communication I/O interface is different from the MTU of wire communication I/O interface. In such an example, which optionally can be configured to have identical binary packet format, It is to send or wirelessly communicate I/O interface via wire communication I/O interface to send but regardless of the one or more data grouping 's.Any one of example described above can be all combined in any suitable way in each realization.
It will be understood that configuration described herein and/or mode essence are exemplary, these specific embodiments or show herein Example be not construed as it is restrictive because many variants are possible.Specific routine or method described herein can indicate to appoint One or more of the processing strategie of what quantity.In this way, shown and/or described various movements can be with shown and/or institute State sequence, with other sequences, be performed in parallel, or be omitted.Equally, the order of the above process can change.
The theme of the disclosure includes various processes, system and configuration and other features, function, movement disclosed herein And/or all novelties and non-obvious combinations and sub-portfolio and its any and all equivalent of property.

Claims (20)

1. a kind of calculating equipment, comprising:
Display;
Logical machine;And
Save instruction storage machine, described instruction can by the logical machine execute so as to:
The user interface UI topology file for defining the visual layout of graphic user interface GUI is received, the UI topology file includes Multiple UI elements, every UI element include UI component identifier and UI element descriptor, and the UI component identifier is first by the UI Plain other each UI elements with the UI topology file distinguish and the UI element descriptor is defined via the UI element The formatting property of the information of display;
The GUI is presented according to the UI topology file via display;
The upgating object for specifying one or more UI elements to be altered in the UI topology file is received, for be altered Every UI element, the upgating object includes the UI component identifier of the UI element and comprising will be according to the UI of the UI element Element descriptor is come the update payload of the updated information shown;And
Change GUI via display according to the upgating object.
2. calculating equipment as described in claim 1, which is characterized in that the UI topology file has the readable lattice of binary machine Formula, and the upgating object has binary machine readable format.
3. calculating equipment as described in claim 1, which is characterized in that the UI topology file has flattening tree construction, Described in multiple UI elements sorted in the UI topology file according to parent-child relationship.
4. calculating equipment as described in claim 1, which is characterized in that the UI topology file includes indicating page report below Head: the UI member in the version of the UI topology file, the number of the direct child node of root UI element and the UI topology file The sum of element.
5. as described in claim 1 calculate equipment, which is characterized in that by the attribute that the UI element descriptor defines include with It is one or more of lower: UI element type, memory size, position, color, font style, alignment, transparency and sub- UI The number of element.
6. calculating equipment as described in claim 1, which is characterized in that the storage machine, which also saves, to be executed by the logical machine Instruction to perform the following operation:
For every UI element specified by the upgating object, based on the UI component identifier of the UI element come from the UI cloth The UI attribute of an element is determined in office file.
7. calculating equipment as described in claim 1, which is characterized in that the UI topology file and the upgating object are to pass through It is connected to the network from service and calculates what equipment received.
8. calculating equipment as described in claim 1, which is characterized in that the UI topology file is via in host computing device After what is received from service calculating equipment.
9. a kind of method for calculating the presentation for managing graphic user interface GUI in equipment, which comprises
The user interface UI topology file for defining the visual layout of the GUI, the UI layout are received via digital communication channel File includes multiple UI elements, and every UI element includes UI component identifier and UI element descriptor, the UI component identifier By other each UI elements in the UI element and the UI topology file distinguish and UI element descriptor definition via The attribute for the information that the UI element is shown;
The GUI is presented according to the UI topology file via the display for calculating equipment;
One or more UI elements to be altered in the UI topology file are specified via digital communication channel reception Upgating object, for every UI element to be altered, the upgating object include the UI element UI component identifier and Update payload comprising the updated information to be shown according to the UI element descriptor of the UI element;And
Change the GUI according to the upgating object via the display.
10. method as claimed in claim 9, which is characterized in that the UI topology file has binary machine readable format, And the upgating object has binary machine readable format.
11. method as claimed in claim 9, which is characterized in that the UI topology file has flattening tree construction, wherein institute Multiple UI elements are stated to be sorted in the UI topology file according to parent-child relationship.
12. method as claimed in claim 9, which is characterized in that the UI topology file includes indicating page header below: institute State the version of UI topology file, the number of the direct child node of root UI element and the UI element in the UI topology file Sum.
13. method as claimed in claim 9, which is characterized in that by the attribute that the UI element descriptor defines include following One or more of: UI element type, memory size, position, color, font style, alignment, transparency and sub- UI member The number of element.
14. method as claimed in claim 9, which is characterized in that further comprise:
For every UI element specified by the upgating object, based on the UI component identifier of the UI element come from the UI cloth The UI attribute of an element is determined in office file.
15. method as claimed in claim 9, which is characterized in that the UI topology file and the upgating object are to pass through net Network connection calculates what equipment received from service.
16. method as claimed in claim 9, which is characterized in that the UI topology file is relayed via host computing device Calculate what equipment received from service.
17. a kind of calculating equipment, comprising:
Logical machine;And
Save instruction storage machine, described instruction can by the logical machine execute so as to:
Equipment being calculated to multiple subscribers, subscription to user interface UI topology file being provided, the UI topology file definition can be by The visual layout of the multiple graphic user interface GUI for calculating the display of each of equipment, the UI topology file include Multiple UI elements, every UI element include UI component identifier and UI element descriptor, and the UI component identifier is first by the UI Plain other each UI elements with the UI topology file distinguish and the UI element descriptor is defined via the UI element The attribute of the information of display;
By the UI topology file be sent to the multiple subscriber calculate equipment with according to the UI topology file to show State GUI;
The upgating object for specifying one or more UI elements to be altered in the UI topology file is generated, for be altered Every UI element, the upgating object includes the UI component identifier of the UI element and comprising will be according to the UI of the UI element Element descriptor is come the update payload of the updated information shown;And
It is described to change according to the upgating object that the upgating object is sent to the multiple subscriber's calculating equipment GUI。
18. calculating equipment as claimed in claim 17, which is characterized in that the storage machine, which also saves, to be held by the logical machine Instruction of the row to perform the following operation:
Equipment, which is calculated, from third party receives the information with human readable format;And
The transformation to the information with the human readable format is executed to generate with binary machine readable format It is updated information, the more new information is included in the upgating object.
19. calculating equipment as claimed in claim 17, which is characterized in that the UI topology file has binary machine readable Format, and the upgating object has binary machine readable format.
20. calculating equipment as claimed in claim 17, which is characterized in that the UI topology file and the upgating object via Host computing device relaying is sent to one or more subscribers and calculates equipment.
CN201580045237.4A 2014-08-22 2015-08-20 The long-range management of graphic user interface Active CN106575232B (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462040599P 2014-08-22 2014-08-22
US62/040,599 2014-08-22
US14/583,488 US9626336B2 (en) 2014-08-22 2014-12-26 Remote management of a graphical user interface
US14/583,488 2014-12-26
PCT/US2015/045981 WO2016028949A1 (en) 2014-08-22 2015-08-20 Remote management of a graphical user interface

Publications (2)

Publication Number Publication Date
CN106575232A CN106575232A (en) 2017-04-19
CN106575232B true CN106575232B (en) 2019-11-15

Family

ID=55348437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580045237.4A Active CN106575232B (en) 2014-08-22 2015-08-20 The long-range management of graphic user interface

Country Status (3)

Country Link
US (1) US9626336B2 (en)
CN (1) CN106575232B (en)
WO (1) WO2016028949A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD848458S1 (en) * 2015-08-03 2019-05-14 Google Llc Display screen with animated graphical user interface
USD849027S1 (en) * 2015-08-03 2019-05-21 Google Llc Display screen with animated graphical user interface
US10979431B2 (en) * 2017-10-30 2021-04-13 Dexcom, Inc. Diabetes management partner interface for wireless communication of analyte data
CN108429871A (en) * 2018-03-16 2018-08-21 深圳市恒晨电器有限公司 A kind of transmission method and system of UI images
CN112286621A (en) * 2020-12-30 2021-01-29 智道网联科技(北京)有限公司 Remote interface generation method and device, electronic equipment and medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1680919A (en) * 2004-04-08 2005-10-12 惠普开发有限公司 Dynamic layout system and method for graphical user interfaces
CN1989762A (en) * 2004-02-19 2007-06-27 高通剑桥有限公司 Rendering user interface using actor attributes
CN101247593A (en) * 2008-03-06 2008-08-20 中兴通讯股份有限公司 System and method for configuring mobile phone subscriber interface operation interface
CN102184107A (en) * 2011-05-19 2011-09-14 北京邮电大学 Method and system for combining user interface services
CN102200914A (en) * 2011-06-24 2011-09-28 北京神州泰岳软件股份有限公司 Method and equipment of realizing user interface on mobile terminal
CN102460344A (en) * 2009-06-19 2012-05-16 莫门特美国股份有限公司 Systems and methods for dynamic background user interface(s)
CN102591665A (en) * 2011-12-31 2012-07-18 深圳联友科技有限公司 Method and system for user-defined quick-generation pages

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW494319B (en) 1999-11-29 2002-07-11 Citicorp Developmemt Ct Inc A method and system for generating display screen templates
US6799318B1 (en) 2000-04-24 2004-09-28 Microsoft Corporation Method having multiple interfaces with distinguished functions and commands for providing services to a device through a transport
US7190976B2 (en) 2000-10-02 2007-03-13 Microsoft Corporation Customizing the display of a mobile computing device
US20040015401A1 (en) 2001-02-08 2004-01-22 In Lee Systems and methods for distributing template-based multimedia presentations over a network
US7003726B2 (en) 2001-02-21 2006-02-21 Nanonation Incorporated Computer network having context sensitive and interactive multimedia applications and controls, forming dynamic user interfaces on local computer terminals
US6886046B2 (en) 2001-06-26 2005-04-26 Citrix Systems, Inc. Methods and apparatus for extendible information aggregation and presentation
US8042132B2 (en) 2002-03-15 2011-10-18 Tvworks, Llc System and method for construction, delivery and display of iTV content
US8346803B2 (en) 2003-12-12 2013-01-01 Knapp Investment Company Limited Dynamic generation of target files from template files and tracking of the processing of target files
US7856596B2 (en) 2004-02-17 2010-12-21 Microsoft Corporation Method and system for separation of content and layout definitions in a display description
WO2005116827A1 (en) 2004-05-31 2005-12-08 Stmicroelectronics Pvt. Ltd. A method for remotely upgrading the firmware of a target device using wireless technology
US7827494B1 (en) 2005-04-08 2010-11-02 Adobe Systems Incorporated Layout management using data-descriptive meta language documents
JP4776995B2 (en) 2005-07-14 2011-09-21 キヤノン株式会社 Computer apparatus and control method and program thereof
US8355804B2 (en) 2005-09-15 2013-01-15 Honda Motor Co., Ltd. Interface for sensor query and control
KR100736090B1 (en) 2005-09-28 2007-07-06 삼성전자주식회사 Method and apparatus for outputting UI event of 3rd party device in home network
US9460064B2 (en) 2006-05-18 2016-10-04 Oracle International Corporation Efficient piece-wise updates of binary encoded XML data
EP2223211A4 (en) 2007-12-17 2011-08-17 Nokia Corp Accessory configuration and management
KR101395058B1 (en) 2008-01-17 2014-05-13 삼성전자주식회사 Method and apparatus for outputting UI event of 3rdparty device in home network
US20110098583A1 (en) 2009-09-15 2011-04-28 Texas Instruments Incorporated Heart monitors and processes with accelerometer motion artifact cancellation, and other electronic systems
KR101612845B1 (en) 2009-11-12 2016-04-15 삼성전자주식회사 Method and apparatus for providing remote UI service
US20110319056A1 (en) 2010-06-29 2011-12-29 Enterproid Hk Ltd Remote access to a mobile device
US8504629B2 (en) 2010-07-01 2013-08-06 Plantronics, Inc. Connection device and protocol
US8990704B2 (en) 2011-03-04 2015-03-24 Sony Corporation Remote user interface media adapter in network bridge
US8521848B2 (en) 2011-06-28 2013-08-27 Microsoft Corporation Device sensor and actuation for web pages
US8189014B1 (en) 2011-08-16 2012-05-29 Google Inc. Generating a screen layout for a BIOS display
CA2792181C (en) 2011-10-18 2017-07-25 Research In Motion Limited Method of distributed layout negotiation in a user interface framework
CN103186655A (en) 2011-12-31 2013-07-03 北大方正集团有限公司 Processing method and device for layout file
WO2013169759A2 (en) 2012-05-07 2013-11-14 Citrix Systems, Inc. Speech recognition support for remote applications and desktops

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1989762A (en) * 2004-02-19 2007-06-27 高通剑桥有限公司 Rendering user interface using actor attributes
CN1680919A (en) * 2004-04-08 2005-10-12 惠普开发有限公司 Dynamic layout system and method for graphical user interfaces
CN101247593A (en) * 2008-03-06 2008-08-20 中兴通讯股份有限公司 System and method for configuring mobile phone subscriber interface operation interface
CN102460344A (en) * 2009-06-19 2012-05-16 莫门特美国股份有限公司 Systems and methods for dynamic background user interface(s)
CN102184107A (en) * 2011-05-19 2011-09-14 北京邮电大学 Method and system for combining user interface services
CN102200914A (en) * 2011-06-24 2011-09-28 北京神州泰岳软件股份有限公司 Method and equipment of realizing user interface on mobile terminal
CN102591665A (en) * 2011-12-31 2012-07-18 深圳联友科技有限公司 Method and system for user-defined quick-generation pages

Also Published As

Publication number Publication date
CN106575232A (en) 2017-04-19
US9626336B2 (en) 2017-04-18
WO2016028949A1 (en) 2016-02-25
US20160055130A1 (en) 2016-02-25

Similar Documents

Publication Publication Date Title
CN106716294A (en) Active and passive chained subscriptions
CN106575232B (en) The long-range management of graphic user interface
Fernández-Caramés et al. Towards the Internet of smart clothing: A review on IoT wearables and garments for creating intelligent connected e-textiles
CN106537849B (en) Device and method for controlling internet of things equipment
US20190171405A1 (en) System for Handling Media for Wearable Display Devices
CN109643516A (en) It handles the method for image and supports the electronic equipment of this method
CN106605208A (en) Client device and host device subscriptions
Kosmopoulos et al. A survey on developing personalized content services in museums
CN106794795A (en) Can installing type display device
CN108696631A (en) Method and its electronic equipment for providing content corresponding with accessory device
US20150271557A1 (en) Multimedia television system for interactive social media and social network
CN108702559A (en) The wireless device of the wearable type of ear and its system of support
Raad Fundamentals of IoT and wearable technology design
CN107408120A (en) Electronic equipment and its method for displaying image
CN110503959A (en) Voice recognition data distribution method, device, computer equipment and storage medium
US20180000169A1 (en) Garment for providing display function
CN108351743A (en) Content display method and electronic equipment for realizing this method
CN109804618A (en) Electronic equipment for displaying images and computer readable recording medium
Delabrida Silva et al. Examining developments and applications of wearable devices in modern society
US20170212769A1 (en) Wearable clothing accessory incorporating an open computing platform
US10200443B2 (en) Remote user interface event notification
CN109951373A (en) A kind of document sending method and terminal device
WO2022033432A1 (en) Content recommendation method, electronic device and server
CN106664306A (en) Unified command protocol for different communication interfaces
US20230363469A1 (en) Electronically customizable articles

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant