WO2007053521A1 - Method and apparatus for handset customizing - Google Patents

Method and apparatus for handset customizing Download PDF

Info

Publication number
WO2007053521A1
WO2007053521A1 PCT/US2006/042230 US2006042230W WO2007053521A1 WO 2007053521 A1 WO2007053521 A1 WO 2007053521A1 US 2006042230 W US2006042230 W US 2006042230W WO 2007053521 A1 WO2007053521 A1 WO 2007053521A1
Authority
WO
WIPO (PCT)
Prior art keywords
handset
software
customization
user
content
Prior art date
Application number
PCT/US2006/042230
Other languages
French (fr)
Inventor
Manuel Roman
Mehesh Kallahalla
Dong Zhou
Original Assignee
Ntt Docomo, Inc.
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 Ntt Docomo, Inc. filed Critical Ntt Docomo, Inc.
Publication of WO2007053521A1 publication Critical patent/WO2007053521A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/64Retargetable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Abstract

A method and apparatus is disclosed herein for handset customization. In one embodiment, the handset comprises a control unit and a memory coupled to the control unit to store a software image which, when executed by the control unit, selects software for the handset based on end user input.

Description

METHOD AND APPARATUS FOR HANDSET CUSTOMIZING
PRIORITY
[0001] The present patent application claims priority to and incorporates by reference the corresponding provisional patent application serial no. 60/731,519, titled, "Method and Apparatus for Handset Customizing," filed on October 28, 2005.
FIELD OF THE INVENTION
[0002] The present invention relates to the field of mobile communications; more particularly, the present invention relates to the customization of handsets used for mobile communication.
BACKGROUND OF THE INVENTION
[0003] Currently, handset manufacturers and carriers choose the default functionality they provide to customers for each of their handsets. Typically, this is one comprehensive application suite that covers the usage of all population groups, with different hardware devices sometimes having different suites. This situation is not optimal for either the carrier or the customer.
[0004] The situation is not appropriate from the carriers' perspective because they are responsible for maintaining multiple default software images for different devices and different population groups. This increases the complexity and cost of software maintenance. This model also restricts the carriers' ability to target different customer groups with the same device. In addition, this can directly increase the cost of software as it needs to be licensed for use on all devices, even if the software is only used by a few customers.
[0005] In the current model, customers do not have any control over the default set of applications. This affects their experience with the device, straight out of the box. Users may sometimes be allowed to install additional applications, but they are not allowed to uninstall any of the default applications even if they do not ever use them. Also, having multiple applications to do the same task can detract from a pleasant user experience. [0006] U.S. Patent Application Publication No. US23236989A1 , entitled
"Secure Software Customization for Smartcard," describes a secure mechanism to customize the software image of a smart card. Prior to when this application was filed, clients would send the whole software image to the smart card manufacturer, encrypted with a key. A small software image provides basic functionality to communicate with the smart card and to send commands to download software securely. [0007] Another U.S. patent application, namely U.S. Patent Application
Publication No. US22154555A1, entitled "Software Customization System and Method," discloses a mechanism that simplifies the management of multiple variations of a software image. The approach described factors out the common functionality and uses virtual files and directories that represent the differences among software images. These virtual elements are replaced by the specific files, depending on the specifics of the device, which affect the target software. Technologies are described, on the server side, to manage different software images in a way that stores only one copy of the common components (using virtual files).
[0008] With respect to existing approaches, desktop operating systems (e.g.,
Windows and Linux) provide functionality that allows users to select the set of initial applications. In the case of Windows, for example, the options are limited and users can only choose from a set of predetermined applications, hi the case of Linux, however, the users have three levels of flexibility: working environment profile, application level, and package level. A working environment profile allows users to choose from a desktop, server, or laptop configuration. An application level allows user to select from a list of applications, if the user installs Linux from the network, the server can configure the list of applications dynamically. A package level which is the finest-grained configuration model, allows users to select from individual packages, thereby giving users full control over the software installed in the machine. This mode is normally intended for experts only.
SUMMARY OF THE INVENTION
[0009] A method and apparatus is disclosed herein for handset customization.
In one embodiment, the handset comprises a control unit and a memory coupled to the control unit to store a software image which, when executed by the control unit, selects software for the handset based on end user input.
BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The present invention will be understood more fully from the detailed description given below and from the accompanying drawings of various embodiments of the invention, which, however, should not be taken to limit the invention to the specific embodiments, but are for explanation and understanding only.
[0011] Figure 1 illustrates a traditional handset software image.
[0012] Figure 2 illustrates one embodiment of a customizable handset image.
[0013] Figure 3 is a block diagram of the software components of a handset and a network.
[0014] Figure 4 is a flow diagram of one embodiment of an initialization process.
[0015] Figure 5 is a flow diagram of one embodiment of a customization process.
[0016] Figure 6 is a flow diagram of one embodiment of a termination process.
[0017] Figure 7 is flow diagram of another embodiment of a real time customization process.
[0018] Figure 8 is flow diagram of a non real-time customization process.
DETAILED DESCRIPTION OF THE PRESENT INVENTION [0019] In one embodiment of the present invention includes a mechanism that allows users to choose the default software packages they want available in their handsets. In one embodiment, the software selection is performed during the first use of the handset (e.g., during the bootstrap process) and enables fine-grained customization. In one embodiment, users customize their handset's software image during the bootstrap process. As a result, users do not have to use the set of preconfigured applications that carriers choose. This may be used to allow users to choose and pay for the features they want to have. Furthermore, this may enable carriers to maintain only one small default software image, which simplifies software maintenance by reducing the number of pre-customized images. [0020] A method and an apparatus for handset customization are described.
Instead of following a static approach in which only a limited number of working environment profiles are allowed, some embodiments of the present invention offers new configurations dynamically based on popular user application selections, target devices, and/or target age ranges. Also, carriers can dynamically modify the list of available profiles.
[0021] One embodiment allows users to configure the handset functionality from a remote source, such as, for example, a web page. Users make their selections and the system configures the handset accordingly. Furthermore, when using this model, in one embodiment, the user is allowed to make decisions on the installed hardware.
[0022] One embodiment provides functionality to adjust the user monthly bill automatically according to the selected functionality. Monthly payment of the user is thus determined by, for example, the baseline price of the selected plan plus the combined monthly charge for selected functionalities.
[0023] hi the following description, numerous details are set forth to provide a more thorough explanation of the present invention. It will be apparent, however, to one skilled in the art, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the present invention. [0024] Some portions of the detailed descriptions which follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. [0025] It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as "processing" or "computing" or "calculating" or "determining" or "displaying" or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
[0026] The present invention also relates to apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. [0027] The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method steps. The required structure for a variety of these systems will appear from the description below, hi addition, the present invention is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the invention as described herein.
[0028] A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium includes read only memory ("ROM"); random access memory ("RAM"); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other form of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.); etc.
Overview
[0029] In one embodiment, a handset includes a minimalist software image without any user application and enough functionality to bootstrap the phone. Furthermore, the handset performs a customization process that allows users to choose the default software they want to install in the handset during the first use of the handset.
[0030] Figures 1 and 2 illustrate a difference between the two software images. In Figure 1, there is the traditional software image 102 that includes operating system OS Kernel 107, all required middleware components 106, preinstalled applications 105, and on top of it, user applications 101. Figure 2 presents a much more minimalist software image with enough functionality to enable bootstrap and customization of the phone. Referring to Figure 2, the software image include bootstrap software image includes OS Kernel 207, middleware components 206 to for bootstrap and customize the handset, and a customization agent 205 that guides the user during the customization process, and on top of it, user applications 201. In one embodiment, bootstrap software image 102 does not include any preinstalled applications. Instead, it allows users to choose their own default applications. In one embodiment, all applications are in the user applications area; though there may be multiple user application areas. Furthermore, customizable software image 202 only includes middleware components 206 required to bootstrap and customize the handset, while all additional middleware components are installed on demand according to application dependencies (e.g., library and component dependencies where a program needs a library or component to run).
[0031] In one embodiment, bootstrap software image 202 is generic so it can be easily reused with different handsets. It does not include any default software or contents; instead, it delegates the task of choosing the initial software to the user through the customization agent. As a result, the user uses an initial customization process for customization. Bootstrap software image 202 simplifies the software maintenance task of device manufacturers and carriers.
[0032] One embodiment of the present invention leverages existing functionality to select and download existing software. This functionality is part of the distribution system, which is present in most major carriers (e.g., the imode and
BREW distribution system of NTT DoCoMo of Japan). This approach allows leveraging existing security mechanisms, therefore making the overall system secure as well.
[0033] Figure 3 is a block diagram of the software components of a handset and a network. Referring to Figure 3, the following five components are included in the handset and the network:
• OS Kernel 207;
• bootstrap and customization middleware components 206;
• handset customization agent 205;
• customization service 301; and
• content and software repository 302.
[0034] In one embodiment, OS kernel 207 provides functionality to bootstrap the handset's hardware and manage the available resources, hi one embodiment, OS kernel 207 exports an interface to enable the development of software that leverages the existing resources. OS kernel 207 can be either a full fledge version with all the components it requires, or it can be a subset of the functionality, which can be further customized (e.g., installing additional device drivers).
[0035] Bootstrap and customization middleware components 206 provide basic functionality to initialize the software stack and support the execution of customization agent 205. Middleware components 206 include bootstrapping functionality such as, for example, remote communication and application lifecycle management (i.e., download, browser, and install).
[0036] Handset customization agent 205 is the software that executes the first time the user interacts with handset 310. Customization agent 205 is responsible for guiding the user through the handset customization process, hi one embodiment, customization agent 205 interacts with customization service 301 available at the network side (network 300) to obtain a list of default applications and content specific to the handset model and user profile. In one embodiment, user profile is acquired through physical or digital forms submitted from user at purchasing time. In one embodiment, customization agent 205 interacts with the user to obtain a list of selected applications and content. In one embodiment, the list is directly specified by the user. In another embodiment, the list is inferred from the user's indication of how the user plans to use the device. With this information, customization agent 205 leverages the existing customization middleware components to download, install, and configure the selected software and contents. After the handset customization process, customization agent 205 disables itself and the handset proceeds with the normal bootstrap process.
[0037] Customization, service 301 runs at the network side (network 300) and is responsible for creating a list of default applications and content, appropriate for a specific cell phone model and user profile. In the case where the user input is an indication of the desired user the end user has planned for the handset, customization service 301 correlates those plans to a list of applications and content. In one embodiment, there are multiple user (user group) profiles, and each profile has a list of applications and content. Examples of content include a screen saver, a ringtone, music, a video clip, etc. Customization service 301 interacts with content and software repository 302 to obtain the actual data. In one embodiment, carriers can interact with customization service 301 to customize the offering.
[0038] Content and software repository 302 is a repository operated by the carrier or a third party content provider. This repository may be a key component of the carrier's distribution system, which enables handset provisioning. In one embodiment, this repository stores and distributes the software and content that customization service 301 advertises or provides.
Protocols for Handset Customization
[0039] The following describes examples of protocols involved in one embodiment of the handset customization process. The processing may be divided into three flow diagrams: initialization, customization, and termination. Initialization
[0040] The initialization process is responsible for detecting that the handset is switched on for the first time. The initialization process bootstraps the operating system, initializes the bootstrap and configuration middleware, and starts the customization agent, which drives the customization process. Figure 4 is a flow diagram of one embodiment of an initialization process. The process is performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both.
[0041] Referring to Figure 4, handset 310 sends a message (401) to OS kernel
207 to bootstrap the OS. In response, OS kernel 207 sends a message (402) to handset 310 indicating that the OS has been bootstrapped. After bootstrapping the OS, handset 310 sends a message (403) to bootstrap and customization middleware 206 to initialize bootstrap and customization middleware 206. In response thereto, after being initialized, bootstrap and customization middleware 206 sends a message (404) back to handset 310.
[0042] After initialization bootstrap and customization middleware 206, handset 310 sends a message (405) to customization 205 to start the customization agent. Thereafter, customization 205 drives the customization process (406).
Customization
[0043] Figure 5 is a flow diagrm of one embodiment of a customization process. The customization flow diagram defines the interactions that allow the user to select the default software and content to install in the handset. The process is performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both.
[0044] Referring to Figure 5, the customization process starts with the customization agent interacting with the customization service. Processing logic of customization agent 205 sends the handset description to customization service 301 (501). Processing logic of customization service 301 combines this information with carrier specific policies to retrieve the customization data from content and software repository 302 (502). In one embodiment, the carrier specific policies include software offerings based on one or more of promotions, user profiles, regional settings, etc. In one embodiment, the customization data comprises software and content. Content and software repository 302 sends a list of available default software and content (503). Customization service 301 forwards the list of available default software and content to customization agent 205 (505), which presents it to the user and waits for the user to choose from the available offerings (505). Finally, when customization agent 205 receives the user's selection of the software and content, customization agent 205 interacts with bootstrap and customization middleware 206 to install all selected items (507) (e.g., software, software depositories (middleware), content).
Termination
[0045] Figure 6 is a flow diagram of one embodiment of a termination process.
The process is performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both.
[0046] Referring to Figure 6, during termination, customization agent 205 sets up the handset as already customized (601) and then interacts with customization service 301 by providing customization service 301 information regarding the software and content the user has chosen (602). Then in one embodiment, customization service 301 uses this information to adjust the monthly bill of the user. Then customization agent 205 disables itself (603), so next time the phone starts, it proceeds with the regular functionality.
Dynamic User Profiles and Automatic Bill Adjustment
[0047] Customization service 301 running on the network is responsible for providing users with a list of available software and content. In one embodiment, the software and content is provided individually. In an alternative embodiment, the software and content are bundled together in profiles, which can be customized according to different parameters. Unlike operating systems like Linux where the profiles are static, in one embodiment, customization service 301 provides functionality for dynamic profiles. That is, it is possible to add, remove, and modify profiles at runtime.
[0048] Carriers can benefit from the large population of cellphone users to collect statistics about popular software and content based on geographic regions, user age, etc. Then, based on this information, in one embodiment, carriers create profiles dynamically that are likely to accommodate the requirements of different population groups.
[0049] Finally, the fact that users can customize their own software implies that a static billing model likely won't work. In one embodiment, customization service 301 provides additional functionality that inspects the user selection and automatically adjusts the monthly bill.
Alternative Embodiments
[0050] In one embodiment, the user selects the default functionality in realtime; alternatively, the user selects the default functionality in non-real-time.
Real-time customization
[0051] In one embodiment, for the real-time customization approach, the user chooses the default software the first time it switches on the handset. Furthermore, the user interacts with the handset to select the default software packages and content. The process is real-time because the selection is applied to the handset at the same time the user is choosing the desired functionality. Figure 6 illustrates this process where the user's selection causes the handset to interact with the customization infrastructure to obtain the default software packages and content.
Non-Real-time Customization
[0052] With the non real-time customization process, the user chooses the default configuration of the handset prior acquiring the new handset. One possible implementation of this approach uses a web page as the user interface to choose the software configuration. Figure 8 illustrates such a process. Referring to Figure 8, the user loads web page 801, selects the phone model, and chooses the software and content for handset 803. In one embodiment, applications and content are divided into following hierarchical classes: major category, minor category, package, and item. As an example, an item called "ABC Word Processor" belongs to the Productivity major category, the Office Software minor category, and "ABC Office Software" package. Software and contents are displayed as an expandable tree with major categories as root nodes. The user can select a major category, a minor category, a package, or a single item. At the end of the process, the user has two options: select a shop to pickup the customized handset, or request the shipment of the handset to a specific address. The customization infrastructure, which comprises customization service, completes the process with the help of the customization agent. For this approach, the customization agent requires an additional initial step. When the customization agent sends the handset's information, the customization service performs a database look-up and detects that the handset software configuration has already been chosen. The customization service notifies the customization agent, which skips the interaction with the user and starts downloading the appropriate software and content. [0053] A benefit of this non real-time customization is the ability to customize certain aspects of the cellphone's hardware. In one embodiment, when the web page presents information about the cellphone, it provides additional entries to configure hardware features. For example, users can choose whether or not they want a camera, WiFi support, size of installed memory, etc.
An Example Cellular Phone
[0054] Figure 9 is a block diagram of one embodiment of a cellular phone that may include the transmitter and/or the receiver described above. Referring to Figure 9, the cellular phone 910 includes an antenna 911, a radio-frequency transceiver (an RF unit) 912, a modem 913, a signal processing unit 914, a control unit 915, an external interface unit (external VF) 916, a speaker (SP) 917, a microphone (MIC) 918, a display unit 919, an operation unit 90 and a memory 921.
[0055] In one embodiment, the external terminal 916 includes an external interface (external VF), a CPU (Central Processing Unit), a display unit, a keyboard, a memory, a hard disk and a CD-ROM drive. [0056] The CPU in cooperation with the memories of cellular phone 910 (e.g., memory 921, memory, and hard disk of the external I/F 916) cooperate to perform the operations described above.
[0057] Note that the transmitter and/or receiver may be included in a base station or other wireless devices (e.g., a wireless LAN).
[0058] The external VF can be connected to a notebook, laptop, desktop or other computer. This can enable the cell phone to act as a wireless modem for the computer. The cell phone can be the computer's connection to the internet, WiFi and
WiMAX, a local area network, a wide area network, a personal area network,
Bluetooth.
An Example of a Computer System
[0059] Figure 10 is a block diagram of an exemplary computer system that may perform one or more of the operations described herein. Referring to Figure 10, computer system 1000 may comprise an exemplary client or server computer system. Computer system 1000 comprises a communication mechanism or bus 1011 for communicating information, and a processor 1012 coupled with bus 1011 for processing information. Processor 1012 includes a microprocessor, but is not limited to a microprocessor, such as, for example, Pentium™, PowerPC™, Alpha™, etc. [0060] System 1000 further comprises a random access memory (RAM), or other dynamic storage device 1004 (referred to as main memory) coupled to bus 1011 for storing information and instructions to be executed by processor 1012. Main memory 1004 also may be used for storing temporary variables or other intermediate information during execution of instructions by processor 1012. [0061] Computer system 1000 also comprises a read only memory (ROM) and/or other static storage device 1006 coupled to bus 1011 for storing static information and instructions for processor 1012, and a data storage device 1007, such as a magnetic disk or optical disk and its corresponding disk drive. Data storage device 1007 is coupled to bus 1011 for storing information and instructions. [0062] Computer system 1000 may further be coupled to a display device
1021, such as a cathode ray tube (CRT) or liquid crystal display (LCD), coupled to bus 1011 for displaying information to a computer user. An alphanumeric input device 1022, including alphanumeric and other keys, may also be coupled to bus 1011 for communicating information and command selections to processor 1012. An additional user input device is cursor control 1023, such as a mouse, trackball, trackpad, stylus, or cursor direction keys, coupled to bus 1011 for communicating direction information and command selections to processor 1012, and for controlling cursor movement on display 1021.
[0063] Another device that may be coupled to bus 1011 is hard copy device
1024, which may be used for marking information on a medium such as paper, film, or similar types of media. Another device that may be coupled to bus 1011 is a wired/wireless communication capability 1025 to communication to a phone or handheld palm device.
[0064] Note that any or all of the components of system 800 and associated hardware may be used in the present invention. However, it can be appreciated that other configurations of the computer system may include some or all of the devices. [0065] Whereas many alterations and modifications of the present invention will no doubt become apparent to a person of ordinary skill in the art after having read the foregoing description, it is to be understood that any particular embodiment shown and described by way of illustration is in no way intended to be considered limiting. Therefore, references to details of various embodiments are not intended to limit the scope of the claims which in themselves recite only those features regarded as essential to the invention.

