WO2010120930A2 - Selective enablement of runtime-based application behaviors - Google Patents
Selective enablement of runtime-based application behaviors Download PDFInfo
- Publication number
- WO2010120930A2 WO2010120930A2 PCT/US2010/031097 US2010031097W WO2010120930A2 WO 2010120930 A2 WO2010120930 A2 WO 2010120930A2 US 2010031097 W US2010031097 W US 2010031097W WO 2010120930 A2 WO2010120930 A2 WO 2010120930A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- runtime
- tag
- application
- based application
- computing devices
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/04—Billing or invoicing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
Definitions
- the present description provides a system and method for deploying software from a central location to a plurality of remote install sites.
- the system includes a network-accessible server system and multiple remote computing devices.
- Each of the remote devices includes a runtime-based application having an initial implementation which is installed via delivery of a general application deliverable from the network-accessible server system.
- the runtime-based application is configured to receive a tag from the network- accessible server system, interpret the tag, and in response, dictate one or more pre-existing application behaviors of the runtime-based application so as to create an alternate implementation of the runtime-based application.
- tags can provide advantages relating to installation, maintenance, upgrading and selective version/feature deployment of application software.
- FIG. 1 shows a block diagram of an embodiment of a system for deploying software to a plurality of remote install sites from a central location.
- FIG. 2 shows a flow diagram of an exemplary method of selectively enabling application behaviors of a runtime-based application.
- FIG. 3 shows a schematic depiction of an exemplary synchronization between a server system and a computing device.
- FIG. 4 shows a schematic depiction of an exemplary method and system for activating a billing feature.
- FIG. 5 shows a schematic depiction of an exemplary method and system for activating an application feature.
- FIG. 1 shows a system 20 for deploying installable software to a plurality of remote install sites (e.g., client computing devices).
- system 20 may include a network-accessible server system 22 configured to interact with a plurality of computing devices 24 via a network 26.
- Computing devices 24 may include computing devices of any suitable type such as personal computers, portable digital assistants, digital media players, mobile phones and the like.
- Network-accessible server system 22 may be configured to transmit a general application deliverable (not shown) to the computing devices 24 via network 26.
- the general application deliverable may be configured to install (or facilitate installation of) an initial implementation of a runtime-based application on each of the computing devices 24 upon receipt.
- the runtime-based application may be preinstalled and/or pre-embedded on computing devices 24.
- the network-accessible server system 22 may be further configured to transmit an upgrade of the runtime-based application to computing devices 24 via network 26.
- the upgrade may be configured to override the pre-installed and/or pre-embedded runtime-based application.
- Network-accessible server system 22 may include one or more computing devices that may individually or collectively include and/or define a logic subsystem, a memory/data- storage subsystem, and the like, for performing the various functions and operations discussed herein. It will be appreciated that these and many other elements can be implemented without departing from the scope of the present disclosure.
- network-accessible server system 22 may be further configured to transmit one or more tags (not shown) to each of the computing devices 24 via network 26.
- tags may be variously referred to herein, depending on the setting, as contextual modifier tags, contextual modifiers or modifier tags.
- tags may be XML-based tags that are interpretable by the runtime-based application.
- tags may be separately transmitted to computing devices 24.
- one or more tags may be included within an XML document transmitted to computing devices 24.
- the runtime-based application of each of the computing devices 24 is configured to interpret the tags and in response, dictate one or more pre-existing application behaviors of that runtime-based application so as to create an alternate implementation of the runtime-based application.
- a behavior may be "pre-existing" in that a runtime-based application, as initially installed, has the potential for performing the behavior, though it may, in a particular implementation, not exhibit that behavior because the relevant enabling tag has not been provided to the application.
- the code of the runtime-based application may include, for example, hundreds of pre-existing features and/or behaviors that may be employed within the application.
- the tags may be configured to selectively enable or disable each of these features, and/or control the way the features operate.
- the tags may act as switches by indicating a particular feature to be "ON” or "OFF.”
- tags may provide a string or integer definition of a configuration parameter and/or variable associated with a particular feature, as described in more detail below.
- the runtime-based application can then "interpret" the tags by processing the tags to selectively enable or disable features within the runtime ⁇ based application as indicated by the tags. Accordingly, such an approach is distinct from a software patch in that software patches typically provide new code whereas the example tags herein typically are used to selectively enable or disable features pre ⁇ existing within the runtime ⁇ based application.
- Tags may dictate behavior of an application by enabling/disabling features of the initial application, by providing alternate mechanisms for like functionality, or by providing alternate layouts or user-interface regimes, to name but a few examples, so as to yield an alternate implementation of the application.
- tags may dictate application behaviors in an e- commerce application by specifying one or more of a number of different predetermined ways in which a shopping cart feature set is implemented.
- mobile phone carriers may use tags to enable certain features of mobile phone software application that are specific to the carrier. Selectively enabling application behaviors of a runtime-based application is discussed in more detail with reference to method 40 of FIG. 2.
- the plurality of computing devices 24 may be grouped into populations, such as a first population 28 and second population 30 indicated in FIG. 1 by dashed boxes.
- population groups or subgroups may be based on any suitable criteria such as the geographic locations of the computing devices, types of computing devices, service provider of the network connections between the network-accessible server and the computing devices, etc. Examples of additional suitable criteria may include user preferences, a user language setting, an application version, a device firmware version, a user subscription model/contract, network bearer/bandwidth and the like.
- tags may be used to dictate different application behaviors at different install sites to create different implementations of the application. Not only may the tags be substantially smaller than the deliverable that installed the initial implementation of the application, thus allowing for more efficient/quicker transmission, but the tags may allow the application behavior to be customized specifically for any subset of the remote install sites without requiring another full software installation.
- software for a mobile phone carrier typically has characteristics that are associated with the service providers and/or geographic regions.
- a system such as system 20 allows for efficient distribution of a general application deliverable which may contain all potential features, wherein a specific implementation to one customer population is enabled or activated via a tag for that group.
- each mobile phone carrier may receive a different tag causing their application to be of a specific implementation different from those of the other carriers.
- a system such as system 20 may be applicable to application updates and/or upgrades. For example, using the mobile phone example above, a carrier may decide to add additional features to the application.
- a network-accessible server system may then transmit one or more tags to allow for these additional features to be activated within the existing application, thus creating an alternate implementation of the application. By not requiring transmittal of an entirely new install of the application, time and resources may be conserved.
- method 40 includes transmitting a general application deliverable to a plurality of remote devices.
- a general application deliverable may be of any suitable configuration, such as a container application including a modular structure of the runtime-based application.
- Such a general application deliverable may also be configured to deploy the runtime-based application to a variety of platforms from a single codebase.
- the network- accessible server may be a network-accessible server system 22 as described above with reference to FIG. 1.
- the plurality of remote devices may be the plurality of computing devices 24.
- one or more of the remote devices may be portable computing devices, such as mobile phones.
- the general application deliverable is configured to install or facilitate installation of an initial implementation of a runtime-based application at each of the remote devices.
- a runtime-based application may be configured to operate within a runtime environment.
- the runtime-based application may be an online product catalog of items available for purchase and/or download, such as an online music store. It is to be understood that such an application is exemplary in that the application could be any other suitable application, such as operating software for a mobile phone to run basic components such as calls, voicemail, contacts, calendar, alarms, etc.
- method 40 includes with respect to a first group of the remote devices, transmitting a first tag to each of the devices so as to control implementation of a runtime-based application derived from the general application deliverable.
- the first group of remote devices may be a first population of computing devices of any suitable grouping such as described above with reference to FIG. 1. For example, population groups may be based upon criteria such as the geographic locations of the computing devices, types of computing devices, service provider of the network connections between the network-accessible server and the computing devices, and the like.
- the first tag may be an XML-based modifier tag interpretable by the runtime-based application of each remote device of the first group of remote devices.
- the tag dictates one or more application behaviors of that runtime-based application so as to create an alternate implementation of the runtime-based application.
- the tag allows the alternate implementation of the runtime-based application of the first group of remote devices to have behaviors different from that of the initial implementation of the runtime-based application received via the general application deliverable.
- method 40 of selectively enabling application behaviors of a runtime-based application provides the potential benefit of customizing behavior specific to a subset of devices without requiring re-deployment and/or re-installation of the entire runtime-based application.
- the tags are typically much smaller than the general application deliverable, and therefore are easier and/or quicker to transmit to the remote devices. In some cases, the tags may be an order of magnitude smaller than the application itself.
- the first tag may dictate any number of possible behaviors in the runtime-based application.
- One possible category for behavior modification may include user interface modification. Behaviors modified via such tags may dictate custom views within the runtime-based application, such as the display layout of advertising banners within the application, position of elements within the application (e.g., a search-bar), and the like.
- the application may display a promotional page, where the promotional offers may be displayed in a predefined layout as dictated by the tag.
- a general application deliverable may be sent to all the customers of the provider.
- the provider may offer two different levels of user contracts, wherein each contract level has a different set of features.
- a less expensive contract might include providing an abundance of advertising to the user, whereas the more expensive contract may be free of such advertising.
- both versions of the general application deliverable may be implemented via tags, where the tag activates the advertising features within the application for users of the less expensive contract, and where the tag deactivates such features for users of the more expensive contract.
- additional behaviors may also be dictated by one or more additional tags, such as tags enabling and/or controlling presentation of the advertising content such as banners, sidebars, pop-ups, etc.
- tags may be transmitted to the mobile phones in any suitable manner such as by transmitting the tags in a packet form, including the tags within an XML document, transmitting the tags separately, etc.
- the application's homepage may display a list of items wherein the position of a "search" item within this list may be dictated by the tag.
- the homepage may display a set of promotional items based on a general parameter defining the number of items to be displayed, wherein the application may pick randomly a number of items to be displayed according a value of that parameter as based on the tag.
- Another possible category for behavior modification includes behaviors related to business logic.
- tags may dictate activation or deactivation of a synchronization of bookmarked items between a computing device and the server.
- tags may be used to dictate synchronization of a basket and/or wishlist in an online" shopping catalog application.
- FIG. 3 shows a schematic depiction of a computing device 50 including a runtime ⁇ based shopping application 52 configured via tags to allow synchronization of a shopping cart 54 with network-accessible server system 56 via network 58.
- a tag may be used to dictate billing functionality within the runtime-based application, for example, to dictate whether the application uses a billing system internal to the application to participate in electronic transactions over the network or whether the application directs the user to an external billing system.
- FIG. 4 shows a schematic depiction of an exemplary billing feature activation.
- Mobile phones 60 and 62 are configured to interact with network- accessible server system 64 via network 66.
- Mobile phones 60 and 62 are both running a same runtime-based application.
- the application on mobile phone 60 has an internal billing feature activated via tags such that a user of mobile phone 60 can purchase items directly from the application.
- tags may be used to dictate plugin and/or feature activation within an application.
- the tag may dictate activation or deactivation of plugins embedded in the application.
- tags may be used to dictate behavior to allow the application to provide a music recognition service, and/or provide a web radio service.
- FIG. 1 A block diagram illustrating an example computing environment in accordance with the application.
- FIG. 5 shows a schematic depiction of an exemplary activation of an application feature.
- FIG. 5 shows a mobile phone 70 with a display screen 72 displaying a homepage 74 of a runtime-based application.
- Homepage 74 displays icons and a menu. It is to be understood that homepage 74 is exemplary in that it could display virtually any other images, text, icons, menus, searchbars, taskbars, and the like.
- the application being run on mobile phone 70 may include an additional feature of a store 76, indicated in dotted line, that may be activated or deactivated based on a tag.
- a store may include, for example, digital content items such as games, music, ringtones and the like available for download and/or purchase.
- a user of mobile phone 70 may have a limited service plan with his mobile phone service provider, such as pre-paid plan.
- features such as store 76 within the application on mobile phone 70 may be deactivated via tags.
- a user of mobile phone 70 having an extended service plan with her mobile service provider, such as an enhanced data package, may run the same application yet have store 76 activated via tags.
- tags may be used to dictate other behaviors of the runtime-based application, such as providing platform bug workarounds, wrapper implementation strategy (i.e., an audio stream strategy) and hardware and platform fine-tuning (e.g., key codes, buffer sizes, drive names, etc.)
- the tags may indicate definitions of one or more configuration parameters.
- Such configuration parameters may act as binary "switches” to be turned on or off to yield the desired behavior.
- configuration parameters may act as variables which may, for example, may indicate a selection from three or more options.
- a variable in the form of a string may indicate to the computing device which of three or more methods best fits the device's hardware, such as a wrapper implementation strategy that can be "StreamBuffer,” “filebuffer,” “rtspwrapper,” “audiostrategy ⁇ ,” etc.
- a variable in the form of an integer may indicate the promotional layout to be a value selected from ⁇ 2, 4, 6, 8 ⁇ to adapt the computing device's view to a predefined view ⁇ l, 2, 3, 4 ⁇ .
- variables may be applied directly as configuration parameters.
- a variable in the form of a string may indicate a drive name, and may be any value defined by a hardware device manufacturer.
- a variable in the form of an integer may indicate key codes for each action in the computing device (e.g., cursor up/down) by associating the action with an integer value provided by the hardware, which is some cases, may change from one device to another.
- a variable in the form of an integer may indicate buffer sizes to be any size in bytes which has been determined to be an optimal value for this kind of computing device/hardware solution.
- method 40 includes with respect to a second group of the remote devices, transmitting a second tag to each of the devices so as to control implementation of a runtime-based application derived from the general application deliverable.
- the second tag may dictate any suitable type of behavior, as described above with reference to the first tag.
- method 40 may yield a first alternate installation of the runtime-based application on the first group of remote devices, and a second alternate installation of the runtime-based application on the second group of remote devices.
- FIG. 1 schematically shows a system 20 that may perform one or more of the above described methods and processes.
- System 20 may include a logic subsystem and a data-holding subsystem.
- Computing devices 24 may optionally include a display subsystem and/or other components not shown in FIG. 1.
- the central server system and/or remote devices will typically employ a processing or other logic subsystem to carry out the various functionality described herein. Data ⁇ holding subsystems and display subsystems may be employed as well.
- the logic subsystem may include one or more physical devices configured to execute one or more instructions.
- the logic subsystem may be configured to execute one or more instructions that are part of one or more programs, routines, objects, components, data structures, or other logical constructs. Such instructions may be implemented to perform a task, implement a data type, transform the state of one or more devices, or otherwise arrive at a desired result.
- the logic subsystem may include one or more processors that are configured to execute software instructions. Additionally or alternatively, the logic subsystem may include one or more hardware or firmware logic machines configured to execute hardware or firmware instructions.
- the logic subsystem may optionally include individual components that are distributed throughout two or more devices, which may be remotely located in some embodiments.
- the data ⁇ holding subsystem may include one or more physical devices configured to hold data and/or instructions executable by the logic subsystem to implement the herein described methods and processes. When such methods and processes are implemented, the state of the data ⁇ holding subsystem may be transformed (e.g., to hold different data).
- the data-holding subsystem may include removable media and/or built-in devices.
- the data- holding subsystem may include optical memory devices, semiconductor memory devices, and/or magnetic memory devices, among others.
- the data- holding subsystem may include devices with one or more of the following characteristics: volatile, nonvolatile, dynamic, static, read/write, read-only, random access, sequential access, location addressable, file addressable, and content addressable.
- the logic subsystem and data- holding subsystem may be integrated into one or more common devices, such as an application specific integrated circuit or a system on a chip.
- a display subsystem may be used to present a visual representation of data held by a data-holding subsystem. As the herein described methods and processes change the data held by the data-holding subsystem, and thus transform the state of the data-holding subsystem, the state of the display subsystem may likewise be transformed to visually represent changes in the underlying data.
- the display subsystem may include one or more display devices utilizing virtually any type of technology. Such display devices may be combined with a logic subsystem and/or a data-holding subsystem in a shared enclosure, or such display devices may be peripheral display devices.
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201080017848.5A CN102395960B (en) | 2009-04-16 | 2010-04-14 | System and method for selective enablement of runtime-based application behaviors |
KR1020167027652A KR101700080B1 (en) | 2009-04-16 | 2010-04-14 | Selective enablement of runtime-based application behaviors |
RU2011141852/08A RU2011141852A (en) | 2009-04-16 | 2010-04-14 | SELECTIVE UNLOCKING OF OPERATION MODES OF THE APPLICATION BASED ON THE IMPLEMENTATION ENVIRONMENT |
JP2012506180A JP2012524344A (en) | 2009-04-16 | 2010-04-14 | Selective use of runtime-based application behaviors |
EP10765124.2A EP2419835A4 (en) | 2009-04-16 | 2010-04-14 | Selective enablement of runtime-based application behaviors |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/425,115 US8108497B2 (en) | 2009-04-16 | 2009-04-16 | Selective enablement of runtime-based application behaviors |
US12/425,115 | 2009-04-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2010120930A2 true WO2010120930A2 (en) | 2010-10-21 |
WO2010120930A3 WO2010120930A3 (en) | 2011-01-20 |
Family
ID=42981696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2010/031097 WO2010120930A2 (en) | 2009-04-16 | 2010-04-14 | Selective enablement of runtime-based application behaviors |
Country Status (7)
Country | Link |
---|---|
US (1) | US8108497B2 (en) |
EP (1) | EP2419835A4 (en) |
JP (1) | JP2012524344A (en) |
KR (2) | KR20120016196A (en) |
CN (1) | CN102395960B (en) |
RU (1) | RU2011141852A (en) |
WO (1) | WO2010120930A2 (en) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100268735A1 (en) * | 2009-04-17 | 2010-10-21 | Microsoft Corporation | Online content service with catalog-based interaction |
US20110078678A1 (en) * | 2009-09-30 | 2011-03-31 | Open Kernel Labs | Methods and apparatus for producing cross-platform software applications |
US8732697B2 (en) | 2010-08-04 | 2014-05-20 | Premkumar Jonnala | System, method and apparatus for managing applications on a device |
US9154555B2 (en) * | 2011-03-30 | 2015-10-06 | Paypal, Inc. | Device specific remote disabling of applications |
US9015576B2 (en) * | 2011-05-16 | 2015-04-21 | Microsoft Technology Licensing, Llc | Informed partitioning of data in a markup-based document |
US8732275B2 (en) * | 2011-08-01 | 2014-05-20 | Verizon Patent And Licensing Inc. | Methods and systems for delivering a personalized version of an executable application to a secondary access device associated with a user |
GB2495081A (en) * | 2011-09-23 | 2013-04-03 | Centrix Networking Ltd | Management system for delivering an application |
EP2842044A4 (en) * | 2012-04-26 | 2015-10-07 | Hewlett Packard Development Co | Platform runtime abstraction |
US8990883B2 (en) | 2013-01-02 | 2015-03-24 | International Business Machines Corporation | Policy-based development and runtime control of mobile applications |
US10043164B2 (en) * | 2013-05-20 | 2018-08-07 | Mastercard International Incorporated | System and method for facilitating a transaction between a merchant and a cardholder |
US10338906B2 (en) * | 2015-09-29 | 2019-07-02 | Facebook, Inc. | Controlling feature release using gates |
US10341465B2 (en) | 2016-04-03 | 2019-07-02 | Microsoft Technology Licensing, Llc | Policy driven flight management |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070073627A1 (en) | 2005-09-23 | 2007-03-29 | Business Objects, S.A. | Apparatus and method for processing license keys using dynamic field mapping |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5347629A (en) * | 1992-04-07 | 1994-09-13 | International Business Machines Corporation | Graphical user interface including updating of multiple panels using what you see is what you get (WYSIWYG) editor |
US6990514B1 (en) * | 1999-09-03 | 2006-01-24 | Cisco Technology, Inc. | Unified messaging system using web based application server for management of messages using standardized servers |
US6490564B1 (en) * | 1999-09-03 | 2002-12-03 | Cisco Technology, Inc. | Arrangement for defining and processing voice enabled web applications using extensible markup language documents |
US6901431B1 (en) * | 1999-09-03 | 2005-05-31 | Cisco Technology, Inc. | Application server providing personalized voice enabled web application services using extensible markup language documents |
US6952800B1 (en) * | 1999-09-03 | 2005-10-04 | Cisco Technology, Inc. | Arrangement for controlling and logging voice enabled web applications using extensible markup language documents |
US6578000B1 (en) * | 1999-09-03 | 2003-06-10 | Cisco Technology, Inc. | Browser-based arrangement for developing voice enabled web applications using extensible markup language documents |
US6961750B1 (en) * | 2000-05-18 | 2005-11-01 | Microsoft Corp. | Server-side control objects for processing client-side user interface elements |
US7013340B1 (en) * | 2000-05-18 | 2006-03-14 | Microsoft Corporation | Postback input handling by server-side control objects |
US6963930B2 (en) * | 2001-02-15 | 2005-11-08 | Centric Software, Inc. | Automatic transfer and expansion of application-specific data for display at a website |
US7346840B1 (en) * | 2001-02-26 | 2008-03-18 | Cisco Technology, Inc. | Application server configured for dynamically generating web forms based on extensible markup language documents and retrieved subscriber data |
JP2002268984A (en) * | 2001-03-09 | 2002-09-20 | Tsubasa System Co Ltd | Program distributor |
US7406418B2 (en) * | 2001-07-03 | 2008-07-29 | Apptera, Inc. | Method and apparatus for reducing data traffic in a voice XML application distribution system through cache optimization |
US7065706B1 (en) * | 2001-08-06 | 2006-06-20 | Cisco Technology, Inc. | Network router configured for executing network operations based on parsing XML tags in a received XML document |
US7114148B2 (en) * | 2002-09-30 | 2006-09-26 | Microsoft Corporation | Runtime services for network software platform |
CN1534503A (en) * | 2003-03-27 | 2004-10-06 | 华硕电脑股份有限公司 | Method of realizing real time image sound talks in network game, system and storage medium thereof |
US7614052B2 (en) * | 2004-01-09 | 2009-11-03 | Nexaweb Technologies Inc. | System and method for developing and deploying computer applications over a network |
US7877744B2 (en) * | 2004-11-05 | 2011-01-25 | Qualcomm Incorporated | Method, software and apparatus for activating resident applications |
US20080148298A1 (en) * | 2006-12-18 | 2008-06-19 | Palm, Inc. | System and Methods for Providing Granular Security for Locally Running Scripted Environments and Web Applications |
-
2009
- 2009-04-16 US US12/425,115 patent/US8108497B2/en active Active
-
2010
- 2010-04-14 WO PCT/US2010/031097 patent/WO2010120930A2/en active Application Filing
- 2010-04-14 KR KR1020117024204A patent/KR20120016196A/en not_active Application Discontinuation
- 2010-04-14 JP JP2012506180A patent/JP2012524344A/en not_active Withdrawn
- 2010-04-14 KR KR1020167027652A patent/KR101700080B1/en active IP Right Grant
- 2010-04-14 EP EP10765124.2A patent/EP2419835A4/en not_active Withdrawn
- 2010-04-14 RU RU2011141852/08A patent/RU2011141852A/en not_active Application Discontinuation
- 2010-04-14 CN CN201080017848.5A patent/CN102395960B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070073627A1 (en) | 2005-09-23 | 2007-03-29 | Business Objects, S.A. | Apparatus and method for processing license keys using dynamic field mapping |
Also Published As
Publication number | Publication date |
---|---|
EP2419835A2 (en) | 2012-02-22 |
EP2419835A4 (en) | 2013-04-17 |
KR101700080B1 (en) | 2017-01-26 |
US20100268581A1 (en) | 2010-10-21 |
CN102395960B (en) | 2014-02-05 |
JP2012524344A (en) | 2012-10-11 |
CN102395960A (en) | 2012-03-28 |
WO2010120930A3 (en) | 2011-01-20 |
KR20120016196A (en) | 2012-02-23 |
US8108497B2 (en) | 2012-01-31 |
RU2011141852A (en) | 2013-04-20 |
KR20160121593A (en) | 2016-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8108497B2 (en) | Selective enablement of runtime-based application behaviors | |
Darwin | Android Cookbook: Problems and Solutions for Android Developers | |
CN102971688B (en) | Cross-platform program frame | |
JP6270066B2 (en) | Brand self-identification and installation of branded firmware on generic electronic devices | |
US9032390B2 (en) | Framework versioning | |
US7996778B2 (en) | Central internet browser control for multiple browsers enabled system | |
US20080092057A1 (en) | Framework for creation of user interfaces for electronic devices | |
AU2010202952B2 (en) | System image customization tool | |
US20100281475A1 (en) | System and method for mobile smartphone application development and delivery | |
KR20070103736A (en) | A method of providing content to a wireless computing device | |
US9158521B2 (en) | Automatic provisioning of a software platform to a device ecosystem | |
GB2424546A (en) | Scheduling transfer of data content to a mobile telephone | |
WO2012094482A1 (en) | Methods and apparatuses for imparting functionality to a mobile computing device | |
US20150067668A1 (en) | Installation engine and package format | |
WO2014145933A2 (en) | Systems and methods of processing data involving presentation of information on android devices | |
US8307288B1 (en) | Active forms content delivery service for entites and mobile networked device users (active forms) | |
US20050197157A1 (en) | System enabling easy application development on mobile devices | |
Cinar | Android quick APIs reference | |
US9336027B2 (en) | System and method for modular business applications | |
CN107515763A (en) | The processing method and server, terminal device of a kind of application program and its installation resource | |
Lettner et al. | Enabling a/b testing of native mobile applications by remote user interface exchange | |
CN101185062B (en) | Automatic updating of variables in a data language | |
CN108334360A (en) | Method, apparatus, storage medium and the computer equipment of application program dynamic load | |
US20150007136A1 (en) | System and method for modular business applications | |
JP2009065553A (en) | Application management server and application program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201080017848.5 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10765124 Country of ref document: EP Kind code of ref document: A2 |
|
REEP | Request for entry into the european phase |
Ref document number: 2010765124 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010765124 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2011141852 Country of ref document: RU Kind code of ref document: A Ref document number: 20117024204 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 7490/CHENP/2011 Country of ref document: IN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012506180 Country of ref document: JP |