The invention relates generally to software activation and, more particularly, to software activation in a mobile terminal.
Communication devices, such as mobile telephones, have become increasingly versatile. For example, mobile telephones often include software applications or programs that enable users to access their email accounts, play music and games, or perform other functions, such as obtain directions to a place of interest, obtain sports scores, or obtain weather related information. Such applications have made communication devices increasingly important to users.
Frequently, these applications may either be installed by the manufacturer of the mobile telephone or, in some situations, be downloaded by the end-user to the mobile telephone. The creator of these applications may desire some degree of control of the applications. For example, in the situation in which mobile telephone is manufactured to include the application (i.e., loaded on the mobile telephone prior to sale), the application creator may wish to know how many copies of the application have been activated by the end-users of the mobile telephone.
According to one aspect, a mobile terminal includes a memory including a software application for use at the mobile terminal and logic. The logic is configured to receive an indication that an end-user of the mobile terminal is attempting to use the software application. The logic is further configured to activate the software application for use by the end-user.
Additionally, the registration information includes an identification of the software application being activated and is used to count the number of activations relating to the software application.
Additionally, the logic may be further configured to gather the registration information from the end-user;
Additionally, the registration entity may include one or more of a manufacturer of the mobile terminal, an application provider that authored the software, or a service provider for the mobile terminal.
Additionally, the registration information may include one or more of a name, address, or a telephone number of the mobile terminal.
Additionally, the registration information may include a unique identification number of the mobile terminal or an account number of the user associated with the mobile terminal.
Additionally, the registration information includes payment information for the software application.
Additionally, transmitting the registration information includes transmitting the registration information as an email message or an SMS message.
Additionally, the logic of the mobile terminal receives a license key at the mobile terminal in response to the transmitting the registration information. The activation of the software application for use by the end-user is performed using the license key to activate the software.
Additionally, wherein the software application is stored in the memory of the mobile terminal. The software application may also be downloaded to the memory of the mobile terminal.
In another aspect, a method is disclosed. The method is for activating software in a mobile terminal. The method includes receiving an indication that an end-user of the mobile terminal is attempting to use the software; gathering information from the end-user for registering the software; transmitting the registration information using the mobile terminal to one or more of a manufacturer of the mobile terminal, an application provider associated with the software, or a service provider for the mobile terminal; and activating the software for use by the end-user.
Additionally, the registration information may include one or more of a name, address, or a telephone number of the mobile terminal.
Additionally, the registration information may include a unique identification number of the mobile terminal or an account number of the user associated with the mobile terminal.
The registration information may also include payment information for the software.
Additionally, transmitting the registration information includes transmitting the registration information as an email message or an SMS message.
Additionally, the method includes receiving a license key at the mobile terminal in response to the transmitting of the registration information.
Additionally, activating the software for use by the end-user is performed using the license key to activate the software.
In another aspect, a method of activating software in a mobile terminal is disclosed. The method includes determining location information or language preference information for an end-user of the mobile terminal; selecting a software license agreement based on the determined information; presenting the selected software license agreement to the end-user; and activating the software when the end-user accepts the presented software license agreement.
Additionally, the location information is determined in response to the end-user attempting to use the software.
Additionally, the determined location information includes at least one of a city, zip code, or country of residence.
Additionally, the method further includes receiving an indication from the end-user relating to whether the end-user accepts the software license agreement; and transmitting the indication to one or more of a manufacturer of the mobile terminal, an application provider that authored the software, or a service provider for the mobile terminal.
Additionally, the software is pre-stored in the mobile terminal.
Additionally, the software is downloaded to the mobile terminal by an end-user.
In another aspect, a device includes means for determining location information for an end-user of a mobile terminal; means for selecting a software license agreement based on the location information; means for presenting the selected software license agreement to an end-user of the device; and means for activating the software when the end-user accepts the presented software license agreement.
In yet another aspect, a mobile device is provided. The mobile device includes a memory storing a software application that requires activation before an end-user is provided with full use privileges for the software application, the activation being performed via an activation process performed using an interface specified by a designer of the software application using an application programming interface (API) provided by a manufacturer of the mobile terminal. The mobile device further includes logic configured to provide wireless communication to an end-user of the mobile device, the activation process including communicating with a registration entity via the logic.
Additionally, the registration entity includes one or more of a manufacturer of the mobile terminal, an application provider that authored the software application, or a service provider for the mobile terminal.
Additionally, the communication during the activation process includes an email message or an SMS message.
Other features and advantages of the invention will become readily apparent to those skilled in this art from the following detailed description. The embodiments shown and described provide illustration of the best mode contemplated for carrying out the invention. The invention is capable of modifications in various obvious respects, all without departing from the invention. Accordingly, the drawings are to be regarded as illustrative in nature, and not as restrictive.
Reference is made to the attached drawings, wherein elements having the same reference number designation may represent like elements throughout.
The following detailed description of the invention refers to the accompanying drawings. The same reference numbers in different drawings identify the same or similar elements. Also, the following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims and equivalents.
The invention is described herein in the context of a mobile terminal. As used herein, the term “mobile terminal” may include a cellular radiotelephone with or without a multi-line display; a Personal Communications System (PCS) terminal that may combine a cellular radiotelephone with data processing, facsimile and data communications capabilities; a personal digital assistant (PDA) that can include a radiotelephone, pager, Internet/Intranet access, Web browser, organizer, calendar and/or a global positioning system (GPS) receiver; and a conventional laptop and/or palmtop receiver or other appliance that includes a radiotelephone transceiver.
Network 140 may include one or more networks including a cellular network, a satellite network, the Internet, a telephone network, such as the Public Switched Telephone Network (PSTN), a metropolitan area network (MAN), a wide area network (WAN), a local area network (LAN) or another type of network. Mobile terminals 110, 120 and 130 may communicate with each other over network 140 via wired, wireless or optical connections.
In an exemplary implementation, network 140 includes a cellular network that uses components for transmitting data to and from mobile terminals 110, 120 and 130. Such components may include base station antennas (not shown) that transmit and receive data from mobile terminals within their vicinity. Such components may also include base stations (not shown) that connect to the base station antennas and communicate with other devices, such as switches and routers (not shown) in accordance with known techniques.
Mobile terminal 110 may include one or more radio frequency (RF) antennas 210, transceiver 220, modulator/demodulator 230, encoder/decoder 240, processing logic 250, memory 260, input device 270 and output device 280. These components may be connected via one or more buses (not shown). In addition, mobile terminal 110 may include one or more power supplies (not shown). One skilled in the art would recognize that the mobile terminal 110 may be configured in a number of other ways and may include other or different elements.
RF antenna 210 may include one or more antennas capable of transmitting and receiving RF signals. In one implementation, RF antenna 210 may include one or more directional and/or omni-directional antennas. Transceiver 220 may include components for transmitting and receiving information via RF antenna 210. In an alternative implementation, transceiver 220 may take the form of separate transmitter and receiver components, instead of being implemented as a single component. Modulator/demodulator 230 may include components that combine data signals with carrier signals and extract data signals from carrier signals. Modulator/demodulator 230 may include components that convert analog signals to digital signals, and vice versa, for communicating with other devices in mobile terminal 110.
Encoder/decoder 240 may include circuitry for encoding a digital input to be transmitted and for decoding a received encoded input. Processing logic 250 may include a processor, microprocessor, an application specific integrated circuit (ASIC), field programmable gate array (FPGA) or the like. Processing logic 250 may execute software programs or data structures to control operation of mobile terminal 110. Memory 260 may include a random access memory (RAM) or another type of dynamic storage device that stores information and instructions for execution by processing logic 250; a read only memory (ROM) or another type of static storage device that stores static information and instructions for use by processing logic 250; and/or some other type of magnetic or optical recording medium and its corresponding drive. Instructions used by processing logic 250 may also, or alternatively, be stored in another type of computer-readable medium accessible by processing logic 250. A computer-readable medium may include one or more memory devices and/or carrier waves.
Input device 270 may include any mechanism that permits an operator to input information to mobile terminal 110, such as a microphone, a keyboard, a keypad, a mouse, a pen, voice recognition and/or biometric mechanisms, etc. Output device 280 may include any mechanism that outputs information to the operator, including a display, a speaker, a printer, etc. Output device 280 may also include a vibrator mechanism that causes mobile terminal 110 to vibrate.
Mobile terminal 110, consistent with the invention, may perform processing associated with, for example, operation of the core features of mobile terminal 110 or operation of additional applications associated with mobile terminal 110, such as software applications provided by third party software providers. Mobile terminal 110 may perform these operations in response to processing logic 250 executing sequences of instructions contained in a computer-readable medium, such as memory 260. It should be understood that a computer-readable medium may include one or more memory devices and/or carrier waves. Execution of sequences of instructions contained in memory 260 causes processing logic 250 to perform acts that will be described hereafter. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement processes consistent with the invention. Thus, implementations consistent with the invention are not limited to any specific combination of hardware circuitry and software.
Wireless service provider 306 may provide wireless communication services to mobile terminal 110 and to end-user 320. To this end, wireless service provider 306 may operate a network of wireless and wired devices designed to provide connectivity to mobile terminal 110. In some situations, wireless service provider 306 may not necessarily own or operate its own network. For example, a category of mobile network operators that is emerging in some markets is the so-called Mobile Virtual Network Operator (MVNO). MVNOs typically lease a physical network from another wireless service provider.
Application provider 304 may be a third party that designs software applications for mobile terminals 110. Although shown as a single element in
The software created by application provider 304 may be distributed to end-users 320 (act 404). The software may, for example, be distributed with the mobile terminals via a partnership with mobile terminal manufacturer 302 or downloaded and installed on demand by the end-users (act 404).
As shown in
Assume that end-user 320 is interested in application A 510. In some implementations, application A 510 may be designed such that the end-user can initially view or preview the software before actually registering or activating it (act 406). For example, assume that application A 510 is a “push” email solution. That is, application A 510 may include software that periodically downloads, over network 140, email messages sent to the user, whenever mobile terminal 500 is turned on. The user may then view the downloaded messages on-demand, and potentially also respond via one or more new messages.
Interface 600 may be a preview version of the “push” email application, and as such, may include an activation graphical selection button 620. The preview version of the application may, for example, be limited in its functionality or limited to being used for only a specified time limit. This may help the user determine whether he/she would like to activate the application.
Referring back to
In response to the user's selection in act 408, the application may communicate with one or more of mobile terminal manufacturer 302, application provider 304, or wireless service provider 306 to, for example, activate or register the application (act 410). The activation/registration performed in act 410, can take a number of forms. For example, the activation/registration may provide for the acceptance of a license agreement, may allow application provider 304 to count the number of users actually using their applications without providing any other information about the mobile terminal or the user, or may provide for a more advanced registration process in which a license key is received by mobile terminal 500. Examples of act 410 consistent with aspects of the invention are described in more detail below with reference to
The process of
Based on the location information received in act 702, the mobile terminal may select and present the legally correct EULA to the user (act 704). For example, the mobile terminal may store a separate EULA for each possible country and present the EULA appropriate for the country for to the user. Additionally, the mobile terminal may present the EULA to the user in the language that is preferred by the user. For example, if the user has previously indicated a language preference, such as when first activating a phone, the EULA may be presented in that language.
The user may accept or reject the displayed EULA by, for example, pressing an appropriate key on the mobile terminal (act 706). The users decision may be transmitted to one or more of mobile terminal manufacturer 302, application provider 304, or wireless service provider 306 (also referred to as a registration entity herein) (act 708). In some implementations, the end-users decision may only be transmitted when the user accepts the EULA. In this manner, the number of users that accept the EULA and are therefore permitted to use the application may be reported (e.g., counted or tracked) by one or more of mobile terminal manufacturer 302, application provider 304, or wireless service provider 306. This may allow an entity that owns or controls the software application to obtain statistics associated with the software application and may allow the provider to make changes/additions to the software based on use of the software application. The user's decision may be transmitted as, for example, an email message or a text message using the well known Short Message Service (SMS) protocol. If the user has accepted the EULA, the mobile terminal may activate the application (act 710).
The information gathered in act 802 may be transmitted to the registration entity (i.e., one or more of mobile terminal manufacturer 302, application provider 304, or wireless service provider 306) (act 804). This information may be transmitted as, for example, an email message or a text message using SMS. The mobile terminal may then activate the software application (act 806), allowing the user full use of the application. In some implementations, the software application may be automatically activated when the user first begins to use it, the message sent to the registration entity may simply identify the software application that is being activated. This allows the registration entity to count the number of activated software applications.
As described above, the activation or use of software at a remote device may be controlled. The described control techniques allow for, for example, the number of active users of a software application to be counted, appropriate license agreements to be presented, or software applications to be authenticated and activated. The techniques also simplify the process for activating an application via easy-to-use interfaces, such as menu/display driven interfaces.
An activation and reporting mechanism is described herein that allows application software for mobile terminals to be activated. The activation process may be customized by the application developer using an API provided by the mobile terminal manufacturer. Advantageously, from the standpoint of the application developer, the activation/reporting process can be customized based on a marketing theme or other desires of the application developer.
The foregoing description of the embodiments of the invention provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention.
Further, while series of acts have been described with respect to
It will also be apparent to one of ordinary skill in the art that aspects of the invention, as described above, may be implemented in cellular communication devices/systems, methods, and/or computer program products. Accordingly, the present invention may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.). Furthermore, the present invention may take the form of a computer program product on a computer-usable or computer-readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system. The actual software code or specialized control hardware used to implement aspects consistent with the principles of the invention is not limiting of the invention. Thus, the operation and behavior of the aspects were described without reference to the specific software code—it being understood that one of ordinary skill in the art would be able to design software and control hardware to implement the aspects based on the description herein.
Further, certain portions of the invention may be implemented as “logic” that performs one or more functions. This logic may include hardware, such as an application specific integrated circuit or a field programmable gate array, software, or a combination of hardware and software.
It should be emphasized that the term “comprises/comprising” when used in this specification is taken to specify the presence of stated features, integers, steps, or components, but does not preclude the presence or addition of one or more other features, integers, steps, components, or groups thereof.
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. Further, the phrase “based on,” as used herein is intended to mean “based, at least in part, on” unless explicitly stated otherwise.
The scope of the invention is defined by the claims and their equivalents.