Claims

CLAIMSWe claim:
1. A handset comprising: a control unit; and a memory coupled to the control unit to store a software image which, when executed by the control unit, selects software for the handset based on end user input.
2. A handset method comprising: bootstrapping an operating system kernel when a handset is turned on for a first time; initializing bootstrap and configuration middleware on the handset; and causing a customization agent on the handset to begin a process to customize software for the handset based on end user input.
3. A method comprising: sending a handset description to a customization service; receiving a list of software available for the handset; sending the list of available software for presentation to an end user at a remote location; receiving, from the remote location, the end user's selection of software from the list of available software; and initiating installation of the selected software to customize software for the handset based on end user input.
PCT/US2006/042230 2005-10-28 2006-10-27 Method and apparatus for handset customizing WO2007053521A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US73151905P 2005-10-28 2005-10-28
US60/731,519 2005-10-28
US58698106A 2006-10-25 2006-10-25
US11/586,981 2006-10-25

Publications (1)

Publication Number Publication Date
WO2007053521A1 true WO2007053521A1 (en) 2007-05-10

Family

ID=37776504

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/042230 WO2007053521A1 (en) 2005-10-28 2006-10-27 Method and apparatus for handset customizing

Country Status (1)

Country Link
WO (1) WO2007053521A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2386947A1 (en) * 2010-05-11 2011-11-16 Alcatel Lucent Device for dynamic management of downloadable applications for a communication device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2348987A (en) * 1998-12-11 2000-10-18 Hewlett Packard Co Upgrading firmware from a web site using an applet
US6182275B1 (en) * 1998-01-26 2001-01-30 Dell Usa, L.P. Generation of a compatible order for a computer system
WO2003083688A1 (en) * 2002-03-22 2003-10-09 Sun Microsystems, Inc. Mobile download system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182275B1 (en) * 1998-01-26 2001-01-30 Dell Usa, L.P. Generation of a compatible order for a computer system
GB2348987A (en) * 1998-12-11 2000-10-18 Hewlett Packard Co Upgrading firmware from a web site using an applet
WO2003083688A1 (en) * 2002-03-22 2003-10-09 Sun Microsystems, Inc. Mobile download system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MENA E ET AL: "A software retrieval service based on knowledge-driven agents", COOPERATIVE INFORMATION SYSTEMS. 7TH INTERNATIONAL CONFERENCE, COOPIS 2000. PROCEEDINGS (LECTURE NOTES IN COMPUTER SCIENCE VOL.1901) SPRINGER-VERLAG BERLIN, GERMANY, 2000, pages 174 - 185, XP002424069, ISBN: 3-540-41021-X *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2386947A1 (en) * 2010-05-11 2011-11-16 Alcatel Lucent Device for dynamic management of downloadable applications for a communication device
WO2011141650A1 (en) * 2010-05-11 2011-11-17 Alcatel Lucent Device for dynamic management of downloadable applications for a communication apparatus
FR2960077A1 (en) * 2010-05-11 2011-11-18 Alcatel Lucent DEVICE FOR THE DYNAMIC MANAGEMENT OF DOWNLOADABLE APPLICATIONS FOR COMMUNICATION EQUIPMENT

