This application is based on and claims priority to Chinese Patent Application Serial No. CN 201510542313.4, filed with the State Intellectual Property Office of P. R. China on Aug. 28, 2015, the entire content of which is incorporated herein by reference.
The present disclosure relates to smart home technology, and more particularly to a method and a device for installing a plug-in of a smart device.
Smart home refers to an ecosystem that provides efficient control and management of residential facilities and environment, and family affairs. Smart home includes but is not limited to various smart devices, home appliances, and sensors integrated internally and connected with external devices and service agencies using comprehensive wiring, network communication, security, automation, and multimedia technologies. Smart home offers improved safety, convenience, comfort, energy efficiency, and artistry to residents. Smart home appliances and sensors (herein generally referred to as “home devices”) may be controlled by a user via a central management platform or application (app) installed on a mobile device such as a mobile phone. The control app manages each individual home device. The management of software component of each smart home device in the central control app may be burdensome because (1) there may be numerous home devices to be managed, (2) each of these devices may be provided with periodically updated control software by their manufacturers, and (3) home devices may be replaced when they become outdated or simply fail. Smart control units of home devices, appliances in particular, may become outdated easily because home appliances typically have lifetimes on the order of decades yet control units installed in them may become incompatible with new technological advancement within a couple years.
In view of the above, the present disclosure provides methods and devices for installing a plug-in of home devices in a smart mobile device. This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
In one embodiment, a method for installing a plurality of plug-ins each for a plurality of smart home devices in a mobile terminal is disclosed. The method includes receiving a selection instruction for selecting a smart device; determining whether a plug-in for the smart device was installed previously; sending a plug-in acquiring request to a server when the plug-in for the smart device was not installed previously, wherein the plug-in acquiring request comprises an identifier of the smart device; receiving a plug-in installation package for the plug-in sent by the server according to the plug-in acquiring request; and running the plug-in installation package and installing the plug-in in an application, wherein the application is configured to control the plurality of smart device each via one of the plurality of plug-ins.
In another embodiment, a device for installing a plurality of plug-ins each for one of a plurality of smart devices is disclosed. The device includes, comprising processor; and a memory, configured to store instructions executable by the processor; wherein the processor is configured to receive a selection instruction for selecting a smart device, determine whether a plug-in for the smart device was installed previously, send a plug-in acquiring request to a server when the plug-in of the smart device was not installed previously, wherein the plug-in acquiring request comprises an identifier of the smart device, receive a plug-in installation package for the plug-in sent by the server according to the plug-in acquiring request, and run the plug-in installation package and install the plug-in in an application, wherein the application is configured to control the plurality of smart devices each via one of the plurality of plug-ins.
In yet another embodiment, a non-transitory computer-readable storage medium is disclosed. The Computer-readable storage medium has stored therein instructions that, when executed by a processor of a mobile terminal, cause the mobile terminal to install a plurality of plugins each for one of a plurality of smart devices by receiving a selection instruction for selecting a smart device; determining whether a plug-in for the smart device was installed previously; sending a plug-in acquiring request to a server when the plug-in of the smart device was not installed previously, wherein the plug-in acquiring request comprises an identifier of the smart device; receiving a plug-in installation package for the pug-in sent by the server according to the plug-in acquiring request; and running the plug-in installation package and installing the plug-in in an application, wherein the application is configured to control the plurality of smart devices each via one of the plurality of plug-ins.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. The following description refers to the accompanying drawings in which the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations set forth in the following description of exemplary embodiments do not represent all implementations consistent with the invention. Instead, they are merely examples of apparatuses and methods consistent with aspects related to the invention as recited in the appended claims.
The terms used herein are merely for describing a particular embodiment, rather than limiting the present disclosure. As used in the present disclosure and the appended claims, terms in singular forms such as “a”, “said” and “the” are intended to also include plural forms, unless explicitly dictated otherwise. It should also be understood that the term “and/or” used herein means any one or any possible combination of one or more associated listed items.
It should be understood that, although it may describe an element with a term first, second, or third, etc., the element is not limited by these terms. These terms are merely for distinguishing among elements of the same kind. For example, without departing from the scope of the present disclosure, a first element can also be referred to as a second element. Similarly, a second element can also be referred to as a first element. Depending on the context, a term “if” as used herein can be interpreted as “when”, “where” or “in response to”.
By way of introduction, the present disclosure describes methods and devices that utilize a centralized computer manager to control various smart home devices. For user convenience, the central manager may be embodied as a controller application (app) installed in a mobile device. Rather than individually installing control software for each smart home device, the user may control the various smart home devices via plug-ins to the central controller app. Each plug-in may comprise software components providing a user interface and a control interface that is responsible for communicating user instructions to the corresponding smart home device. The plug-ins may be managed by a single server or by a plurality of application servers each corresponding to a particular smart home device. The installation, removal, and upgrade of the plug-ins are automatically managed by the controller app in communication with the servers. The management of smart home devices is thus streamlined and the size of the control software may be prevented from growing in an uncontrolled fashion, saving storage space, improving computing speed, and reducing power consumption of the mobile device.
The term “mobile terminal” may hereinafter be interchangeably referred to as “mobile device”, “terminal”, “terminal device”, “smart phone”, “smart mobile phone”, “mobile phone” and the like. The term “plug-in” refers to a collection of software components that may be installed in a mobile terminal and act as an intermediate of communication between the user, the mobile terminal, and a corresponding home device. A plug-in may include a user operation interface for receiving user instructions and a control interface in communication with a corresponding smart home device for the user to manage the corresponding smart home device from the mobile terminal. The term smart home device generally refers to an intelligent home device or appliance and may be alternatively referred to as home device.
It should be noted that, the scenario shown in
Thus, in embodiments of the present disclosure, the control app in the terminal is configured to control each smart device via a plug-in for each smart device rather than pre-installed software components. Each plug-in comprises components that provide a control interface to the user. If the plug-in of a particular smart device is not installed when the user desires to control that particular smart home device, the plug-in acquiring request is sent to the server (either a specific application server of the smart home device, or a single server for all smart home devices), and the plug-in installation package sent by the server according to the plug-in acquiring request is received by the control app. The plug-in installation package is then run and the plug-in is installed in the application. The particular smart home device is then controlled via the plug-in. Since the number of plug-ins installed in the application may be controlled to increase or decrease according to smart devices controlled by the application, the size of the application controlling all the smart devices is effectively limited, the operation speed of the terminal is increased, and the user experience is improved.
After the terminal determines that the plug-in for the smart home device to be controlled was not installed and in step S22, a plug-in acquiring request is sent to a server. In the present embodiment, the plug-in acquiring request includes an identifier of the smart device. In an implementation of the present embodiment, the method may further include the following operations. If the plug-in has been installed but a version of the plug-in is not the latest version, the plug-in may be considered not installed and the plug-in acquiring request is sent to the server. As the number of smart devices increases, plug-ins of the smart devices are developed and upgraded accordingly, and a plug-in downloaded from the server may not originally exist in the terminal. In the meanwhile, a smart home device will be upgraded, and the plug-in of the smart home device will be updated accordingly. Further, the plug-ins downloaded by the terminal from the server previously may not be the latest version.
In step S23, a plug-in installation package, such as an APK (Android Package), sent by the server according to the plug-in acquiring request is received and the package is configured to install the plug-in of the smart device in the application. In step S24, the plug-in installation package is run and the plug-in is installed in an application. Thus, in the embodiment of
Thus, in the embodiment of
Thus, in embodiments of the present disclosure, a plug-in installation package of a smart home device corresponding to an identifier of the smart device is sent by the server according to the plug-in acquiring request, in which the plug-in of the smart device includes a user operation interface of the smart device and a control interface of the smart device. The application is configured to control the smart device via the plug-in. Since plug-ins installed in the application may be controlled to increase or decrease according to smart devices controlled by the application, the size of the application controlling all the smart devices is effectively kept from becoming larger and larger. The operation speed of the terminal is thus increased, providing improved user experience.
In step S42, the plug-in installation package received is saved and published in the server for distribution. In one implementation, the plug-in installation package saved and published by the server may be sent by one particular terminal (the developer may upload and publish the package via a specific terminal device), and all terminals may download various kinds of plug-in installation packages via the server, thus realizing a control on multiple smart devices developed by the same developer by different terminal device. In this implementation, to ensure that the publication of plug-ins is by authorized developer, signature information may be incorporated into the plug-in installation package and the server checks the signature information in the plug-in installation package upon receiving it before publishing the received package. The server may not publish the plug-in installation package until it passes signature checking. The signature may be a digital signature known in the art. A plug-in package received by the server may be a plug-in installation package which has not been previously saved in the server or may be an updated version of the plug-in installation package saved previously in the server.
In step S43, a plug-in acquiring request is received by the server from a terminal device. The plug-in acquiring request includes an identifier of the smart device. In step S44, a plug-in installation package of the smart home device corresponding to the identifier of the smart home device is sent by the server to the terminal device according to the plug-in acquiring request. In the present disclosure, the plug-in installation package is configured to install a plug-in of the smart home device in an application. The application is configured to control the smart home device via the plug-in. The plug-in of the smart device includes a user operation interface of the smart device and a control interface of the smart device.
Thus, in embodiment of
In embodiments of the present disclosure, if the plug-in of the smart device is not installed, the plug-in acquiring request is sent to the server, the plug-in installation package sent by the server according to the plug-in acquiring request is received, the plug-in installation package is run and the plug-in is installed in the application, in which the application is configured to control the smart device via the plug-in. Since plug-ins installed in the application may be controlled to increase or decrease according to smart devices controlled by the application, the size of the application controlling all the smart devices is effectively avoided from becoming larger and larger, the operation speed of the terminal is increased, and the user experience is good.
In another implementation of the present embodiment, the instruction receiving module 601 may include an obtaining sub-module 601a, an output sub-module 601b, and a receiving sub-module 601c. The obtaining sub-module 601a is configured to obtain information of a plurality of smart devices sent by the server. The output sub-module 601b is configured to output the information of the plurality of smart devices on a smart device selection interface. The receiving sub-module 601c is configured to receive the selection instruction input via the smart device selection interface. In yet another implementation of the present embodiment, the device may further include a jumping module 605. The jumping module 605 is configured to jump to a user operation interface of the smart device after the plug-in is installed in the application configured to control smart devices. In yet another implementation of the present embodiment, the sending module 602 may be further configured to send the plug-in acquiring request to the server if the plug-in has been installed but a version of the plug-in is not the latest version.
In embodiments of the present disclosure, if the plug-in of the smart device is not installed, the plug-in acquiring request is sent to the server, the plug-in installation package sent by the server according to the plug-in acquiring request is received, the plug-in installation package is run and the plug-in is installed in the application, in which the application is configured to control the smart device via the plug-in. Since plug-ins installed in the application may be controlled to increase or decrease according to smart devices controlled by the application, the size of the application controlling all the smart devices is effectively avoided from becoming larger and larger, the operation speed of the terminal is increased, improving user experience.
In embodiments of the present disclosure, a plug-in installation package of the smart device corresponding to the identifier of the smart device is sent according to the plug-in acquiring request, in which the plug-in installation package is configured to install the plug-in of the smart device in the application, and the application is configured to control the smart device via the plug-in. Since plug-ins installed in the application may be controlled to increase or decrease according to smart devices controlled by the application, the size of the application controlling all the smart devices is effectively avoided from becoming larger and larger, the operation speed of the terminal is increased, improving user experience.
In embodiments of the present disclosure, a plug-in installation package of the smart device corresponding to the identifier of the smart device is sent according to the plug-in acquiring request, in which the plug-in installation package is configured to install the plug-in of the smart device in an application, and the application is configured to control the smart device via the plug-in. Since plug-ins installed in the application may be controlled to increase or decrease according to smart devices controlled by the application, the size of the application controlling all the smart devices is effectively limited, the operation speed of the terminal is increased, improving user experience.
With respect to the devices in the above embodiments, the specific operation modes of individual modules therein have been described in detail in the embodiments regarding the method, which will not be elaborated herein.
Referring to
The processing component 902 controls overall operations of the device 900, such as the operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing component 902 may include one or more processors 920 to execute instructions to perform all or part of the steps in the above described methods. Moreover, the processing component 902 may include one or more modules which facilitate the interaction between the processing component 902 and other components. For instance, the processing component 902 may include a multimedia module to facilitate the interaction between the multimedia component 908 and the processing component 902.
The memory 904 is configured to store various types of data to support the operation of the device 900. Examples of such data include instructions for any applications or methods operated on the device 900, contact data, phonebook data, messages, pictures, video, etc. The memory 904 may be implemented using any type of volatile or non-volatile memory devices, or a combination thereof, such as a static random access memory (SRAM), an electrically erasable programmable read-only memory (EEPROM), an erasable programmable read-only memory (EPROM), a programmable read-only memory (PROM), a read-only memory (ROM), a magnetic memory, a flash memory, a magnetic or optical disk.
The power component 906 provides power to various components of the device 900. The power component 906 may include a power management system, one or more power sources, and any other components associated with the generation, management, and distribution of power in the device 900.
The multimedia component 908 includes a display screen providing an output interface between the device 900 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes the touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and other gestures on the touch panel. The touch sensors may not only sense a boundary of a touch or swipe action, but also sense a duration time and a pressure associated with the touch or swipe action. In some embodiments, the multimedia component 908 includes a front camera and/or a rear camera. The front camera and the rear camera may receive external multimedia data while the device 900 is in an operation mode, such as a photographing mode or a video mode. Each of the front camera and the rear camera may be a fixed optical lens system or have focus and optical zoom capability.
The audio component 910 is configured to output and/or input audio signals. For example, the audio component 910 includes a microphone (MIC) configured to receive an external audio signal when the intelligent device 900 is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal may be further stored in the memory 904 or transmitted via the communication component 916. In some embodiments, the audio component 910 further includes a speaker to output audio signals.
The I/O interface 912 provides an interface for the processing component 902 and peripheral interface modules, such as a keyboard, a click wheel, buttons, and the like. The buttons may include, but are not limited to, a home button, a volume button, a starting button, and a locking button.
The sensor component 914 includes one or more sensors to provide status assessments of various aspects of the device 900. For instance, the sensor component 914 may detect an open/closed status of the device 900 and relative positioning of components (e.g. the display and the keypad of the device 900). The sensor component 914 may also detect a change in position of the device 900 or of a component in the device 900, a presence or absence of user contact with the device 900, an orientation or an acceleration/deceleration of the device 900, and a change in temperature of the device 900. The sensor component 914 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor component 914 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor component 914 may also include an accelerometer sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component 916 is configured to facilitate wired or wireless communication between the device 900 and other devices. The device 900 can access a wireless network based on a communication standard, such as Wi-Fi, 2G, 3G, LTE or 4G cellular technologies, or a combination thereof. In one exemplary embodiment, the communication component 916 receives a broadcast signal or broadcast associated information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, the communication component 916 further includes a near field communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on a radio frequency identification (RFID) technology, an infrared data association (IrDA) technology, an ultra-wideband (UWB) technology, a Bluetooth (BT) technology, and other technologies.
In exemplary embodiments, the device 900 may be implemented with one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, micro-controllers, microprocessors, or other electronic components, for performing the above described methods.
In exemplary embodiments, there is also provided a non-transitory computer readable storage medium including instructions, such as the memory 904 including instructions. The above instructions are executable by the processor 920 in the device 900, for performing the above-described methods. For example, the non-transitory computer-readable storage medium may be a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disc, an optical data storage device, and the like.
A non-transitory computer-readable storage medium having stored therein instructions that, when executed by a processor of a mobile device, causes the mobile device to perform a method for installing a plug-in of a smart device described above.
The device 1900 may further include a power component 1926 configured to execute power management for the device 1900, a wired or wireless network interface 1950 configured to connect the device 1900 to a network, and an Input/Output (I/O) interface 1958. The device 1900 may operate via an operation system stored in the memory 1932, in which the operation system may be, for example, a Windows Server™, a Mac OS X™, a Unix™, a Linux™, a FreeBSD™ or similar operation systems.
A non-transitory computer-readable storage medium having stored therein instructions that, when executed by a processor of a mobile device, causes the mobile device to perform a method for installing a plug-in of a smart device described above.
Each module or unit discussed above for
The illustrations of the embodiments described herein are intended to provide a general understanding of the structure of the various embodiments. The illustrations are not intended to serve as a complete description of all of the elements and features of apparatus and systems that utilize the structures or methods described herein. Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the embodiments disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following the general principles thereof and including such departures from the present disclosure as come within known or customary practice in the art. It is intended that the specification and examples are considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims in addition to the disclosure
It will be appreciated that the present invention is not limited to the exact construction that has been described above and illustrated in the accompanying drawings, and that various modifications and changes can be made without departing form the scope thereof. It is intended that the scope of the invention only be limited by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
201510542313.4 | Aug 2015 | CN | national |