Similar Documents

Publication Publication Date Title
US20110066950A1 (en) Method and system for theming a mobile device
CN101354629B (en) Method and apparatus for controlling display of windows
US7716276B1 (en) Network that supports user-initiated device management
US8942672B2 (en) Mobile integrated distribution and transaction system and method for NFC services, and a mobile electronic device thereof
US8666383B1 (en) Automated branding of generic applications
US7899959B2 (en) Method of loading software in mobile and desktop environments
CA2604445C (en) A method and system for implementing customizable container services as component wireless applications
US20110238498A1 (en) Service stage for subscription management
US20060026268A1 (en) Systems and methods for enhancing and optimizing a user's experience on an electronic device
US20060288371A1 (en) Mobile terminal and method for operation
JP2008504630A (en) System and method for improving and optimizing user experience with electronic devices
US10902307B1 (en) Universal integrated circuit card (UICC) toolkit
CN101809536A (en) Multi-OS (operating system) boot via mobile device
US8958746B2 (en) Mobile integrated distribution and transaction system and method for NFC services, and a mobile electronic device thereof
US20060149955A1 (en) Customization of electronic devices via pre-boot space
CN105320616A (en) External device control method and device
US20080195769A1 (en) Method of identifying devices in mobile and desktop environments
US8812293B2 (en) Apparatus and method for changing language in mobile communication terminal
WO2007053521A1 (en) Method and apparatus for handset customizing
Ilyas et al. Smartphones
CN102547630B (en) Mobile terminal service multimedia displaying method, terminal and system
CA2594600C (en) System and method for adaptive theming of a mobile device
CN114840194A (en) Code and operating system generation method and device, server and electronic equipment
WO2015008167A2 (en) A moblie integrated distribution and transaction system and method for nfc services, and a mobile electronic device thereof
KR102045917B1 (en) Advertisement Information Operating Method And System thereof, and Apparatus supporting the same

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06844234

Country of ref document: EP

Kind code of ref document: A1