CN1489736A - 用于维护和分发无线应用的方法和系统 - Google Patents

用于维护和分发无线应用的方法和系统 Download PDF

Info

Publication number
CN1489736A
CN1489736A CNA018221874A CN01822187A CN1489736A CN 1489736 A CN1489736 A CN 1489736A CN A018221874 A CNA018221874 A CN A018221874A CN 01822187 A CN01822187 A CN 01822187A CN 1489736 A CN1489736 A CN 1489736A
Authority
CN
China
Prior art keywords
content
application
prewired
user
mas
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA018221874A
Other languages
English (en)
Inventor
���׶���N��÷����
萨米尔·N·梅赫塔
马辛·拉马丹
齐亚德·拉马丹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motorola Mobility LLC
Original Assignee
4thPass 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 4thPass Inc filed Critical 4thPass Inc
Publication of CN1489736A publication Critical patent/CN1489736A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/128Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • H04L12/1403Architecture for metering, charging or billing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2871Implementation details of single intermediate entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/41Billing record details, i.e. parameters, identifiers, structure of call data record [CDR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/43Billing software details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/48Secure or trusted billing, e.g. trusted elements or encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/51Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP for resellers, retailers or service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/68Payment of value-added services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/70Administration or customization aspects; Counter-checking correct charges
    • H04M15/73Validating charges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2117User registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0156Secure and trusted billing, e.g. trusted elements, encryption, digital signature, codes or double check mechanisms to secure billing calculation and information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0164Billing record, e.g. Call Data Record [CDR], Toll Ticket[TT], Automatic Message Accounting [AMA], Call Line Identifier [CLI], details, i.e. parameters, identifiers, structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/01Details of billing arrangements
    • H04M2215/0196Payment of value-added services, mainly when their charges are added on the telephone bill, e.g. payment of non-telecom services, e-commerce, on-line banking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/22Bandwidth or usage-sensitve billing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/32Involving wireless systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/54Resellers-retail or service providers billing, e.g. agreements with telephone service operator, activation, charging/recharging of accounts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2215/00Metering arrangements; Time controlling arrangements; Time indicating arrangements
    • H04M2215/70Administration aspects, modify settings or limits or counter-check correct charges
    • H04M2215/7072Validate charges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/24Accounting or billing

Abstract

本发明提供用于维护和预配无线应用的基于计算机和网络的方法和系统。示例性实施例提供移动应用系统(MAS),其是以安全模式独立和联合工作以便为诸如无线设备的移动用户设备提供应用和资源的互操作服务器组件的集合。本发明的实施例也可用于为有线用户设备配置应用和资源。应用、资源以及其它内容由MAS预配和检验,用于用户的授权访问、与正请求用户设备的兼容性、以及通信公司和MAS的系统管理员的安全和计帐策略。通过这种方式,应用、资源及其它内容能下载到诸如无线设备的设备中,以更好地确保设备的成功执行能力。在一个实施例中,通过下述一个或多个步骤预配内容:检查内容中是否有恶意或禁用代码,优化该内容为更小尺寸和更快速度,提交/安装实现安全、计帐和其它通信公司策略的代码,以及为预定用户设备的打包代码。通过用于防止包含指定API的应用被下载到用户设备的应用过滤器提供附加安全性。在一个实施例中,MAS包括协议管理程序,预配管理程序,高速缓冲存储器,配置使用管理程序,计帐管理程序,记录管理程序,管理员,以及心跳监视程序,这些组件互操作以提供预配功能。

Description

用于维护和分发无线应用的方法和系统
技术领域
本发明涉及一种用于无线应用的方法和系统,本发明尤其涉及用于通过无线网络为无线设备维护和分发无线应用的方法和系统。
背景技术
当今无线设备在世界的许多地区使用已经很普遍。电话通信公司(carriers)的用户使用诸如无线电话、手机、个人信息管理程序、电子管理程序、个人数字助理、便携式电子邮件机、游戏机等以及其它设备为我们的生活增添了便利。然而,在这些设备上使用的软件和用于配置这些软件到这些设备上的机制是保密的。通常,客户(例如,蜂窝电话服务的客户)必须将蜂窝电话带到蜂窝电话服务的厂商以装载新的或更新的服务软件或功能到话机上。另外,即使是改变客户的预约也要通过在指定的地方处理或通过呼叫客户服务代表进行处理。此外,由于每个通信公司在物理上负责分发服务和应用,每个通信公司必须测试其希望在其指定为可操作的设备上提供的服务和应用。希望为这些无线设备开发应用的内容提供商必须为他们希望支持的每个设备做同样的事情,而且,可能必须与通信公司及设备制造商协同测试这些应用。此外,如果一个特定的软件应用不能正确运行,通信公司必须回收所有物理设备以更新该软件。因此,越来越需要更容易地为无线设备配置使用软件。
发明内容
本发明的实施例提供用于维护和预配/预配置(provisioning)无线应用的基于计算机和网络的方法和系统。示例性实施例提供一种移动应用系统(MAS),这种系统是以安全模式独立和共同工作以便为诸如无线设备的移动用户设备提供应用、资源及其他内容的互操作服务器组件集合。本发明的实施例也可用于为无线用户设备配置使用应用和其他内容。应用、资源以及其他内容由MAS预配和检验,用于授权用户访问,与正请求用户设备的兼容性,和/或符合MAS的通信公司和系统管理员的安全和计帐策略。通过这种方式,应用、资源及其他内容能下载到诸如无线设备的设备中,并具备更为确保这些设备的能力以正确执行。
在一些实施例中,MAS提供提交新内容、请求下载内容以及应用发现的能力。在一些实施例中,应用发现返回一个可供下载的内容列表,该内容表匹配用户指定的规则。在其他实施例中,MAS基于用户喜好返回一个内容列表。在一些实施例中,通过个人访问列表管理用户喜好。
在一个实施例中,用于提交内容、用于下载内容以及用于应用发现的检验过程包括一个或多个检验过程:检验在与该用户相关的计帐策略之下用户是否有权使用这些内容,检验这种设备是否支持内容的API和资源需求,以及检验该内容是否未被禁止使用。在一些实施例中,检验是通过简表执行的,这可通过系统进行管理。在一个实施例中,检验设备是否支持内容是通过比较与该内容相关的应用简表和与该用户设备相关的设备简表确定的。在一些实施例中,过滤在应用发现期间提供给用户设备的列表以便只显示已经根据这些过程检验的那些内容。
在MAS的一个实施例中,提供封闭式(walled-garden)预配置。内容被提交给MAS,检查是否有恶意或禁止的代码,或检查是否存在MAS许可和发布的特定API。用户接着可发现和请求该内容。在一些实施例中,预先预配置所发布的内容(静态预配)。在另外的实施例中,根据下载请求动态预配所发布的内容。
在另一实施例中,提供开放式内容预配置。利用开放式预配置,用户浏览网上(如因特网)的站点并在特定地址(例如URL)指定下载内容请求。MAS侦听这种请求,从该地址下载该内容,并检查是否有不应出现在该内容中的API或其他属性。如果通过检查,MAS为用户预配该内容。在一个实施例中,利用应用过滤程序执行这种检查过程。在一些实施例中,还为用户设备检验所请求的内容以便增大在该设备上正确执行该内容的可能性。
在一个实施例中,通过下述一个或多个步骤预配内容:检查该内容中是否有指定代码,优化内容为尺寸更小及速度更快,提交/安装实现安全性的代码、计帐、使用或其他通信公司策略,以及为预定的用户设备打包代码。在一个实施例中,检查该内容是否有恶意或禁用的代码或是否使用了特定的API。在另一实施例中,检查代码是否有使用不当或禁用的API。在一些实施例中,这种代码检查比较该内容与软件包、类、方法或域名列表。在一些实施例中,这种比较是在字节码级别进行的。在其他实施例中,这种比较是在其他级别(如源代码级别)进行的。在一些实施例中,使用应用过滤程序驱动代码检查过程。应用过滤程序能指定对于特定目标禁止使用的内容的参数、代码名、API或其他属性。在一个实施例中,目标包括一个特定应用或其他内容,一个特定内容提供商、设备类型或用户,或所有这些应用、内容提供商、设备或用户。
在此预配过程中,与内容一同提交/安装根据通信公司、MAS和/或系统管理员策略所需的附加代码。在一些实施例中,代码是在字节码级别提交/安装的。而在其他实施例中,代码是在除字节码级别外的其他级别提交/安装的。在一些实施例中,提交/安装代码提供下述一种或多种代码:实现支付或计帐策略的代码,通知拥护不可靠或可能不安全的内容的代码,当可更新下载内容时为用户提供自动通知的代码。
在此预配过程中,可针对所请求的设备适当打包被检查、优化或提交/安装的内容。在其他一些实施例中,这种打包压缩这些内容。而在其他实施例中,这种打包将所提供的内容拆分成可在用户设备重新组装的较小包。
在另一实施例中,MAS支持各种安全策略和机制。可创建和管理应用过滤程序以在检测过程中使用。在一些实施例中,这些过滤程序被用来在提交期间以及在预配期间检查代码。而在另一实施例中,提供一个禁用应用列表以防止用户下载已经由通信公司动态禁止的内容。在一些实施例中,在检验过程中使用了该列表。而在另一实施例中,在MAS的各个级别结合安全代码以提供安全通信机制,如加密,安全通话等等。
而在另一实施例中,MAS提供各种计帐方法和策略。在一个实施例中,这些方法包括各种计帐选项,如下载应用收取的费用,基于周期的预约收费,指定周期或时间的试用,以及基于网络分组传输的基于分组的计帐收费。此外,在另一实施例中,MAS支持根据上述所列举的一个或多个计帐选项下载应用的预付费计帐。
在一个实施例中,MAS包含协议管理程序,预配管理程序,高速缓冲存储器,配置使用管理程序,计帐管理程序,记录管理程序,管理员以及心跳监视程序(Heartbeat Monitor)。协议管理程序将输入数据请求消息转换为MAS理解的格式,并将输出数据消息转换为访问MAS的各类用户设备及网络理解的格式。预配管理程序检验所述用户、设备以及应用,以确保该用户有权使用所请求的应用,所述设备能支持该应用的要求,以及该应用没有被例如通信公司禁止请求使用。另外,预配管理程序可预处理或后处理该数据请求以实现例如附加的通信公司计帐策略,或与其他MAS组件通信。配置使用管理程序在存在满足这些请求的应用时取出预先配置的应用,否则取出所指定的应用代码并将其提供给请求用户和设备。在一个实施例中,预配包括应用代码检查、优化、提交/安装以及打包。计帐管理程序生成计帐报告以及用于生成这些报告的计帐参数数据。另外,在一些实施例中,计帐管理程序为预付费计帐策略处理帐目。记录管理程序负责记录所有类型的请求和传输信息,包括未决请求的状态。心跳监视程序跟踪MAS组件的能力以执行它们预定的工作。在一个实施例中,提供一个第二心跳监视程序以跟踪第一心跳监视程序的状态。管理员支持对内容提供商、系统管理员、客户服务代表以及用户的MAS管理。在一个实施例中,管理员为内容提供商、系统管理员、客户服务代表以及用户实现基于Web站点的用户接口。在另一实施例中,管理员提供对下述一种或多种简表管理的支持:应用简表、用户简表、设备简表、java简表以及计帐简表。而在另一实施例中,管理员通过修改驱动MAS组件性能的数据支持现有MAS组件的修改。
在一些实施例中,MSA提供与系统的命令接口,该接口支持应用发现、内容下载以及内容下载历史。MAS还提供通过处理程序直接调用其中一个MAS组件的功能。在一些实施例中,MAS还提供API以访问每种组件并与MAS的各部分结合。
MAS还通过动态修改命令和参数映射到MAS的不同方面提供重新配置自身的能力。
附图说明
图1是示意无线服务的用户如何从移动应用系统请求和下载软件应用的框图实例。
图2是利用移动应用系统操作的手机管理控制台的框图实例。
图3是由示例性移动应用系统执行的为无线用户设备提供应用的一般步骤的简要流程实例。
图4是由示例性移动应用系统为无线用户设备执行应用发现所执行的步骤的简要流程实例。
图5是移动应用系统示例性实施例的组件的简要框图。
图6是移动应用系统的示例性预配管理程序的组件的框图实例。
图7是移动应用系统的配置使用管理程序的组件的框图实例。
图8是移动应用系统的管理员组件的框图实例。
图9A是内容提供商Web站点的应用提交屏幕的屏幕显示实例。
图9B和9C是内容提供商Web站点的附加信息提交屏幕的屏幕显示实例。
图10A是管理Web站点的分类维护屏幕的屏幕显示实例。
图10B是管理Web站点的未决应用维护屏幕的屏幕显示实例。
图10C-10E是管理Web站点的编辑未决应用屏幕的屏幕显示实例。
图10F-10J是管理Web站点的应用过滤程序管理接口各个部分的屏幕显示实例。
图10H是改变所选择的目标为Java简表、设备简表、内容简表或所有可用目标中的一种的屏幕显示实例。
图10K是管理Web站点的计帐方法管理接口的屏幕显示实例。
图10M-10P是管理Web站点内用户维护屏幕的屏幕显示实例。
图10Q是管理Web站点的消息接口的屏幕显示实例。
图10R是管理Web站点的报告屏幕的屏幕显示实例。
图10S-10T是管理Web站点内的设备维护屏幕的屏幕显示实例。
图11A是个性化Web站点的初始屏幕显示。
图11B-11D是利用个性化Web站点管理服务计划的屏幕显示实例。
图11E-11H是添加应用到用户的个人访问列表的屏幕显示实例。
图11J是从用户的个人访问列表删除应用的屏幕显示实例。
图11K-11L是在用户的个人访问列表组织应用顺序的屏幕显示实例。
图12是用于实现移动应用系统的实施例的通用计算机系统和用户设备的框图实例;
图13是由移动应用系统的协议管理程序与各种用户设备通信所执行的处理流程图实例;
图14是由移动应用系统的预配管理程序为确定所请求的应用的适用性所执行的处理流程图实例;
图15是由预配管理程序的执行封闭式预配例程所执行的处理流程图实例;
图16是由预配管理程序的检验应用例程所执行的处理流程图实例;
图17是由预配管理程序的检验用户例程所执行的处理流程图实例;
图18是由预配管理程序的检验设备例程所执行的处理流程图实例;
图19是由预配管理程序执行开放式预配例程所执行的处理流程图实例;
图20是由预配管理程序执行应用发现例程所执行的处理流程图实例;
图21是由移动应用系统的配置使用管理程序为提供预配应用所执行的处理流程图实例;
图22是由配置使用管理程序的获取预配应用例程所执行的处理流程图实例;
图23是由配置使用管理程序的预配应用例程所执行的处理流程图实例;
图24是由配置使用管理程序的检查应用例程所执行的处理流程图实例;
图25是由配置使用管理程序的优化应用例程所执行的处理流程图实例;
图26是由配置使用管理程序的安装例程所执行的处理流程图实例;
图27是由配置使用管理程序的打包应用例程所执行的处理流程图实例;
图28是由移动应用系统的计帐管理程序所执行的处理流程图实例;
具体实施方式
本发明的实施例提供用于维护和预配无线应用的基于计算机和网络的方法和系统。在此所讨论的预配/预配置(provisioning)是为特定用途(例如,为特定客户在特定类型的用户设备上使用)定制和分发内容。在一个示例性实施例中,提供一种移动通信系统(MAS)。MAS是以安全模式独立和共同工作以便为移动用户设备提供应用、资源及其他内容的互操作服务器组件集合。MAS允许例如无线设备,如蜂窝电话和手机,从MAS动态下载新的和更新的应用以在他们的设备上使用。动态下载功能大大降低了无线应用的开发商(内容提供商)的产品上市时间,从而使得产品支持和销售效率大为提高。用户能快速和方便地更新他们的无线设备上的操作软件并下载流行的应用(包括游戏)。利用MAS,用户能直接从网络更新他们的无线手机设备,从而避免向客户服务代表询问或访问本地服务中心以更新软件的耗时经历。MAS还支持灵活的计帐方案,包括预约计帐,这使得用户能预约特定服务以便只接收他们所希望的资源和应用。
尽管MAS的功能一般可应用于任何类型的客户无线设备,但本领域的技术人员将认识到,诸如用户设备、客户设备、电话、手机等术语可互换地用于指示能与MAS工作的任何类型的用户设备。另外,在此描述的示例性实施例提供用于通过一个或多个网络实现维护和分发无线应用的应用、工具、数据结构及其它支持。本领域的技术人员将认识到,本发明方法和系统的其它实施例也可用于许多其它目的,包括通过非无线网络(如因特网)向非无线用户设备(如个人计算机、固定的无线手机、具有因特网连接的电话,或机场或商场内的客户公用电话亭)维护和分发软件和其它内容。另外,尽管本说明主要是指以应用和资源形式存在的内容,本领域的技术人员将会认识到,这种内容也可包含文本,图形,音频和视频。而且,在下面的描述中,陈述了大量特定细节,如数据格式、用户接口屏幕显示、代码流,菜单选项等等,以便对本发明的方法和系统技术提供全面了解。然而,本领域的技术人员将认识到,不用在此描述的一些具体实例,或利用其它特定实例,如改变代码流的顺序,或在用户接口屏幕显示上的特定功能也可实现本发明。
图1示意了无线服务的用户如何从移动应用系统请求和下载软件应用的框图实例。MAS所工作的无线环境包含用户设备101和101b,具有收发信机103的无线网络102,无线通信公司服务104,MAS 105,以及不同的内容提供商106。内容提供商106通过或经通信公司服务104的许可为MAS 105提供应用。这些应用接着在被请求时由MAS 105检验、发布并预配给用户设备101。这种类型的预配在此称为“封闭式(walled garden)”预配,因为以这种模式预配和发布的应用对通信公司和/或MAS体系结构是已知的。内容提供商106也能作为应用主机,这些应用可以由用户设备浏览,其可由MAS 105动态预配。这种类型的预配在此称为“开放式”预配,因为其并不受MAS或通信公司体系结构范围内“已知”应用的限制。这些差别只是为了方便讨论起见,作为此两种不同类型的预配共有许多相似功能。MAS 105还能提供用于通信公司、内容提供商、客户服务代表和用户的多种工具,用于定制应用、服务以及可用于特定用户或用户组的计帐方案。
在图1中,用户设备101包括能通过无线网络102通信的电子设备,如无线手机、电话、电子管理程序、个人数字助理、便携式电子邮件机、游戏机、寻呼机、导航设备等等,而不管当前它们是否存在。一种或多种用户设备101(也称为客户设备)通过无线网络102与用户准备使用其服务的无线通信公司服务104通信。无线网络102具有收发信机103,其用于中继服务到用户设备101(并处理用户请求)。本领域的技术人员将认识到,无线服务的用户通过利用可选网络(例如因特网),以及通过利用具有更大外形的设备(如个人计算机101b,其可为下载应用提供更容易使用的接口),可补充在通过无线网络请求和下载无线应用中所涉及的任何或所有步骤。收发信机103典型地将无线通信转换为基于电缆的通信,以及将基于电缆的通信转换为无线通信,尽管本领域的技术人员将理解,也可以使用各种媒体和协议。收发信机103典型地利用通信公司特定通信协议经基于电缆的媒体与通信公司服务104通信。通信公司特定通信可使用任何适合于点对点通信的协议,如超文本传输协议(HTTP)和无线应用协议(WAP)。通信公司服务104提供通常为电话中心局所具有的服务,包括计帐、POTS(“简易老式电话服务”)和其它电话服务(如呼叫转移、主叫ID、语音邮件等)、以及可下载应用。移动应用系统105通过例如高带宽通信信道108或公众可访问网络(如因特网107)与通信公司服务104通信,以便为用户设备101提供预配应用。本领域的技术人员将认识到,移动应用系统105可与通信公司服务104完全或部分结合。利用封闭式预配,通常由内容提供商106生成的可下载应用直接或通过网络(如因特网107)提供给移动应用系统105或给通信公司服务104。这些可下载应用接着被移动应用系统105检验和定制并为用户设备101预配。在一个支持开放式预配的实施例中,通信公司的用户通过指定地址(如网络地址,或URL——统一资源定位)从Web站点下载应用。MAS从截取该用户的下载请求并接着为该用户定位、检验和预配该应用。
用户设备101依赖于客户端的应用管理实体(例如,手机管理控制台或浏览器)以请求和下载应用。图2是利用移动应用系统操作的手机管理控制台的框图实例。手机管理控制台处理用户无线设备上应用的通知、安装以及卸载。用户设备201为用户提供可用于该设备的功能菜单。用户可从该菜单例程选择,例如,该设备已经安装的管理应用以及当前可下载的新应用。例如,这些例程可允许用户获得所安装应用的版本信息,在可使用这些应用时下载这些应用的升级版,以及浏览将下载的新应用。菜单202是一个菜单实例,示意了可下载到用户设备201的新应用列表203。屏幕显示实例204示意了在用户已经选择了一个应用以下载时所显示的用户接口实例。屏幕显示204给出表示下载操作的图标205,正在下载的应用标题206,以及显示正在进行下载过程的状态条207。屏幕204还给出一个停止按钮208,其允许取消下载过程。
图3是示例性移动应用系统为无线用户设备预配应用所执行的一般步骤的简要流程图实例。这些步骤可应用于使用封闭式或开放式预配的任何预配方案。同样的这些步骤也可用于为有线设备预配应用,如通过图1中的因特网107连接的那些设备。步骤301-408演示了MAS是如何处理来自用户设备的下载应用输入请求,预配所请求的应用,并发送所请求的应用到此用户设备。预配包括下述一个或多个步骤:检索,检查,优化,提交/安装代码,以及打包,而且可包含为下载到目标设备准备好应用所需的附加步骤。例如,由于为系统增加了附加安全和计帐方法,预配也可包含用于加密和报告信息的步骤。不同的是,步骤301-408假定直接从MAS请求应用,这与间接通过浏览网络上的地址请求不同。(在开放式提供的情况下,MAS截取请求并试着预配和下载该应用,就好象是首次接收到该请求一样)。
具体来说,在步骤301,通常从通信公司或直接从内容提供商准备用于可下载的应用。应用可使用计算机语言编写,如Java,这种语言能在各种用户设备上执行。这些应用本地存储于通信公司的应用数据存储器(其可位于MAS或通信公司)中或可选择存储于所信任的第三方服务器中。(在开放式提供的情况下,第三方服务器不必是可信赖的。)下面将参考图9A~9C进一步描述用于提交应用给MAS的过程。在步骤302,用户发送下载应用的请求,检索可用应用列表,执行某一管理查询或其它指令。对输入请求(以及输出请求)执行协议转换以便能通过各类无线通信公司与用户设备通信。下载的应用可以是例如新的和流行的应用或将在用户设备上运行的软件的升级或最新版本。请求可利用例如统一资源定位(URL)进行,其使用HTTP消息接发以定位请求。MAS支持可扩展的命令处理引擎,并通过HTTP请求或通过应用编程接口(API)支持对作为MAS组件的各种处理程序、模块和其它结构的直接调用。在应用预配请求的情况下,下载特定文件的请求可通过指定识别待下载文件(应用或服务)的URL执行。在由管理查询的情况下,可通过管理向MAS中的servlet或其它代码发出请求。在步骤303,MAS确定该请求是否用于下载或用于某一其它命令,如果是下载请求的话,继续步骤305,否则在步骤304处理该命令。在步骤305,MAS确定指定的URL是否指示一个发布应用(从而指示将执行封闭式预配),如果是,继续步骤306,否则继续步骤308。在步骤306,检验用户请求的授权、设备能力,如果合适的话还检验预付费计帐授权。这种授权级别通常依赖于客户已经预约的服务级别。例如,在一个实施例中,MAS支持预付费计帐,这使得用户预先为使用应用支付费用。在此情况下,MAS将检验该预付费计帐帐户能在下载该应用之前能够支付该请求费用。也可应用其它因素,例如:是否正在促销、用户已访问该服务的次数、是否存在初步的报价、该服务被访问的日期或星期、将下载的字节数、以及其它这些因数。还要检查设备能力以确定所请求的应用是否能在该用户设备上按要求运行。这可通过例如比较所请求设备的已知设备简表和所请求应用的应用简表来执行。在步骤307,MAS确定用户的请求是否已经通过检验,如果是的话,继续步骤308,否则其拒绝该请求,并返回步骤302等待另一请求。
在步骤308,MAS确定是否已经存在对应该用户请求的预先预配的应用,以及其是否适合该用户设备。预先预配的应用是根据授权级别和用户设备能力已经预先定制的应用。预先预配应用在可用时可最小化系统等待时间并增强系统对相应的应用请求的响应时间。应用可根据用户的典型预约级别和典型用户设备(例如,通过预计用途确定)预先预配并存储用于之后的访问,以响应用户设备对与预先预配的应用一致的应用的请求。如果尚未预先预配应用,MAS动态预配该应用,这将增加处理该请求所需的时间,但将为配置使用生成定制的和授权的应用。
在步骤308,如果发现适合该用户设备的预先预配的应用,该预配方案继续步骤310,否则继续步骤309。在步骤309,为特定用户设备并根据访问权限预配应用。在步骤310,MAS为用户送出所预配的应用用于下载。
上面提到,MAS所支持的其中一个请求为检索一个可下载到用户设备的可用应用列表。这个过程称为应用发现。图4是由示例性移动应用系统为无线用户设备执行应用发现所执行的步骤的简要流程图实例。在一个示例性实施例中,提供两种类型的应用发现。第一种由系统驱动并生成一个系统导出列表。第二种由请求者驱动并指定由MAS匹配的搜索项以生成一个“相配的”应用列表。在步骤401,MAS确定用户是否已经提供了任何搜索项,如果是的话,继续步骤402,否则继续步骤403。在步骤402,MAS搜索已公布应用数据库中那些满足在该请求中指定的条件,并继续步骤404。作为选择,在步骤403,MAS确定一个初始列表。在一个实施例中,如果可得到用户的个性化列表则该列表由用户的个性化列表生成,否则MAS提供一个缺省列表。在步骤404,MAS基于用户和设备能力过滤该初始列表。例如,MAS可分析各种简表,例如用户简表、设备简表、以及应用简表,以确定该用户是否有权使用该应用,而且该设备(如同在设备简表中反映的那样)是否满足应用需要(如同应用简表中反映的那样)。在步骤405,MAS向该列表中添加任何系统定义的应用(称为“startdeck”)。这些应用可根据通信公司的可定制规则指定,例如,通过将可获得更多收益的应用放置在列表前面可给予这种应用“额外的”浏览时间。在步骤405,MAS根据请求设备的浏览能力(例如,所支持的标记语言)格式化该列表,并结束处理。
图5是移动应用系统示例性实施例的组件的简要框图。在这个实施例中,移动应用系统500包括协议管理程序503、预配管理程序504、高速缓冲存储器505、配置使用管理程序506、计帐管理程序507、记录管理程序508、管理员509以及心跳监视程序510。这些组件互操作以从内容提供商和通信公司服务接收应用,预配应用以交付给用户设备(如图1所示的那些设备),以及处理MAS指令。本领域的技术人员将认识到,组件的许多不同配置和功能划分或MAS有不同组件都是可能的。例如,为协议管理程序504和计帐管理程序507配置的功能可以组合到一个组件中。也可以存在和设想其它类型的配置。
MAS的各种组件互操作以便为通信公司(或系统)管理员或管理通信公司所提供服务的客户服务代表,开发和分发应用和服务给通信公司的内容提供商,以及消费服务、应用及其它内容的用户提供多种能力。管理员509为每一类型的这些用户提供各种用户接口以配置MAS、应用、计帐和其它服务,以及利用MAS定制用户经历。下面参考图8-11示意并描述了这些接口的实例。为示意这些预配特征,从用户调用MAS以下载应用到用户设备时在MAS部件中出现的处理步骤的观点来看描述MAS的功能,如参考图3的描述。本领域的技术人员将认识到,其它数据流和部件的使用都是适合的,并且取决于所处理的指令和/或如何调用这些组件或它们内部的代码。
具体来说,在图5所示的示例性实施例中,来自用户设备,如J2ME或WAP手机的通信被提交给移动应用系统500并从其接收,分别作为输入请求501和输出数据502。通常,MAS由用户通过命令接口(与基于Web站点的接口相反)调用以处理两种不同类型的输入请求:应用发现和请求应用的下载。还可调用MAS以处理其它命令。并且,可直接调用MAS的组件,例如执行管理请求以获得使用信息。当输入请求501为应用发现请求时,MAS基于用户、应用简表和设备简表搜集并返回一个可用和适当的应用列表。参考图4描述了通常由MAS执行以完成应用发现的步骤。作为选择,当输入请求501为下载指定应用的请求时,MAS检索该应用,检验其是否适合和允许下载到该设备和用户、预配和打包所请求的应用、并发送所打包的应用到请求用户设备。参考图3描述了通常由MAS执行的用以完成预配应用的步骤。
协议管理程序503执行用户设备和预配管理程序504之间的消息的协议转换。协议转换确保MAS 500能与任何用户设备(有线或无线)通信,独立于网络(如图1中的无线网络102)中使用的通信协议,以及允许在各种协议内嵌入的输入请求得到处理。示例性协议管理程序503具有用于WAP和HTTP协议的内置支持,而且能利用众所周知的技术扩展以便为附加的格式和协议提供支持。一个或多个独立网关,如WAP网关(未示出),可驻留于协议管理程序503、输入请求501/输出数据502之间。这些网关可用于处理特定目标协议的消息。协议管理程序503也可任选包含插件安全层用于处理数据加密和解密,以及用于端到端安全支持的证书管理。本领域的技术人员认识到,协议管理程序503可扩展到包含用于期望的安全通信的其它类型的支持。
在正确转换了输入请求后,预配管理程序504处理该请求,参与协助所需的其它组件。例如,如果该请求是管理查询,则预配管理程序504可将该请求转发到MAS中的管理servlet。如果该请求是针对可下载到用户设备的应用列表,那么预配管理程序504通过比较可从通信公司得到的每个应用的能力和需求与对应该用户设备和用户的适当设备和用户简表可询问数据库311和简表管理代码以生成这种列表。如果在另一方面,该请求来自用户下载指定应用,则预配管理程序504和配置使用管理程序506交互作用以获得和准备所请求的应用用于分发给用户。在一个实施例中,预配管理程序504通过用户请求检验所涉及用户、设备、计帐以及应用信息,而配置使用管理程序506检索和预配该应用。由配置使用管理程序506执行的应用预配过程包括下述一个或多个处理步骤:检索、检查、优化、提交/安装代码以及打包,下面将参考图7讨论这些步骤。
预配管理程序504从协议管理程序503接收用户请求并处理在这些用户请求中包含的下载请求或其它命令。下载请求基于MAS可访问的与每个下载请求一同提交的信息以及其它信息(例如,在数据库511中存储的简表)处理。当处理下载应用的请求时,预配管理程序504检查为用户、用户设备之前创建或可用简表,以及检查与计帐有关的请求应用和信息,以利用该特定的用户设备并根据该用户的计帐方法确定该用户所请求的应用是否适合下载。在检查了这些简表后,预配管理程序504通过试图评估例如所请求的应用是否能在该用户设备上成功运行许可或拒绝该请求。这种评估是通过例如确定该特定用户设备能力是否满足该应用的要求执行的。预配管理程序504还确定是否已经为所请求的应用建立了计帐方法,以及该用户是否适宜及有能力执行该下载。例如,如果该请求指示该用户是预付费计帐程序的一部分,则预配管理程序504检验该用户的预付费计帐帐户资金是否足以支付下载该应用。
一旦许可,预配管理程序504可从高速缓冲存储器505或从配置使用管理程序506获得所请求的应用。通常,高速缓冲存储器505用于以预先预配提供的格式存储频繁被下载的应用,而配置使用管理程序506用于根据请求动态预配应用。由通信公司控制的应用通常预先预配并存储在高速缓冲存储器505中,而可通过例如因特网站点获得的应用通常只在请求下载时才预配。
高速缓冲存储器505用于为用户设备提供请求的应用快速交付。高速缓冲存储器505用于为特定简表,如为特定用户设备或根据授权的访问,高速缓存预先处理的预配应用。存储于高速缓冲存储器505中已经通过检查、优化和提交/安装的应用被加上标签作好准备以配置使用。本领域的技术人员将认识到,通过在MAS的其它组件之间也实现类似的高速缓存功能可增强系统性能。例如,位于配置使用管理程序和因特网之间用于保存因特网应用的高速缓冲存储器可降低与因特网应用通信所需的访问时间。而且例如,可实现一个保存未存档JAR文件的高速缓冲存储器可加速提交/安装过程。其它配置也是可能的。如果在高速缓冲存储器505中没有找到许可特定用户和特定设备的请求应用,则可通过配置使用管理程序506检索。配置使用管理程序506准备应用以交付给用户设备。配置使用管理程序506管理准备、维护和预配应用的多方面,如恶意应用检测,受限API的使用,支持试用分发(只使用固定次数或固定周期)和其它计帐方法,为正请求的用户设备优化应用大小,以及其它方面。配置使用管理程序506获得应用并在请求应用实例时为其预定的(所请求的)使用预配每个应用实例。也可通过预先为简表准备应用并存储这些结果用于高速缓冲存储器505或其它数据库中的快速访问,为特定设备和/或用户简表预先配置(“预先预配”)应用。下面将参考图7讨论,配置使用管理程序506可从通信公司的应用数据库或从远程应用主机(信任的或不信任的)或从任何其它应用源配置应用。在配置使用管理程序506已经适当预配了所请求应用后,其发送所请求的应用返回预配管理程序504以用于任何输出响应的后处理。
当交付预配的应用给用户时,有关该事务处理的细节典型地记录在记录管理程序508中,计帐管理程序507可访问记录管理程序508以实现各种计帐方法。所记录的数据包括与输入请求501和配置的应用有关的信息,如:用户ID,下载大小,下载时间和日期,被下载的特定应用。由于记录了有关下载的大量信息,通信公司在根据不同服务和用户类别计帐应用预配的方法中具有很大灵活性。通信公司可计帐例如使用的广播时间量,下载使用时间,下载数据量,客户统计,或基于特定应用的下载量。
计帐管理程序507在增强计帐方法着起辅助作用。在一个示例性实施例中,提供下述几个初始计帐选项:(1)基于下载应用的下载费用;(2)基于网络分组传输的基于分组的计帐;(3)基于周期性,如每日、每周或每月,费用的预约费用;(4)基于任何试用计量的试用费用,例如应用可执行的次数;以及(5)预付费计帐。这些计帐选项可以同时在通信公司一级和应用一级定制,而且为特定应用提供不只一种选项时,用户可选择希望的计帐选项。在示例性移动应用系统500中,提供了应用编程接口(API)以便很容易与通信公司现有的计帐子系统结合。如果通信公司支持预付费计帐,则用户可建立一个由通信公司维护的帐户。在一个实施例中,用户预先为之后将下载的应用预付费。当用户下载预付费应用时,计帐管理程序507将计帐记录转发给通信公司的预付费计帐系统,以便能计帐和更新用户的帐户。在一个可选实施例中,预付费用户帐户由计帐管理程序507存储和维护。其它配置也是可能的,也可支持其它类型的计帐方法。在计帐管理程序507生成了有关计帐的信息后,该应用被转发到协议管理程序503,如果需要的话,其在此接着针对不同协议被重新格式化并发送给客户作为输出数据502。
下面参考图8-11讨论的管理员509与该示例性MAS 500的其它组件相互作用以便定制MAS 500的各个方面。例如,管理员509允许通信公司实现可定制的相关预配策略,并通过重新编程移动应用系统自身的组件结合MAS与它们自己的基础构件,从而允许在执行简表管理、报告生成、计帐方法管理及服务器管理中增强用户、通信公司、系统管理员以及内容提供商的灵活性。
心跳监视器510在其它MAS 500组件上监视和提供报告,并在出现相关系统事件时提供适当通知,以检测系统中出现的问题,如变得无效的组件。例如,心跳监视器510可监视协议管理程序503以确定协议管理程序503是否在预定时限内响应了输入请求。如果心跳监视器确定协议管理程序503没有正确响应,其可标记该事件并通知系统管理员。在一个实施例中,提供多个心跳监视器510以便第二监视器可监视第一监视器是否正常工作,并在必要时接管其工作。心跳监视器510既能主动监视(通过状态请求轮讯设备),又能被动侦听(通过检验在适当时刻是否出现特定类型的通信)。心跳监视器510还可提供与行业标准协议的接口,例如简单网络管理协议(SNMP),以使其它外部代码能监视MAS。
如同参考图5的描述,MAS的预配管理程序处理输入的下载请求和其它指令,并驱动应用的动态预配以用于下载。图6是移动应用系统的示例性预配管理程序组件的框图实例。在一个实施例中,预配管理程序600包括MAS命令和控制处理器620(“MCCP”),检验程序601,XSLT处理器630,请求预处理器和后处理器640,以及MAS数据查询引擎650。MCCP负责解码请求并将其导引到正确的MAS子部件,以下载发布的应用或执行应用发现。检验程序601包括用户检验程序602,设备检验程序603,预付费计帐检验程序604,以及应用检验程序605,其执行各种检验以确定应用是否适合用户和设备。XSLT处理器(其可实现为例如行业标准扩展样式表)用于根据请求设备的描述能力格式化数据。在一个实施例中,其支持XML的样式表,但可容易地扩展到为HTML、Java、WML、XHTML Basic、以及文本或任何其它标记或描述语言提供附加样式表。请求预处理器和后处理器640控制请求“分组”中的参数,以便在其它组件之间通信,而且可扩展到能在此级别“挂上”的任何类型的处理。MAS数据查询引擎650管理与各数据库的通信。其包含用于预配规则651、简表652、以及配置数据653的阅读程序。尽管为查看方便起见,没有用箭头示意这些组件的连接,本领域的技术人员将认识到,这些组件是通过多种方式互连及互操作的。
预配管理程序600首先从协议管理程序(例如,图5的协议管理程序504)接收输入请求。预配管理程序600通过分析该输入请求并动态修改该请求以允许增强、修改或限制之后将采取的预配、计帐或记录步骤预先处理该请求。这种动态修改使得通信公司能将它们自己的基础构件动态挂到系统上。例如,预配管理程序600能查看与输入的下载请求一道传递的请求信头,并修改、添加或去除该信头从而修改系统行为。由于MAS中的其它组件使用这些信头中包含的信息以执行它们的功能,升级或修改信头信息提供了扩展或限制特定请求的功能或修改MAS行为的手段。
请求在从MAS命令接口接收时(与直接通过站点或API调用相反)由MCCP处理。如果该请求是用于应用发现或下载内容,使用各种检验程序601确定应用的兼容性。如果请求是针对某一其它命令,则其被相应地处理。
应用检验程序604确定所请求的应用是否已经被通信公司禁止配置使用。具体来说,应用检验程序604检查通信公司不想被下载的应用列表,以确定通信公司是否已经禁止所请求的应用。这种情况可发生在例如突然发现一个应用具有恶意行为以及通信公司想立即暂停其分发时。
用户检验程序601从是谁发出请求来确定用户的身份并确定授权用户的服务级别,以确定用户是否有权使用一个特定应用。授权用户的特定服务可通过利用简表阅读程序652检索相应的用户简表并单独或联合检查各种因素进行确定。因素可包含例如任何一个月内允许的下载数量、下载所需时间、作出请求的日期和星期、特殊提供的可用性以及宽限周期等等。用户检验程序601还可确定用户所属的用户组,并通过确定该用户组整体允许和不允许的服务确定许可该用户的访问级别。下面参考图17描述由用户检验程序执行的确定过程的一个示例性实施例。
设备检验程序602确定作出请求的用户设备的类型和能力,并确定该设备能力是否足以支持一个特定应用。用户设备能力是通过利用简表阅读程序652检索对应所请求用户设备的设备简表(如果存在的话)来确定的。检查该设备简表以确定该设备是否具有所请求应用所需的特性以便在该用户设备上正确地执行。参考图18描述由设备检验程序602执行的确定过程的一个示例性实施例。
当MAS支持预付费计帐方法时,预付费计帐检验程序603查询通信公司预付费计帐基础构件,由此存储各个用户的计帐记录。通常只有在用户帐户中有足够资金时才允许下载请求进行预配。
在预配管理程序600已经确定该用户设备适合运行所请求的应用后,用户便有权使用该应用而且具有足够资金(如果为预付费计帐方案的一部分),接着预配管理程序600调用配置使用管理程序的预配接口以获得相应的预配应用。参考图7描述的配置使用管理程序检索并提供所请求的应用并将其返回给预配管理程序600。
在从配置使用管理程序获得了适合下载到用户设备的预配应用后,预配管理程序600选择性地后处理该请求。由于进行了预处理,后处理可对所检验的请求执行附加修改以便这些修改可用于扩展的MAS功能。例如,该使命令与请求相关联,这些命令之后将指导协议管理程序(例如,图5的协议管理程序503)以为定制协议打包该请求。
上面提到,配置使用管理程序(如图5的配置使用管理程序506)从预配管理程序接收用户请求或接收指导请求(如从系统管理员)以获得对应该请求的预配应用。该请求包含所请求应用的URL,其指示该应用的源地址。在一个实施例中,URL参考一个镜象Web站点列表并从由MAS确定的最佳地址检索应用。在另一实施例中,URL为代理,而且配置使用管理程序重定向URL到其实际位置。这些方法可为该系统提供附加的安全层。本领域的技术人员将认识到,利用这些技术可使用用于指示应用位置的任何方法,而且这些技术工作于URL之外的指示器上。该应用被配置和发送到用户之前也可执行检查、优化和提交/安装以用于交付。
图7是移动应用系统的配置使用管理程序组件的框图实例。配置使用管理程序700包括检索程序701,远程访问程序702,本地访问程序703,检查程序704,优化程序705,方法安装程序706,应用打包程序707。检索程序701利用远程访问程序702或本地访问程序703从适当的主机服务器获得应用代码,接着使应用经历各种组件的处理以正确地提供应用代码。特别地,检查程序组件704检查该应用中是否有恶意代码和禁用API;优化程序组件705可能的话可降低代码大小;而方法安装程序706结合通信公司指定策略和管理功能(例如计帐和通知消息)到代码中。
具体来说,检索程序701设计用于允许多个用户和多个通信公司利用不同协议通过各种网络通信。其部分通过在软件应用(内容)驻留用于分发的位置提供通信公司灵活性实现的。例如,通信公司可选择通过在FTP或在HTTP或在数据库(例如,标准DBMS)的指定目录存储这些应用从他们自己的网络提供所有应用。通信公司应用存储器708就是这种数据库,其可驻留在MAS自身的服务器上。检索程序701激活本地访问程序703以得到本地存储数据的副本。通信公司也可选择允许信任的第三方应用提供商从远程应用主机709提供应用,这是在信任的第三方应用提供商的控制之下进行的。另外,当用于执行开放式预配时,检索程序701可从第三方主机而不必从信任的来源检索应用。在此两种情况下,通信公司使用由第三方提供的URL指定输入请求到驻留于其中一个远程应用主机709上的特定可下载应用。在可通过公共协议访问这些主机时,检索程序701通常激活远程访问程序702以检索驻留于远程应用主机709上的这些应用。在一个实施例中,可优化本地访问程序703以快速检索得到本地存储的数据,而远程访问程序702实现检索在可通过公共网络访问的驻留于主机上的应用所必需的公共协议。
基于信任第三方主机或通信公司的喜好也可事先预配由检索程序701检索的应用代码,如果检索程序701获得未预配的代码,该代码被送至检查程序704、优化程序705以及方法安装程序706用于进一步的处理。检查程序704检查检索的未预配应用代码以检测恶意代码。在Java代码上,检查程序704也可执行应用代码的类分析以检验该应用中的类符合希望的标准,如API调用的数量、类型和频率。另外,检查程序704使用应用过滤程序以检测怀疑具有侵犯性、恶意行为或未授权请求用户、目标设备或其它一些目标使用的包和方法名称、类、域或其它形式的API。检查程序704也可使用应用过滤程序检测API使用模式。应用过滤程序是参考图10F-10J进一步讨论的安全技术。检查程序704可用于其使用由预配管理程序检索得到的用户和设备简表(参考图6的描述),以便检查程序704能够强制执行基于每设备或每用户的限制。在一个示例性实施例中,检查程序704允许调整这些参数的阈值,以及调整由其它实体(例如,记录管理程序)执行的进一步检查的标记参数阈值。如果检查程序704发现可可能的恶意行为,可阻止(或警告用户)该预配(以及后续下载),并向记录管理程序报告该非法行为和侵犯者身份。
在检查程序704成功检查了检索到的未预配应用代码后,转发该代码到优化程序705进行进一步处理以减小该应用的大小。优化程序705采用本领域众所周知的方法以缩短变量名称以及从应用中去除未使用的代码。这种优化过程通常使得下载更快。优化程序705也可使用本领域中众所周知的技术以加快应用执行的速度,例如改变特定指令的使用为更有效的指令。本领域的技术人员将认识到,由于MAS的组件可以被扩展或修改,因此可结合任何优化技术到本系统中。
优化之后,经检查、优化的应用代码被转发到方法安装程序706用于进一步处理。由于可下载应用的提供商通常不具备为个别用户修改所请求的应用的能力,因此希望修改应用的代码以增加用户特定代码。例如,通过插入使得应用只可执行特定次数或只可执行指定一段时间的代码到应用中可实现诸如“试用”方案的计帐选项。类似的,也可提交/安装报告用于记录目的信息的代码或为其它计帐选项(如基于分组的计帐,其根据网络传输的分组数量计帐)收集信息的代码。同样,在开放式预配的情况下,也可提交/安装警告用户其将从一个不可靠来源下载和执行内容的代码。方法安装程序706也可根据通信公司指定的其它策略(例如实现促销和广告战的策略)修改应用中的代码。本领域的技术人员将认识到,也可为其它目的提交/安装代码,而且利用众所周知的方法(如操作库)或通过子类和方法可以在预定位置提交/安装代码。
在方法安装程序706提交/安装了所请求的应用后,应用打包程序707打包已执行检查、优化和提交/安装的应用。应用打包程序707通过以用户设备可读出的方式格式化应用文件的内容,从预配管理程序获得的设备简表确定以,如参考图6的描述。例如,许多用户设备能读出以压缩的“JAR”格式(Java归档文件格式)提供的文件,这是一种用于压缩和打包所请求Java应用的格式。由于一些设备不能接受压缩的JAR格式文件,应用打包程序为那些不能接受压缩JAR格式文件的用户设备提供定制的预配应用打包服务。本领域的技术人员将认识到,利用众所周知的技术,如通过再细分类打包例程,可将安装用于非JAR格式的这些打包转换器或其它转换器到应用打包程序807中。另外,某些应用设备可能限制其可接收分组的大小。当执行检测时,应用打包程序807可为这种用户设备将所预配的应用打包到多个数据文件,用户设备在接收后可将它们组装为单个JAR文件,这些文件之后可被用户设备用于安装应用。
下面参考图5提到,管理员组件(例如,管理员509)可以被不同类型的用户用来配置移动应用系统的各个组件以及指定喜好。图8是移动应用系统的管理员组件的框图实例。在一个实施例中,管理员800优选提供多个基于Web的用户接口以允许内容提供商、系统(通信公司或MAS)管理员、用户以及客户服务支持人员访问MAS组件或定制他们的经历。特别地,该管理员示例提高内容提供商Web站点801、管理Web站点802以及个性化Web站点803。下面参考图8-11示意和描述了这些接口的屏幕显示实例。本领域的技术人员将认识到,每个描述的Web站点可包含多个屏幕显示,而且这些和/或其它屏幕显示和Web站点能以各种配置组合以实现相同效果。例如,管理员Web站点802也可选择包含独立的客户服务Web站点804,其可被(通常为通信公司的)客户服务代表用来代表通信公司管理各个用户帐户。
管理员800为内容提供商提供内容提供商Web站点801,以用于向MAS提交可下载应用,用于监视是否已经复审(例如检查)了所提交的可下载应用以及是否同意发布。内容提供商还可使用内容提供商Web站点801建议修改应用简表,监视应用的受欢迎程度,或与MAS管理员通信。在一个实施例中,内容提供商登录内容提供商Web站点801上的帐户(利用管理Web站点801预先配置),输入内容提供商希望提交的文件的引用位置(例如,URL或其它位置参考)。图9A是内容提供商Web站点的应用提交屏幕的屏幕显示实例。内容提供商选择是将应用放置在通信公司的应用存储器还是在远程服务器。在基于Java的实施例中,所提交的文件优选JAD或JAR文件,然而本领域的技术人员将认识到,也可支持其它格式和其它语言。在提交了该文件后,管理员(例如,图5的管理员509)检查该文件以确定是否应同意该提交。在一个实施例中,管理员执行许多由预配管理程序和配置使用管理程序(分别参考图6和图7描述)执行的检验和检查,而且在一些系统中,管理员、预配管理程序以及配置使用管理程序可以部分或全部合并。在一个实施例中,管理员检查所提交的URL以确保其是否有效而且没有被另一应用简表使用,并下载JAD中涉及的应用。其接着分析该应用代码以确保其匹配该JAD文件,并且没有使用被主动应用过滤程序和其它检验程序禁止的任何API。例如,管理员可执行详细的类分析,创建应用使用的API列表。管理员接着能检查根据任何相关应用过滤程序列举的API并且能决定拒绝该内容。另外,管理员能比较所列举的API与可用设备简表以提供支持这些API的设备列表给内容提供商。内容提供商可确认该应用将在所有建议的目标设备上运行或能取消不应当被视作目标设备的选择。在签名应用的情况下,管理员还查看签名是否有效。本领域的技术人员将认识到,由管理员提供的检查可以被编程扩展到包含其他检验以及满足由他们引起的特殊合法性需求。例如,管理员也可自动检验由特定JAR动态加载的类文件并在希望的时候替换它们。其它限制该内容对特定设备适用性的参数也可很容易地添加到提交检验过程中和/或在下载时刻执行的检验过程中。
一旦已经定位了该应用而且检查了是否提交,内容提供商Web站点801优选从内容提供商请求有关所提交应用的附加信息,在许可该应用时,该信息成为应用简表的一部分。例如,内容提供商可包含应用的名称和简要描述、支持的Java简表列表(这些可与设备简表进行比较以确定能运行该应用的设备,编写该应用的语言,以及计帐信息,如建议的销售价格和试用参数)。图9B和9C为内容提供商Web站点的附加信息提交屏幕的屏幕显示实例。指定这些信息,包括应用源语言,允许MAS在功能上存储和支持具有相同名称能在甚至是利用不同语言编写的多种设备上运行的等效程序。内容提供商也可选择所提交应用所属的用户类别,建议一个价格,列举Java简表,指定存储需求、特定兼容设备等等。在一个实施例中,内容提供商选择是考虑能通过管理站Web点802改写的建议考虑的。
在内容提供商提交了附加应用信息后,管理员可通知所提交应用的无线通信公司系统管理员并请求通信公司许可所提交的应用。图9D是由管理员生成的应用提交通知实例。管理员利用内容提供商提交的信息(包含所提交的应用)以及在检查过程中生成的数据以创建应用简表,该简表在数据库(例如,图5中的数据库511)中存储和维护以用于预配管理程序(参考图6描述)的检验过程。内容提供商在其它时候也可使用内容提供商Web站点801以浏览和编辑它们自己的已发布和未决应用列表。
管理员800还提供管理Web站点802例如用于MAS系统管理以管理由内容提供商提交的已发布和未决应用。在一个示例性实施例中,管理Web站点802接口提供独立的节点以建立、配置和/或管理帐户、应用、用户、设备、服务器以及报告。在图10A~10V中示意了为这些节点提供用户接口的各种屏幕显示实例。
系统管理员利用管理Web站点802的帐户节点为管理员、内容提供商、以及客户服务代表建立帐户。客户服务代表可有效登录并获准访问特定用户的帐户并根据需要进行修改。例如,客户服务代表可改变用户帐户以便为一个特定应用重新启动试用周期。
系统管理员利用管理Web站点802的应用节点管理已发布和未决应用,以管理应用类别、确定在应用(内容)检验过程中使用的应用过滤程序、全局管理计帐方法、以及建立未决应用的工作流程通知。在MAS中,通常以系统管理员维护的不同内容分类发布应用。图10A是管理Web站点的分类维护屏幕的屏幕显示实例。可以为不同用户组分配内容类别,从而允许属于一个特定分组的用户下载分配给该组用户分类中的应用。内容提供商还可在提交应用给MAS时建议一个应用分类。
系统管理员还利用管理Web站点802的应用节点评估所提交的应用,称为“未决”应用。图10B是管理Web站点的未决应用维护屏幕的屏幕显示实例。系统管理员可编辑、许可或拒绝列为未决的任何应用。管理员负责对根据无线通信公司的与预配提交应用有关的策略评估所提交应用的应用简表,并确定是拒绝还是许可该应用。通常,系统管理员在内容提供商提交应用时得到通知,以便该应用能被评估用于许可和发布。系统管理员可许可、改变或拒绝所提交的应用及其相关信息并相应地更新应用简表。如果许可该应用,则该应用被记入通信公司的应用存储器中(或成为可从指定的信任第三方服务器得到),以便用户能访问该应用。还可发送一条消息通知内容提供商所提交的应用被认可。如果需要改变所提交的应用和/或与其相关的应用简表,通常发送一条消息通知内容提供商内容的改变。如果应用被拒绝,则从数据库中删除该应用简表并通知内容提供商所提交的内容被拒绝。
如图10B所示,系统管理员还可使用管理Web站点802的应用节点以审阅或编辑与所提交的应用(如存储在应用简表中)相关的信息。图10C-10E是管理Web站点的编辑未决应用屏幕部分的屏幕显示实例。系统管理员可修改诸如标题、说明以及类别等信息,而且可改变用于应用检验和检查的具体细节,例如Java简表和资源需求的选择。另外,管理员可修改用于特定应用的计帐方法相关信息(优选遵循通信公司的全局计帐方法)。例如,系统管理员可改写提供商指定的原始价格提高应用的销售价格以增大通信公司利润。系统管理员也可通过例如即使在内容提供商只指定按惯例的购买选项时添加试用费用以为应用指定附加的计帐选项。在一些实施例中,管理员可审阅提交过程中在所提交的应用上执行的具体类分析结果。
系统管理员也可利用管理Web站点802的应用节点为MAS指定安全设置和策略。例如,管理员可定义在检查过程期间配置使用管理程序(例如图5中的配置使用管理程序506)使用的应用过滤程序以防止具有特定设备简表的用户设备、某一内容提供商、或使用了特定API的Java简表、或由于使用了特定API或API模型(例如特定Java API调用)的全局目标。这些API以语言相关模式指定,而且对于基于Java的实现来说包括至少包、类、方法以及域名。为特定目标指定过滤程序的能力在发现某一API或API组合不是工作在特定设备或来自特定内容提供商时非常有用。通过利用这些过滤程序编程MAS,系统管理员在单个事件发生后或在接收到来自例如通信公司、内容提供商、用户或设备制造商的通知后可动态避免另外的用户设备的进一步“损坏”。另外,在开放式提供方案中可应用应用过滤程序到不可靠或未知的第三方内容中,由此不用修改它们就能为现有应用提供某一程度的安全策略。
图10F-10J是管理Web站点的应用过滤程序管理接口各部分的屏幕显示实例。如图10G所示,管理员可选择特定API为禁止选择目标。图10H是改变选择的目标为Java简表、设备简表、内容提供商或所有可用目标中的一种的屏幕显示实例。本领域的技术人员将认识到,可扩展应用过滤程序机制以支持不同类型的过滤程序和针对不同实体。
上面提到,系统管理员还可利用管理Web站点802的应用节点指定由通信公司支持的全局计帐方法。图10K是管理Web站点的计帐方法管理接口的屏幕显示实例。在图示的实施例中,管理员可为每下载、每网络使用(例如,基于传输)和每预约收费选择多种不同计帐选项,以及免费试用。
其它功能也可通过管理Web站点802访问系统管理员。例如,系统管理员可利用用户节点管理用户对MAS的使用以及为每个用户建立用户简表。用户简表维护已经被每个用户下载的已发布应用列表,维护特定用户不能运行的禁用应用列表,以及创建和维护该特定用户所属的用户组。在一个实施例中,这些简表存储在MAS的数据库中(如图5中的数据库511)而且由预配管理程序的简表阅读程序(如图6的简表阅读程序652)读出。
图10M-10P是管理Web站点内的用户维护屏幕的屏幕显示实例。管理员可创建可指定给用户的用户组或预约(例如,图10M-10N)以及能通过使内容分类与每个组关联确定每个用户组可用的内容(例如,图10P)。为用户组指定特定内容分类称为服务计划(参见图10P)。MAS利用该信息确定用户是否有权下载所请求的应用。用户可指定改变他们的服务计划从而自动变得有权访问与这些计划相关的内容。也可为特定用户组(如缺省用户组)提供缺省分类以便为该用户组中的用户提供可用的已发布应用分类。
系统管理员还可发送一条消息给用户,如通知对于用户已经下载的其中一个应用可得到更新版本。这种行为有时称为“推送(push)”能力。用于联系用户的信息通常可从用户的用户简表获得。图10Q是管理Web站点的消息接口的屏幕显示实例。系统管理员也可利用在管理Web站点802的报告节点可得到的报告模板和或用户定义的报告以获得销售数据,如流行趋势和流行的应用下载。图10R是管理Web站点的报告屏幕的屏幕显示实例。由于下载应用的请求被记录管理程序(例如,图5的记录管理程序508)记录,而且每次事务处理的细节都记录在跟踪数据库中(如图5的数据库511),系统管理员可查询跟踪数据库以生成报告。在一些实施例中,通过预配管理程序的MAS数据查询引擎(例如,图6中的MAS数据查询引擎650)提供对这种查询的支持。系统管理员可利用例如预定的报告模板或定制的报告模板生成这些报告。
另外,假定方法安装程序706已经适当地提交/安装了所下载的内容,系统管理员可选择通过无线网络远程激活或撤消下载的应用。例如,可对已提交/安装的应用强制执行主机服务器(通信公司或第三方)检查,看是否存在可用的新版本应用,而且能提示用户确定是否下载该应用的新版本。还可对已提交/安装的应用强制执行主机服务器检查,以确定所提供的应用以确定是否已超过使用周期或已超过应用可运行的次数(例如,使用试用周期计帐选项)。也可对已提交/安装的应用设置时刻限制,这种限制例如可限制该应用只可在一天的预定时间段内使用某一次数。即使在应用已经下载到用户的无线设备后,这些限制也能有效地使得系统管理员取消或限制用户执行应用的权利。本领域的技术人员将认识到,也可类似地执行其它限制和功能。
系统管理员可利用管理Web站点802的设备节点提交和维护在应用预配期间用于检验的信息。例如,系统管理员可创建和维护一个对应特定设备的设备简表列表。通常,系统管理员为MAS支持的每个设备创建一个设备简表。图10S-10T是管理Web站点内的设备维护屏幕的屏幕显示实例,可以按需要增加新的设备简表和相应的设备标识。每个设备简表包含硬件特定信息和资源特性,如运行时存储器及闪存数量、芯片标识、最大可下载大小以及该设备是否支持“OTA”。(OTA是指SUN微系统公司的空中一致性规范。符合OTA规范的设备支持在其它设备能力中的成功下载跟踪)。
每个设备简表还指定设备支持的单个Java简表。Java简表指定一个设备支持的Java API。例如,符合MIDP 1.0标准(一个众所周知的定义由设备实现的Java API集合的标准)的设备通常具有指示这种一致性的设备简表(例如,参见图10T)。设备(及相关Java)简表由预配管理程序在检验过程期间用于与应用简表相比较以确保一个特定设备具备这些资源而且支持该应用所需的API集合。图10U-10V是利用管理Web站点维护Java简表的屏幕显示实例。尽管同一Java简表可与多个设备相关,但一个设备通常只支持一个Java简表。系统管理员通过指定能指定和描述API集合的存档文件名(例如,JAR文件或.zip文件)加载Java简表。MAS检查所指定文档的结构(包、类、方法以及域定义)并生成包含这种结构的简表。这些简表也可用于创建应用过滤程序,这种过滤程序能防止使用特定API的应用的预配和/或下载。尽管上面主要讨论的是实现Java的设备和Java API。本领域的技术人员将认识到,MAS也可适合于其它语言规范或其它语言能力的设备,只要该语言能支持确定特定API、对象、类、变量和/或其它数据结构是否出现在一个应用中并被该设备支持,以及只要能在字节码级别确定该结构。另外,本领域的技术人员将认识到,这些技术也可适合在源代码级别使用,只要接收的应用可编辑或解释该资源以生成可执行文件。
管理Web站点802使得系统管理员能实现各种安全技术和策略以补充由预配和配置使用管理程序所提供的检验和检查过程。这种技术的其中一种为上面讨论的定义应用过滤程序的能力。这种过滤程序可用于指定使用特定设备或其它目标不应被应用调用的特定API。在应用预配过程中可识别这种受限的调用和结构以响应用户的下载请求,以及在内容提供商提交了应用后帮助确保用户不会加载不适合特定设备的代码。所提供的另一种安全技术是重定向URL的能力。系统管理员可通过利用管理Web站点802的服务器节点指定URL重定向映射以便为MAS的用户便利和安全重定向URL。例如,指向未授权广告站点的URL可被重定向到由付费广告商提供的广告的URL。类似地,在清除了内容后,系统管理员可能希望将之前指向该内容的URL重定向到错误消息。而且,重定向的URL可用于隐藏应用的真实位置以使应用能更容易地移动。在接收了输入数据后,MAS比较指定应用的任何URL与利用管理Web站点802管理的重定向URL列表,并在这样指定时重定向它们。本领域的技术人员将认识到,可为MAS添加和使用附加和其它安全技术,而且在必要时通过管理Web站点802配置以提供各种安全机制以便确保用户、内容提供商、管理员和各MAS组件之间安全通信,以及确保存储于MAS中的、通过MAS可得到的、或存储于客户设备中的数据的安全传输。例如,由于制造了支持诸如KSSL的安全协议的设备,可配置各种MAS组件以使用这些协议。另外,在适用时可安装安全接口作为基于Web接口和由它们操作的MAS组件之间的组件。
管理员800还提供个性化Web站点803,该站点可被用户用于订购、维护和显示与用户相关的服务和信息以及管理应用。图11A-11L是个性化Web站点的屏幕显示实例。图11A是该个性化Web站点的初始屏幕显示。用户利用个性化Web站点803通过改变服务计划预约附加的内容分类(这可能引起用户计帐金额的改变)。图11B-11D是利用个性化Web站点管理服务计划的屏幕显示实例。当选择一个新的服务计划时,用户便有权使用相关的内容分类。
用户也可通过浏览当前应用、添加应用、清除应用以及组织应用管理用户应用。图11E-11L是利用个性化Web站点管理应用的屏幕显示实例。尽管这是参考应用描述的,但本领域的技术人员将认识到,这些技术也可应用于任何可下载内容,而且除了基于应用的管理,这些应用也可通过分类或其它抽象管理。用户可利用个性化Web站点803创建和管理用户的“个人访问列表”(“PAL”)。用户PAL是用户希望在例如应用发现期间让MAS在用户设备上显示的应用列表。该列表可包括缺省应用集,无应用,或用户已经下载或希望在将来某一时刻下载的应用列表,或其它组合。在一个实施例中,PAL最初包含用户已下载的应用。由于MAS为每个及每种无线设备维护应用下载记录,因此MAS能跟踪特定用户下载的应用。
图11E-11H是为用户的个人访问列表添加应用的屏幕显示实例。在一个应用中,PAL列出应用的名称和说明,可用的计帐选项,每种计帐方法的费用,任何可用试用周期的状态,预约状态,以及与用户设备的兼容性。通常,只有在用户的服务计划(其可被改变)之下应用为可用时以及只有应用与用户设备兼容时才可添加应用。作为选择,可添加应用到PAL中,但接着在应用发现期间由预配管理程序清除。这使得用户具有为多个用户设备工作的PAL。MAS的管理组件(例如,图5中的管理员509)可通过比较与该用户设备相关的设备简表与指定该应用将运行的设备的应用简表自动做出该决定。在一些实施例中,MAS列出所有可用应用,并指示该用户的当前服务计划是否支持下载该应用。在其它实施例中,MAS只列出该用户设备支持的那些应用。这使得用户能避免必须明确选择一个兼容应用的问题。也可预期使用其它组合。
也可从个人访问列表中删除应用。图11J是从用户的个人访问列表删除应用的屏幕显示实例。另外,用户可根据用户希望该列表如何出现在用户设备上组织个人访问列表。图11K-11L是在用户的个人访问列表上组织应用顺序的屏幕显示实例。
通过维护PAL,用户可很容易管理加载哪些应用到用户设备上,而且甚至能在例如原无线设备丢失、被盗或损坏时下载相同应用集到另一无线设备。此外,用户可维护信息(如个人联系信息和约会日程),这些信息可很容易地下载到用户的无线设备或另一设备。这些功能可将升级到新无线设备时的不便最小化。
上面描述,MAS检查PAL以便例如在应用发现期间的某一时刻在用户设备上显示一个可下载应用列表。MAS以用户的无线设备知道如何再现的语言(例如,XML,WML,XHTML,Basic,HTML,或任何其它基于XML的语言)自动生成这个列表。MAS通过以XML格式存储内部信息(如PAL)以及利用基于XSLT的功能(例如,由图6中的XSLT处理器630提供,其使用样式表)提供基础构件以支持任何语言,以便将存储的XML格式化信息转换为任何请求的格式,例如,WML或XHTML Basic。特定用户的无线设备已知能支持的再现语言可由MAS通过检测请求设备以及请求设备所使用的浏览器和/或由设备简表自动确定。
用户也可利用个性化Web站点803获得和改变帐户信息以及下载历史或帐户活动。
通过个性化Web站点803,系统管理员可通知用户更新或新应用的可用性,或“搭卖的广告(tie-ins)”,由此系统管理员可显示提供的产品或广告(通过“推销”消息)。用户可利用用户的无线设备或利用显示性能最好优于该无线设备的有线设备(如个人计算机)访问个性化Web站点803。当使用具备更高显示性能的有线设备访问个性化Web站点803时,优越的显示性能可用于支持增强的搭卖广告。
除了为现有MAS组件提供各种基于Web站点的用户接口外,MAS的管理员组件(例如,图5中的管理员509)使得系统管理员能通过MAS自身的可改编程序组件以及通过确定预配规则实现可定制的预配相关策略。在一个实施例中,可改编程序是通过管理员Web站点802实现的;然而,本领域的技术人员将认识到,利用其它机制,例如通过向管理员登记不同组件和简表,或通过一个注册机制,或通过将MAS接口的单元细分,也可实现这种功能。这种功能使得用户、通信公司和系统管理员在审阅提交的应用、执行简表管理、报告生成以及服务器管理时的灵活性增强。
例如,系统管理员可利用简表管理实现预配规则。简表提供了天生动态的数据驱动技术。通过为用户和用户组指定各种服务类别,可简单地通过修改各种简表(例如利用管理员组件的Web站点接口)应用预配规则到个人或用户组。另外,预配规则可存储在用于确定这些服务类别如何应用到个别用户和用户组的简表中。可修改预配规则本身。
简表管理允许在确定预配相关和计帐相关服务策略时具有高度灵活性。例如,通信公司可提供包含基本服务级别和高服务级别的预约服务。基本服务的用户可为他们下载的每个应用单独收费,而高级服务的用户将支付更高的月服务费,但被允许下载无限数量的应用而不额外收费。在另一实施例中,诸如银行的企业将与通信公司协商以建立一种特定类型的服务,在此服务中企业的客户将能在一种允许类型的用户设备上下载企业特定应用,例如该银行的客户能查询帐户余额和转移资金。在此实例中,通信公司为该企业保存用户简表,并允许该企业利用诸如LDAP的行业标准数据库和本领域技术人员众所周知的关系数据库访问这个信息。
管理员800还提供管理MAS的其它组件所必需的用户接口。通过这些接口,系统管理员能在任何时候监视MAS的不同模块,管理服务器端安全性,以及监视系统状态和服务器性能。系统管理员还可管理用户帐户并指定各种级别的管理特权。服务器管理还包括诸如记录管理功能和用于故障诊断目的的分析工具。
在示例性实施例中,所述移动应用系统的方法和系统是根据典型的客户/服务器体系结构在一个或多个通用计算机系统和无线网络上实现的,而且可设计和/或配置运行在分布式环境中。所述示例性实施例设计用于工作在全球网络环境中,如具有多个用户设备通过一个或多个无线网络与MAS通信的环境。
图12是用于实现移动应用系统的实施例的通用计算机系统和用户设备的框图例子。图12的计算机环境包括用户设备1201和通用计算机系统1200,其通过无线通信公司1208通信。每个功能块可表示适合特定实施例的一个或多个这些功能块,而且每个功能块可驻留于独立的物理位置。
用户设备1201包括计算机存储器(“存储器”)1202,显示器1203,输入/输出设备1204,以及中央处理单元(“CPU”)1205。所示的手机管理控制台1206驻留在具有下载应用1207的存储器1202内。手机管理控制台1206优选在CPU 1205上执行,以执行当前存在于存储器1202内的应用1207,或通过参考前述附图描述的无线通信公司1208从MAS 1209下载应用。
通用计算机系统1200可包括一个或多个服务器和/或客户计算系统,而且可跨越分布式位置。在一个实施例中,利用Java 2企业版(J2EE)实现MAS,而且在提供了J2EE兼容性的应用服务器的通用计算机系统上执行。根据这个实施例,利用J2EE多层应用体系结构设计和编码MAS,其在服务器端支持web层,企业层以及数据库层。由此,通用计算机系统1200表示能运行MAS的一个或多个组件和/或数据库的一个或多个服务器。
如图所示,通用计算机系统1200包括CPU 1213,存储器1210,以及可选的显示器1211和输入/输出设备1212。图中显示MAS 1209的组件连同其它数据库1220和其它程序1230驻留在存储器1210内,并优选在一个或多个CPU 1213上执行。在一个典型的实施例中,MAS 1209包括预配组件1214,用于存储简表和配置数据的数据库1215,以及应用存储器1216。前面描述,根据结合通信公司或其它主机系统的需要,MAS可包含其它数据库和组件。预配组件1214包含参考图5示意和描述的MAS的组件。预配组件1214使得MAS 1209能接收用于可下载应用和应用发现的请求,检验特定用户和特定用户设备使用所述请求的适当性,相应地定制所述请求的应用,以及发送所预配的应用到用户设备1201。应用存储器1216是存储适合于下载到用户设备1201的应用的数据库。应用可预先预配(“静态预配”)以快速下载到用户设备1201,或可根据请求预配应用(“动态预配”)。数据库1215提供数据库和检索服务以建立预约级别和设备能力(以驻留简表管理中使用的简表)以及确定适合于每个客户设备的应用。
本领域的技术人员将认识到,MAS 1209可在由多个,甚至不同种类的计算机系统和网络的分布式环境中实现。例如,在一个实施例中,预配组件1214和应用存储器1215位于在物理上不同的计算机系统。在另一实施例中,预配组件1214的各个组件驻留于分散的服务器机器上,而且可远离数据存储器1215和1216放置。利用本发明的技术可预期程序和数据的不同配置和位置。
在一个示例性实施例中,利用J2EE多层应用平台实现预配组件1214,这在JavaTM2 Platform,Enterprise Ediition Specification,Version 1.2,Sun Microsystems,1999中有详细描述,其全文在此包含作为参考。预配组件1214包括协议管理程序、预配管理程序、配置使用管理程序、计帐管理程序。图13-28描述了由每个这些组件实现的特定例程的各种示例性实施例,用于实现参考图3-11描述的功能。在示例性实施例中,这些组件可同步和异步执行;由此,这些组件可利用众所周知的消息传递技术进行通信。本领域的技术人员将认识到,MAS工具也可支持等效的同步实施例。本领域的技术人员还将认识到,也可为每个例程实现其它步骤,而且也能以不同顺序和不同例程实现MAS的功能。
图13是由移动应用系统的协议管理程序使用不同协议通过各种无线网络与各种用户设备通信所执行的处理流程图实例。(参见例如图5中的协议管理程序。)在步骤1301,初始化协议管理程序。在步骤1302,协议管理程序确定是否有来自用户设备的输入数据请求,如果有的话,转到步骤1303,否则继续步骤1306。在步骤1303,协议管理程序通过确定该请求是通过哪个无线网络(或有线网络)发送的确定该输入请求使用的协议,并在与所述输入请求相关的记录中存储为未决请求确定的协议。通过例如在请求消息头内存储对应该协议记录的索引,在协议记录由系统处理时维护该协议记录和输入请求之间的联系。在步骤1304,协议管理程序将输入请求解释为内部使用的协议(例如HTTP)。在步骤1305,协议管理程序发送经解释的请求到预配管理程序(例如,图5中的预配管理程序504),并接着结束该请求的处理。在步骤1306,协议管理程序确定是否存在对用户设备的输出数据请求,如果有的话,转到步骤1307,否则结束该请求的处理。在步骤1307,协议管理程序检索到所确定的对应输出数据与输入请求相关的协议。所确定的协议为由发出该请求的用户设备使用的协议。在步骤1308,协议管理程序根据所确定的协议编码/转换输出的数据消息。在步骤1309,协议管理程序将编码的输出数据发送到提交该请求的用户设备,并结束处理。
图14是移动应用系统的预配管理程序执行的处理流程图实例,以确定所请求的应用对用户设备的适用性并以用户设备能解码的格式向该设备提供所请求应用。(参见例如图5中的预配管理程序504。)在步骤1401,预配管理程序执行任何需要的初始化。在步骤1402-1413,预配管理程序处理MAS“指令”。在步骤1402,预配管理程序确定在输入请求中指定的指令(或请求下载)。在步骤1403,预配管理程序如同参考图6描述的,通过分析输入请求和动态修改该请求以为加强、修改或限制后面将执行的某些预配步骤,或通过为通信或配置原因插入其它参数值执行预处理。在步骤1404,预配管理程序确定该“指令”是否为下载请求,如果是,继续步骤1404,否则继续步骤1408。尽管当前实现为分离指令“类型”,但本领域的技术人员将认识到,即使下载请求由指定“URL”指示作为参数,但它们本质上是指令,而且存在许多用于执行指令处理的等效编程技术。在步骤1405,预配管理程序确定所请求的应用(内容)对MAS是否已知,如果为已知,继续步骤1406执行封闭式预配,否则继续步骤1407执行开放式预配。在一个示例性实施例中,存在下述若干方式使得所述内容为MAS知晓:通过系统管理员使用Web站点以预配和发布应用;通过内容提供商提交最终获得许可和发布的内容;以及通过用户请求从通信公司已知的信任第三方内容提供商下载已知应用,这使得提交过程能间接发生。下面参考图15讨论封闭式预配,以及参考图16讨论开放式预配。一旦在步骤1406或1407发生预配,则在步骤1413对所述请求执行后处理。如果一方面,在步骤1408所指定的指令为请求应用列表,则预配管理程序继续步骤1409以执行应用发现,或继续步骤1410。在应用发现后,预配管理程序继续步骤1413以对该请求执行后处理。在步骤1410,如果该指令为请求下载历史,则预配管理程序继续步骤1411以检索已下载应用列表,并转到步骤1413执行后处理。在步骤1412,如果该指令外某一其它MAS指令,则预配管理程序适当地处理该指令,并转到步骤1413。在步骤1413,如同参考图6描述的,预配管理程序通过修改该请求以包含用于引导MAS的其它组件以执行作为其它组件功能的扩展的功能的指令的索引,或修改其它参数以对该请求执行后处理。例如,如果预配管理程序确定请求下载的个人是高价广告客户的雇员,则预配管理程序可引导计帐管理程序不为此特定交易计帐。在后处理该请求后,预配管理程序结束处理直到接收到另一请求。
图15是由预配管理程序的执行封闭式预配例程所执行的处理流程图实例。(参见图14的步骤1406。)在分布式预配中,检验所请求的应用是否授权用户以及用户设备的能力。具体来说,在步骤1501,预配管理程序检索得到对应所请求的应用的用户简表、设备简表以及应用简表。在一个实施例中,这些简表是通过调用图6中的简表阅读程序650得到的。在步骤1502,预配管理程序执行应用检验以验证所请求的应用是否例如因为包含禁止使用的API未被无线通信公司限制。下面参考图16进一步讨论应用检验。在步骤1503,预配管理程序执行用户检验以确定用户是否通过通信公司计帐策略,或者所请求的应用是否通过通信公司计帐策略。下面参考图17进一步讨论用户授权。在步骤1504,预配管理程序执行设备检验以确定设备是否具备由对应所请求应用的应用简表所指定的资源和其它功能。下面参考图18进一步讨论设备授权。在步骤1505,如果该系统包含预付费计帐的话,预配管理程序执行预付费计帐检验以检验用户帐户是否足以支付下载应用,如参考图6的描述。在步骤1506,预配管理程序调用配置使用管理程序的预配接口并返回所预配的应用。
图16是由预配管理程序的检验应用例程所执行的处理流程图实例。(参见图15的步骤1502。)总之,检验应用例程确定通信公司是否禁止下载所请求的应用(全局的或目标是基于其它标准,如用户身份、设备类型等等)。在步骤1601,该例程请求并获得通信公司已经拒绝下载的应用列表。该列表周期性地由本地检索取出并刷新,例如利用图6的MAS查询引擎650。在步骤1602,该例程搜索为所请求应用检索得到的列表以确定该应用是否被禁止。这就提供了一种禁止应用下载的快速和健壮的方式,例如,禁止下载包含或怀疑包含有恶意代码的应用。这种方法提供了一种基于集中式的实现方法(与每个设备获得一个“病毒检查程序”和恶意应用数据文件的分布式实现方法相比)以阻止恶意应用的扩散。在步骤1603,该程序确定该请求是否为禁用请求,如果是的话转到步骤1605,否则转到步骤1604,记录该请求,该例程返回成功状态。在步骤1605,记录失败的请求并发送用户一个通知,例程返回一个失败状态。
图17是由预配管理程序的检验用户例程所执行的处理流程图实例。(参见图15的步骤1503。)总之,检验用户例程比较用户简表与由简表中管理员组件(例如,图5的管理员509)存储和实现的内容类别和服务计划定义,并确定用户是否有权下载所请求的应用。具体来说,在步骤1701,该例程确定该请求消息是从哪个通信公司接收的。在步骤1702,该例程识别发送请求的用户。这可通过例如检查请求消息中的路由信息实现。在步骤1703,如果用户简表信息是存储在通信公司的话,该例程建立与所确定的通信公司的连接,而在步骤1704,从通信公司中检索得到所识别的用户的简表。本领域的技术人员将认识到,用户简表也可本地存储于MAS,或利用例如图6中的简表阅读程序652组件从MAS中取出以访问图5中的本地数据存储器511。在步骤1705,该例程检查该请求以确定哪个应用已经被请求。在步骤1706,该例程确定用户简表是否核准下载所请求的应用。这个确定可通过例如检查用户所属的用户组的服务计划实现,以确定该应用是否属于与该服务计划相关的内容类别。另外,该例程可检查在用户简表中是否存在匹配的禁用应用,如果发现匹配的话,就拒绝该请求。在步骤1707,如果确定该请求被授权,则例程转到步骤1708,否则转到步骤1709。在步骤1708,记录该请求,例程返回成功状态。在步骤1709,记录失败请求,发送通知给用户,例程返回失败状态。
图18是由预配管理程序的检验设备例程所执行的处理流程图实例。(参见图15的步骤1504。)总之,检验设备例程比较与该用户设备相关的设备简表与所请求应用的应用简表,以及根据设备简表检验该应用所需的资源是可用的。在步骤1801,该例程识别所接收请求的用户设备类型。本领域的技术人员将认识到,这个信息在协议协商中确定,而且通常可从请求消息中存储的路由信息中提取。在步骤1802,该例程通过访问之前存储的与所识别的设备相关的设备简表确定用户设备的能力。在一个实施例中,利用图6中的简表阅读程序652取出设备简表。如果没有为所识别的设备找到设备简表,则记录该事件并相应地通知系统管理员。(在一个实施例中,当用户注册到通信公司以获得电话号码时,通信公司知晓每个用户使用的特定设备种类;通信公司最好应确保所有已注册的设备类型均得到设备简表的支持。)设备简表中包含与用户设备的能力相关的信息,如存储容量、处理器类型、处理速度、最大可下载应用大小等等。在步骤1803,该例程通过检索和检查由管理员组件之前创建的对应所请求应用的应用简表确定所请求应用的需求。该应用简表包含执行应用的条件,包括例如所需的存储容量、所执行的API调用、以及最小处理器速度。该需求也可根据所支持的用户设备类型在应用简表中指定。在步骤1804,通过比较设备和应用简表,比较该设备的能力与所请求应用的需求。在步骤1805,该例程确定该设备是否有能力运行所请求的应用,如果能则转到步骤1806,。否则转到步骤1807。在步骤8106,记录该请求,例程返回一个成功状态。在步骤1807,记录该失败请求,发送给用户一个通知,例程返回一个失败状态。
图19是由预配管理程序的执行开放式预配例程所执行的处理流程图实例。(参见图14的步骤1407。)在步骤1901和1902,预配管理程序需要确定是否已有一个可用的或缓存的预配应用,如果是的话,继续步骤1903,否则继续步骤1904。这种方案可能发生在例如如果该应用已经被预先请求和预配时,即使该应用来自不可靠或未知来源。在步骤1903,返回预配的应用。作为选择,如果没有找到预先预配的应用,则在步骤1904,该例程利用在请求消息中提供的指定URL检索该应用。该应用也可由MAS预先处理,并由此可已经具有对应的应用简表。因此,在步骤1905,该例程确定是否存在对应的应用简表,如果存在则继续步骤1907,否则在步骤1906创建一个新的应用简表,并接着继续步骤1907。在步骤1907,该例程通过比较该应用简表(检索得到的或创建的)与对应该用户的请求的设备类型的设备简表执行设备检验。在步骤1908,该例程调用配置使用管理程序的预配接口以预配不信任的应用,以及在步骤1909返回所预配的应用。
图20是由预配管理程序的执行应用发现例程所执行的处理流程图实例。(参见图14的步骤1409。)存在两种基本类型的应用发现:搜索匹配用户指定标准的应用,以及基于存储的用户喜好的系统提供的应用列表。具体来说,在步骤2001,该例程确定用户是否已经指定了搜索标准,如果是的话,继续步骤2002,否则继续步骤2004。在步骤2002,该例程搜索应用存储器(应用的数据库)并查询匹配所指定标准的应用(内容)。标准实例包括类别、价格、性别、年龄等等。在步骤2003,该列表首先被设置为这些查询结果,而且该例程继续步骤2007。在步骤2004,该例程确定是否有可用的个人访问列表(“PAL”),如果是有,继续步骤2005以将该列表初始化为所确定的PAL,否则继续步骤2006以将该列表初始化为缺省值。在步骤2007,MAS将一个定义的应用集添加到初始列表中,称为startdeck,该startdeck基本上允许MAS在应用发现会话中保留时隙,例如,用于较高收入的广告商。在步骤2008,该例程为该列表上最初的每个应用调用参考图17讨论的检验用户例程。没有通过过滤步骤2008到2009中的任何一个步骤的任何应用在该过程的下一步骤之前将从该列表中过滤掉。在步骤2009,该例程为该列表上最初的每个应用调用参考图18讨论的检验设备例程。在步骤2010,该例程为内部标准化格式生成XML,而在步骤2011将这个列表的内容转换为对应该用户设备的适当语言。
图21是由移动应用系统的配置使用管理程序为提供预配应用以响应用户和系统管理员请求所执行的处理流程图实例。(参见例如图5中的配置使用管理程序506。)系统管理员可请求为了使响应用户请求所需的时间最短,对流行设备预先预配(静态预配)和高速缓存流行应用。或者,也可动态预配所有应用并选择性地高速缓存。在步骤2101,初始化配置使用管理程序,在步骤2102,配置使用管理程序评估请求以确定所请求应用的标识。在步骤2103,配置使用管理程序调用获取预配应用例程以控制内容的检索以及使得发生预配,这将参考图22进一步讨论。在步骤2104,配置使用管理程序确定该请求是否由系统管理员发出以初始化预配应用的存储,如果是则转到步骤2105,否则转到步骤2106。在步骤2105,配置使用管理程序根据系统管理员策略在高速缓冲存储器、在通信公司的应用存储器或在远程应用主机的服务器中存储预配的应用,并结束处理。在步骤2106,配置使用管理程序将预配的应用发送到预配管理程序,接着结束处理。
图22是由配置使用管理程序的获取预配应用例程所执行的处理流程图实例。(参考图21的步骤2105。)总之,配置使用管理程序检索得到应用代码并根据在MAS中实现的当前策略检查、优化和提交/安装应用代码。在步骤2201,该例程咨询某一类型的索引以确定在MAS已知的某一位置是否存在该应用的预先预配版本。存储这种信息的方式与如何实现高速缓存和/或数据库有关。可利用众所周知的使用本地快速数据存储器和索引的实现高速缓存的技术。当检查到存在大量对一个将要求相同预配需求的应用的请求时,可预先预配和存储该应用。这可发生在例如具有相同类型的用户设备的大量用户请求同一应用时。在这种情况下,可将预配该应用并存储于高速缓冲存储器中(在具有该应用所预配的用户设备的用户请求时取出)或存储于其它MAS数据库中。在步骤2202,如果存在该应用的预先预配版本,则该例程转到步骤2203,否则转到步骤2207。在步骤2203,确定该预先预配应用的位置,在步骤2204,该例程确定在本地是否存储了该预先预配的应用,如果是,转到步骤2205,否则转到步骤2206。在步骤2205,该例程从本地取出该应用(通常从通信公司的应用存储器中取出,其可位于MAS中或位于通信公司建筑物中),并返回。在步骤2206,该例程从远程应用主机(例如,第三方服务器)中取出该应用并返回,另一方面,如果在步骤2202,该例程确定并不存在所请求应用的预先预配版本,则在步骤2207该例程确定未经处理、未预配应用的位置。在步骤2208,该例程确定该应用代码是否在本地存储,如果是的话,转到步骤2209,否则转到2210。在步骤2209,该例程从通信公司的应用存储器或其它本地存储器取出应用代码。在步骤2210,该例程从远程应用主机取出应用代码。在步骤2211,该例程如同参考图23进一步描述的那样预配所取出的应用,并返回。
图23是由配置使用管理程序的预配应用例程所执行的处理流程框图。在步骤2301,预配应用例程如同参考图24进一步描述的那样检查应用。在步骤2302,该例程如同参考图25进一步描述的那样优化应用。在步骤2303,该例程如同图26进一步描述的那样在该应用中安装方法。在步骤2304,该例程如同参考图27进一步描述的那样以适合于交付的格式将应用打包,并返回。
图24是由配置使用管理程序的检查应用例程所执行的处理流程图实例。(参见例如图23中的步骤2301。)在步骤2401,如果需要识别API,该例程拆析/解码应用代码的结构,包括包、类、方法和域,或其它适当的结构。当该应用是以Java编码时,则可相对二进制程序执行检查,而不需要在该应用自身内插入源代码级别校验以生成调试/记录信息。在步骤2401-2405描述一组检查步骤作为例子;然而,本领域的技术人员将认识到,其它检查步骤在适当的时候也可附加或取代在此描述的步骤。在步骤2402,该例程检索得到与正接受的潜在目标相关的任何应用过滤程序(所请求的应用、请求用户、应用的内容提供商、以及全局过滤程序)。在一个实施例中,这些过滤程序存储在MAS数据库中,然而它们也可存储在任何已知位置。在步骤2403,该例程通过比较已拆析的代码与如由检索得到的应用过滤程序描述的所存储的禁用数据结构和API的指示,检查检索得到的应用中是否有恶意和禁用代码。在步骤2404,该例程确定在该代码中出现的API调用的数量、类型和频率,并检查它们是否满足系统管理员要求,这一要求可存储在应用过滤程序中。在步骤2405,该例程执行已拆析应用的流程分析,并确定激活的线程数是否在系统管理员的要求之内。这种流程分析可以利用一些技术实现,如创建代码的定向图和应用众所周知的图形分析算法。本领域的技术人员将认识到,对检索得到的应用还可以进行其它检验。在步骤2406,该例程确定所检索得到的应用是否已经通过检查,如果是的话,返回成功状态,否则该例程标记错误条件并返回失败状态。
图25是由配置使用管理程序的优化应用例程所执行的处理流程图实例。(参见例如图23中的步骤2302。)本领域的技术人员将认识到,在此示意的只是一个例子,可结合任何众所周知的代码优化技术到此例程中。在步骤2501,为了减小所请求的应用文件大小,该例程缩短检索得到的应用中包含的变量名。在步骤2502,该例程映射检索得到的应用的可执行路径。在步骤2503,为缩短文件长度,该例程删除任何未使用的代码,并继续执行类似的优化步骤。当完成优化时,例程返回。
图26是由配置使用管理程序的安装工具例程所执行的处理流程图实例。(参见例如图23中的步骤2303。)在步骤2601,该例程利用例如图6中的简表阅读程序652,通常从本地数据库检索所识别的用户简表。在步骤2602,该例程在使用所请求的应用时为所识别的用户确定通信公司的策略。例如,允许某些用户基于预约或甚至基于试用使用该应用,但不允许其他用户这么做。如同上面参考图7讨论的那样,该方法实现某些策略。例如,其可提供允许预配代码执行有限次数或给定时间的代码包。在步骤2603,该例程根据所确定的通信公司策略在所请求的应用中安装方法,之后例程返回。在一个示例性实施例中,安装方法例程使用字节代码方法技术在二进制级别插入新代码或修改该应用内的现有代码。将提交/安装的代码可以直接由安装方法例程提供,或可以从其他数据存储器中得到,例如,与不同通信公司策略相关的数据存储器。
图27是由配置使用管理程序的打包应用例程所执行的处理流程图实例。(参见例如图23中的步骤2304。)在步骤2701,该例程访问检索得到的用户设备简表以便为所识别的用户设备确定兼容的文件格式。在步骤2702,该例程确定该用户设备是否能读取压缩文件,如果能则转到步骤2703,否则转到步骤2704。在步骤2703,该例程为使传输时间和传输字节数最小压缩所预配的应用。在步骤2704,该例程利用所确定的文件格式通过与特定信息一起封装所预配的应用打包应用,该信息足以使手机管理控制台(参见例如图2中的手机管理控制台)能在无线设备上执行以析取应用。前面描述过,多数具备Java能力的无线设备优选的一种格式为压缩JAR文件。然而,在某些情况下,该应用需要以较小分组分配到设备上,为安装应用在无线设备上重组这些分组。下面参考图28讨论的计帐管理程序也依赖于这些信息用于计帐和路由目的。在打包应用后例程返回。
图28是由移动应用系统的计帐管理程序所执行的处理流程图实例。(参见例如图5中的计帐管理程序507。)在步骤2801,初始化计帐管理程序。在步骤2802,计帐管理程序确定是否是生成计帐报告的时候,如果是转到步骤2803,否则转到步骤2804。在一个可选实施例中,计帐管理程序可响应例如来自管理员组件的管理查询以生成计帐报告。在步骤2803,计帐管理程序基于系统管理员设置的参数生成计帐报告。在步骤2804,计帐管理程序确定是否存在记录预配信息的请求(用于计帐目的),如果有则转到步骤2805,否则其返回。在步骤2805,计帐管理程序记录与该计帐相关的请求的参数(例如,作出请求的用户身份、请求类别、所需下载的大小等等)以及用于未来计帐的系统变量(例如日期、时间等等)的状态。在生成计帐报告中可使用例如:应用长度,请求应用的时间,处理应用所需的时间以及应用数量。另外,如果支持预付费计帐,则计帐管理程序可生成计帐请求到通信公司以正确地扣除用户的预付费计帐帐户。在生成计帐报告和记录适当参数后,计帐管理程序返回。
从前述可以看出,尽管在此为示意起见已经描述了本发明的特定实施例,但不用偏离本发明的精神和范围就可进行各种修改。例如,本领域的技术人员将认识到,在此讨论的方法和系统也可应用于通过各种网络,有线的无线的或甚至多个这样的网络预配应用。本领域的技术人员还将认识到,在此讨论的方法和系统可应用于不同协议、通信媒体(光纤,无线电,电缆等等)、以及用户设备(如无线手机,电子管理程序,个人数字助理,便携式电子邮件机,游戏机,寻呼机,诸如GPS接收机的导航设备等等)。另外,本领域的技术人员将理解如何改变和修改在此描述的方法和系统以满足他们的特定需求或条件。

Claims (73)

1.一种在基于计算机的环境中用于准备内容以在目标无线设备上使用的方法,包括:
为所述目标设备预配所述内容;
通过比较所述设备能力与所述内容需求,检验所述设备是否支持所述内容的执行;以及
提供经检验和预配的内容。
2.权利要求1的方法,还包括使所述准备的内容通过无线传输媒体下载到所述目标设备。
3.权利要求2的方法,其中由通信公司用户通过无线传输媒体向基于计算机的环境请求所述内容。
4.权利要求1的方法,其中所述预配包括至少下述一项:
检查所述内容;
优化所述内容;以及
提交/安装所述内容。
5.权利要求4的方法,所述检查还包括至少下述一项:
确定所述内容是否包含恶意代码;
确定所述内容是否包含禁用代码;以及
确定所述内容是否包含指定的API。
6.权利要求5的方法,其中所述API是程序包、类、方法及域中的至少一种。
7.权利要求4的方法,其中所述检查是利用应用过滤程序执行的。
8.权利要求7的方法,其中所述应用过滤程序指定过滤的标准列表和目标。
9.权利要求8的方法,其中所述标准为API。
10.权利要求8的方法,其中所述目标为指定客户、设备类型、内容标识以及全局定义中的至少一种。
11.权利要求4的方法,所述优化还包括至少下述一种:
缩短变量名的长度;
将指令修改为更为有效的指令;以及
删除未使用的代码。
12.权利要求4的方法,所述提交/安装还包括插入代码,以便至少实现计帐策略、使用策略、通知以及自动内容更新机制中的至少一种。
13.权利要求4的方法,其中所述提交/安装是在内容检查的字节码级别实现的。
14.权利要求1的方法,其中所述预配提供用以支持计帐策略的代码。
15.权利要求14的方法,所述计帐策略还包括基于预约的计帐、试用、基于下载的计帐、基于传输的计帐以及预付费计帐中的至少一种。
16.权利要求14的方法,其中所述计帐策略是通过无线通信公司基础设施提供的。
17.权利要求1的方法,其中为请求者预配所述内容,而且所述检验还包括至少下述一项:
比较所述内容使用的API与所述目标设备支持的API;
确定所述请求者是否被授权使用所述内容;以及
确定所述内容是否被禁用。
18.权利要求17的方法,其中确定所述请求者是否被授权决定在预付费计帐帐户中所述请求者是否有足够资金以使用所述内容。
19.权利要求1的方法,其中所述检验是利用简表管理实现的。
20.权利要求19的方法,其中所述简表管理为用户、设备类型以及内容中的至少一种定义简表。
21.权利要求1的方法,其中所述内容是基于Java的。
22.权利要求1的方法,其中所述环境与无线通信公司基础设施结合。
23.权利要求1的方法,其中所述内容准备提供封闭式预配。
24.权利要求1的方法,所述基于计算机的环境包含网络,其中所述预配支持通过浏览网络上的位置指定所准备的内容。
25.权利要求1的方法,其中所述网络为因特网。
26.权利要求1的方法,其中所述准备过程考虑所述内容的请求者的喜好。
27.权利要求1的方法,其中控制所述预配的属性是通过Web站点管理指定的。
28.权利要求1的方法,其中控制所述检验的属性是通过Web站点管理指定的。
29.权利要求1的方法,其中所述内容包含文本、图形、音频以及视频中的至少一种。
30.一种基于网络的传输媒体,包含已经特别为目标无线设备预配和检验的内容。
31.权利要求30的传输媒体,其中所述内容被发送到所述目标无线设备。
32.权利要求30的传输媒体,其中所述预配的内容至少已经被执行检查、优化和提交/安装操作中的一种。
33.权利要求32的传输媒体,其中检查已检查的内容以确定其不包含指定代码、API或其它条件。
34.权利要求32的传输媒体,其中已经利用动态指定的应用过滤程序检查所述已检查内容。
35.权利要求34的传输媒体,其中所述应用过滤程序指定过滤标准列表和目标。
36.权利要求32的传输媒体,其中所述提交的内容包含代码,用以实现计帐策略、使用策略、通知以及自动内容更新机制中的至少一种。
37.权利要求32的传输媒体,其中已经在字节码级别提交/安装所述提交/安装的内容。
38.权利要求30的传输媒体,其中所述预配的内容包含用以自动实现所述内容的计帐策略的代码。
39.权利要求30的传输媒体,其中通过确定至少满足所述目标设备的用户被授权使用所述内容、所述目标设备支持所述内容使用的API、以及所述内容未被禁止使用中的一个来检验所述内容。
40.权利要求30的传输媒体,其中已经通过比较所述内容的特征与所存储的简表检验所述内容。
41.权利要求30的传输媒体,其中所述网络与无线通信公司基础设施相连。
42.权利要求30的传输媒体,其中所述内容是基于Java的。
43.权利要求30的传输媒体,其中所述网络为因特网。
44.权利要求30的传输媒体,其中所述内容包含文本、图形、音频以及视频中的至少一种。
45.一种计算机可读存储介质,包含用于通过下述控制计算机处理器以便准备内容以在目标设备上配置使用的指令:
为所述目标设备预配所述内容;以及
检验所述目标设备是否支持执行所预配的内容而不用在所述设备上执行所述预配的内容。
46.权利要求45的计算机可读存储介质,其中所述目标设备为无线设备。
47.权利要求45的计算机可读存储介质,其中所述指令还包括使所准备的内容通过无线传输媒体下载到所述目标设备。
48.权利要求45的计算机可读存储介质,所述预配还包括至少下述一项:
检查所述内容;
优化所述内容;以及
提交/安装所述内容。
49.权利要求48的计算机可读存储介质,其中所述检查还包括至少下述一项:
确定所述内容是否包含恶意代码;
确定所述内容是否包含禁用代码;以及
确定所述内容是否包含指定的API。
50.权利要求48的计算机可读存储介质,其中所述检查是利用应用过滤程序执行的。
51.权利要求48的计算机可读存储介质,其中所述提交/安装还包括插入代码,以便实现计帐策略、使用策略、通知以及自动内容更新机制中的至少一种。
52.权利要求48的计算机可读存储介质,其中所述提交/安装是在内容检查的字节码级别的实现。
53.权利要求45的计算机可读存储介质,其中所述预配提供用以支持计帐策略的代码。
54.权利要求53的计算机可读存储介质,所述计帐策略还包括基于预约的计帐、试用、基于下载的计帐、基于传输的计帐以及预付费计帐中的至少一种。
55.权利要求45的计算机可读存储介质,其中为请求者预配所述内容,而且其中所述检验还包括至少下述一项:
比较所述内容使用的API与所述目标设备支持的API;
确定所述请求者是否被授权使用所述内容;以及
确定所述内容是否被禁用。
56.权利要求55的计算机可读存储介质,其中确定所述请求者是否被授权决定了预付费计帐帐户中所述请求者是否有足够资金以使用所述内容。
57.权利要求45的计算机可读存储介质,其中所述检验是利用简表管理实现的。
58.权利要求45的计算机可读存储介质,其中所述内容是基于Java的。
59.权利要求45的计算机可读存储介质,其中所述预配支持通过浏览网络上的位置指定所准备的内容。
60.权利要求45的计算机可读存储介质,其中所述内容包含文本、图形、音频以及视频中的至少一种。
61.一种用于为目标设备预配内容的基于计算机的内容配置使用系统,包括:
检验管理程序,其检验所述内容是否被授权以及所述目标设备是否支持所述内容需要的资源;以及
预配管理程序,其通过检查所述内容、优化所述内容以及提交/安装所述内容中的至少一项操作,根据所述目标设备预配所述内容。
62.权利要求61的配置使用系统,其中所述预配管理程序还包括至少下述一项:
用户检查程序;
设备检验程序;以及
应用检验程序。
63.权利要求62的配置使用系统,其中所述用户检验程序确定无线通信公司服务的用户是否被授权使用所述内容。
64.权利要求62的配置使用系统,其中所述设备检验程序确定所述目标设备是否支持所述内容需要的API。
65.权利要求62的配置使用系统,其中所述应用检验程序确定所述内容是否被禁用。
66.权利要求61的配置使用系统,其中所述目标设备是无线设备。
67.权利要求61的配置使用系统,其中所述配置系统与无线通信公司计算机系统结合。
68.权利要求61的配置使用系统,其中提交/安装所述内容为计帐策略、使用规则、通知以及自动内容更新机制中的至少一种提供支持。
69.权利要求61的配置使用系统,还包括:
计帐管理程序,其根据计帐策略为预配所述内容提供支持。
70.权利要求69的配置使用系统,其中所述计帐策略是基于预约的计帐、试用、基于下载的计帐、基于传输的计帐以及预付费计帐中的一种。
71.权利要求61的配置使用系统,其中通过浏览网络上的位置确定指定待预配内容。
72.权利要求61的配置使用系统,其中所述内容是基于Java的。
73.权利要求61的配置使用系统,其中所述内容包含文本、图形、音频以及视频中的至少一种。
CNA018221874A 2000-11-28 2001-11-28 用于维护和分发无线应用的方法和系统 Pending CN1489736A (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US25367400P 2000-11-28 2000-11-28
US60/253,674 2000-11-28
US27166101P 2001-02-26 2001-02-26
US60/271,661 2001-02-26
US29690101P 2001-06-08 2001-06-08
US29687201P 2001-06-08 2001-06-08
US60/296,872 2001-06-08
US60/296,901 2001-06-08

Publications (1)

Publication Number Publication Date
CN1489736A true CN1489736A (zh) 2004-04-14

Family

ID=27500486

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA018221874A Pending CN1489736A (zh) 2000-11-28 2001-11-28 用于维护和分发无线应用的方法和系统

Country Status (6)

Country Link
US (1) US20020131404A1 (zh)
EP (1) EP1340167A2 (zh)
JP (3) JP2004530958A (zh)
CN (1) CN1489736A (zh)
AU (1) AU2002226995A1 (zh)
WO (1) WO2002044892A2 (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100442704C (zh) * 2005-07-19 2008-12-10 上海华为技术有限公司 通信系统中升级基站的方法
CN1728710B (zh) * 2004-07-20 2010-06-16 阿尔卡特公司 检索网络文件的方法和网络服务器
CN101080037B (zh) * 2006-05-26 2010-07-07 泰利双星科技有限公司 用于准备移动内容的方法和设备
CN101460939B (zh) * 2006-07-05 2011-01-26 艾格瑞系统有限公司 移动数据存储和采集的系统和方法
CN101964809A (zh) * 2009-07-24 2011-02-02 美国博通公司 用于网络管理的方法和系统
CN102158810A (zh) * 2011-04-20 2011-08-17 中兴通讯股份有限公司 基于组播方式下载应用的方法、装置和系统
CN101068258B (zh) * 2006-12-14 2011-09-21 腾讯科技(深圳)有限公司 一种电子游戏的控制方法及控制系统
CN102378963A (zh) * 2009-04-01 2012-03-14 摩托罗拉移动公司 利用模型来审查可执行程序的方法和装置
CN1984151B (zh) * 2005-10-27 2012-07-04 捷讯研究有限公司 用于供应无线服务的方法和系统
CN102609662A (zh) * 2010-12-20 2012-07-25 微软公司 防篡改的位置服务
CN102365623B (zh) * 2009-01-28 2013-03-20 海德沃特合作I有限公司 通信系统和方法
CN101495967B (zh) * 2005-04-22 2013-05-08 微软公司 一种无服务器对等网络中邀请用户的应用程序接口
CN101523853B (zh) * 2006-10-04 2013-07-31 波音公司 用于保护计算机网络安全的方法和系统
CN101799765B (zh) * 2009-02-09 2013-11-06 苹果公司 从在线应用仓库下载应用程序的方法、设备和系统
CN106233285A (zh) * 2014-02-21 2016-12-14 奎克西公司 搜索和访问软件应用功能
JP2017073153A (ja) * 2011-06-29 2017-04-13 フリースタイル・テクノロジー・プロプライエタリー・リミテッドFreestyle Technology Pty Ltd 異なる通信プロトコルを用いて装置間の通信を可能にするためのシステム、方法、及び/又は装置
US10310834B2 (en) 2014-01-06 2019-06-04 Samsung Electronics Co., Ltd. Searching and accessing application functionality

Families Citing this family (477)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687242B1 (en) * 1999-12-22 2004-02-03 Bellsouth Intellectual Property Corporation Method and system for providing additional information to a subscriber based on a universal resource locator
WO2002035326A2 (en) * 2000-10-23 2002-05-02 Koninklijke Philips Electronics N.V. Method of automatic payment of a software license fee
US7725889B2 (en) 2003-01-13 2010-05-25 Hewlett-Packard Development Company, L.P. Mobile handset capable of updating its update agent
US20030182414A1 (en) 2003-05-13 2003-09-25 O'neill Patrick J. System and method for updating and distributing information
US7082549B2 (en) * 2000-11-17 2006-07-25 Bitfone Corporation Method for fault tolerant updating of an electronic device
US20040068721A1 (en) * 2000-11-17 2004-04-08 O'neill Patrick Network for updating firmware and / or software in wireless communication devices
US8479189B2 (en) 2000-11-17 2013-07-02 Hewlett-Packard Development Company, L.P. Pattern detection preprocessor in an electronic device update generation system
US7401320B2 (en) * 2000-11-17 2008-07-15 Hewlett-Packard Development Company, L.P. Operator network that routes customer care calls based on subscriber/device profile and CSR skill set
US8875116B2 (en) * 2000-11-17 2014-10-28 Hewlett-Packard Development Company, L.P. Network for updating firmware and / or software in wireless communication devices
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
US7409685B2 (en) * 2002-04-12 2008-08-05 Hewlett-Packard Development Company, L.P. Initialization and update of software and/or firmware in electronic devices
US7237269B2 (en) * 2000-11-30 2007-06-26 Palmsource, Inc. Method and system for secure activation of web clipping applications
WO2002067545A2 (en) * 2001-02-17 2002-08-29 Inktomi Corporation Content based billing
JP4291467B2 (ja) * 2001-03-01 2009-07-08 株式会社ソニー・コンピュータエンタテインメント エンタテインメント装置、メニュー表示方法および情報記録媒体
US7584269B2 (en) * 2001-03-09 2009-09-01 International Business Machines Corporation Method for providing kiosk service offerings in a personal area network
US7734285B2 (en) * 2001-04-03 2010-06-08 Qualcomm Incorporated Method and apparatus for network initiated uninstallation of application program over wireless network
US7099663B2 (en) * 2001-05-31 2006-08-29 Qualcomm Inc. Safe application distribution and execution in a wireless environment
US20030022657A1 (en) * 2001-07-18 2003-01-30 Mark Herschberg Application provisioning over a wireless network
US6996537B2 (en) 2001-08-13 2006-02-07 Qualcomm Incorporated System and method for providing subscribed applications on wireless devices over a wireless network
US9203923B2 (en) 2001-08-15 2015-12-01 Qualcomm Incorporated Data synchronization interface
US7317699B2 (en) 2001-10-26 2008-01-08 Research In Motion Limited System and method for controlling configuration settings for mobile communication devices and services
US7305469B2 (en) * 2001-12-18 2007-12-04 Ebay Inc. Prioritization of third party access to an online commerce site
US20030130864A1 (en) * 2002-01-09 2003-07-10 Ho Edwin Kong-Sun Facilitation of mobile direct response by service callback
US9134989B2 (en) * 2002-01-31 2015-09-15 Qualcomm Incorporated System and method for updating dataset versions resident on a wireless device
US6658091B1 (en) 2002-02-01 2003-12-02 @Security Broadband Corp. LIfestyle multimedia security system
US20030149958A1 (en) * 2002-02-06 2003-08-07 Shumeet Baluja Automatic code generation for applications which run on common platforms
US7058890B2 (en) * 2002-02-13 2006-06-06 Siebel Systems, Inc. Method and system for enabling connectivity to a data system
US7565647B2 (en) * 2002-03-22 2009-07-21 Sun Microsystems, Inc. Markup compiler that outputs MIDlets
US7512932B2 (en) * 2002-03-22 2009-03-31 Sun Microsystems, Inc. Language and object model for describing MIDlets
US7305671B2 (en) * 2002-03-22 2007-12-04 Sun Microsystems, Inc. Conversion of an object model to a source file generation model
US20030182626A1 (en) * 2002-03-22 2003-09-25 Eran Davidov On-demand creation of MIDlets
US20030181196A1 (en) * 2002-03-22 2003-09-25 Eran Davidov Extensible framework for code generation from XML tags
US20040194081A1 (en) * 2002-03-23 2004-09-30 Iyad Qumei Update system for facilitating firmware/software update in a mobile handset
US7369851B2 (en) * 2002-04-19 2008-05-06 Hewlett-Packard Development Company, L.P. Communications network capable of determining SIM card changes in electronic devices
US6970866B1 (en) * 2002-05-31 2005-11-29 Adobe Systems Incorporated Filter file system
WO2003104922A2 (en) 2002-06-07 2003-12-18 Thomson Licensing S.A. Method and apparatus for controlling the distribution of digitally encoded data in a network
US7886365B2 (en) * 2002-06-11 2011-02-08 Panasonic Corporation Content-log analyzing system and data-communication controlling device
US20040001476A1 (en) * 2002-06-24 2004-01-01 Nayeem Islam Mobile application environment
FI114775B (fi) * 2002-06-28 2004-12-15 Elisa Matkapuhelinpalvelut Oy SIM-korttien hallintajärjestelmä
US20040002943A1 (en) * 2002-06-28 2004-01-01 Merrill John Wickens Lamb Systems and methods for application delivery and configuration management of mobile devices
US7809813B2 (en) 2002-06-28 2010-10-05 Microsoft Corporation System and method for providing content-oriented services to content providers and content consumers
US20040203681A1 (en) 2002-07-01 2004-10-14 Ross David J. Application catalog on an application server for wireless devices
US7263351B2 (en) * 2002-07-01 2007-08-28 Qualcomm Incorporated Wireless network optimization through remote device data
US7005846B2 (en) * 2002-07-17 2006-02-28 Agilent Technologies, Inc. System and method for application control in measurement devices
AU2003247009A1 (en) * 2002-07-31 2004-02-23 Truecontext Corporation Contextual computing system
US7941514B2 (en) * 2002-07-31 2011-05-10 Level 3 Communications, Llc Order entry system for telecommunications network service
US6731930B2 (en) 2002-08-14 2004-05-04 Motorola, Inc. Over-the-air programming method for wireless communication device
US7340736B2 (en) * 2002-08-22 2008-03-04 Hewlett-Packard Development Company, L.P. Electronic device with an update agent that employs preprocessing techniques for update
US7313791B1 (en) 2002-08-22 2007-12-25 Hewlett-Packard Development Company, L.P. Firmware update network and process employing preprocessing techniques
AU2003260071A1 (en) 2002-08-27 2004-03-19 Td Security, Inc., Dba Trust Digital, Llc Enterprise-wide security system for computer devices
US20040044623A1 (en) * 2002-08-28 2004-03-04 Wake Susan L. Billing system for wireless device activity
US20040043753A1 (en) * 2002-08-30 2004-03-04 Wake Susan L. System and method for third party application sales and services to wireless devices
US20040044774A1 (en) * 2002-09-04 2004-03-04 Ruchi Mangalik System for providing content sharing and method therefor
US7669197B1 (en) 2002-09-12 2010-02-23 Hewlett-Packard Development Company, L.P. Embedded system employing component architecture platform
US7584471B2 (en) * 2002-09-23 2009-09-01 Telefonaktiebolaget L M Ericsson (Publ) Plug-in model
US7472380B1 (en) 2002-09-23 2008-12-30 Hewlett-Packard Development Company, L.P. Processing system with component architecture platform support
AU2003279950A1 (en) 2002-10-10 2004-05-04 Rocksteady Networks, Inc. System and method for providing access control
US7461372B2 (en) * 2002-10-11 2008-12-02 Hewlett-Packard Development Company, L.P. System for optimizing distribution of information employing a universal dictionary
WO2004036371A2 (en) 2002-10-16 2004-04-29 Rocksteady Networks, Inc. System and method for dynamic bandwidth provisioning
WO2004038546A2 (en) * 2002-10-21 2004-05-06 Bitfone Corporation System with required enhancements to syncml dm environment to support firmware updates
US7072672B1 (en) * 2002-11-01 2006-07-04 Nokia Corporation Disposable mini-applications
US20040093592A1 (en) 2002-11-13 2004-05-13 Rao Bindu Rama Firmware update in electronic devices employing SIM card for saving metadata information
US7984435B2 (en) * 2002-11-13 2011-07-19 Hewlett-Packard Development Company, L.P. Update system employing reference software to reduce number of update packages
US7047448B2 (en) * 2002-11-21 2006-05-16 Bitfone Corporation Software self-repair toolkit for electronic devices
US6996818B2 (en) * 2002-11-22 2006-02-07 Bitfone Corporation Update system for facilitating software update and data conversion in an electronic device
US7434216B1 (en) 2002-11-25 2008-10-07 Hewlett-Packard Development Company, L.P. Update package generator that employs genetic evolution to determine bank order
US7139559B2 (en) * 2002-12-09 2006-11-21 Qualcomm Inc. System and method for handshaking between wireless devices and servers
EP1584005B1 (en) 2002-12-18 2011-12-28 Hewlett-Packard Development Company, L.P. Mobile handset with a fault tolerant update agent
US9092286B2 (en) 2002-12-20 2015-07-28 Qualcomm Incorporated System to automatically process components on a device
AU2003300431A1 (en) * 2002-12-31 2004-07-29 Bitfone Corporation Management of service components installed in an electronic device in a mobile services network
US7480907B1 (en) 2003-01-09 2009-01-20 Hewlett-Packard Development Company, L.P. Mobile services network for update of firmware/software in mobile handsets
US7890427B1 (en) 2003-01-09 2011-02-15 Hewlett-Packard Development Company, L.P. Authentication of notifications received in an electronic device in a mobile services network
WO2004066091A2 (en) * 2003-01-21 2004-08-05 Bitfone Corporation Update system capable of updating software across multiple flash chips
WO2004072773A2 (en) * 2003-02-11 2004-08-26 Bitfone Corporation Electronic device supporting multiple update agents
JP4474833B2 (ja) * 2003-02-25 2010-06-09 日本電気株式会社 無線端末広告システム
US7689981B1 (en) 2003-02-28 2010-03-30 Hewlett-Packard Development Company, L.P. Mobile handset with efficient interruption point detection during a multiple-pass update process
US8082339B2 (en) 2003-02-28 2011-12-20 Hewlett-Packard Development Company, L.P. Electronic device network having graceful denial of service
US20040230965A1 (en) * 2003-02-28 2004-11-18 Harri Okkonen Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server
US7881745B1 (en) 2003-03-10 2011-02-01 Hewlett-Packard Development Company, L.P. Electronic device network employing provisioning techniques to update firmware and/or software in electronic devices
US7356727B1 (en) 2003-03-10 2008-04-08 Hewlett-Packard Development Company, L.P. Electronic device employing efficient fault tolerance
US9232077B2 (en) * 2003-03-12 2016-01-05 Qualcomm Incorporated Automatic subscription system for applications and services provided to wireless devices
US7668752B2 (en) 2003-03-13 2010-02-23 Realnetworks, Inc. System and method for the distribution of software products
US7548986B1 (en) 2003-03-17 2009-06-16 Hewlett-Packard Development Company, L.P. Electronic device network providing streaming updates
WO2004086196A2 (en) * 2003-03-24 2004-10-07 Bitfone Corporation Electronic device supporting multiple update agents
US7587411B2 (en) * 2003-03-27 2009-09-08 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7975147B1 (en) 2003-03-31 2011-07-05 Hewlett-Packard Development Company, L.P. Electronic device network supporting enciphering and deciphering and update generation in electronic devices
US7987449B1 (en) 2003-05-22 2011-07-26 Hewlett-Packard Development Company, L.P. Network for lifecycle management of firmware and software in electronic devices
US7644404B2 (en) 2003-06-04 2010-01-05 Hewlett-Packard Development Company, L.P. Network having customizable generators and electronic device having customizable updating software
US7747994B1 (en) 2003-06-04 2010-06-29 Hewlett-Packard Development Company, L.P. Generator based on multiple instruction streams and minimum size instruction set for generating updates to mobile handset
JP4232092B2 (ja) * 2003-06-06 2009-03-04 日本電気株式会社 携帯端末システム及び携帯端末
US7584466B1 (en) 2003-06-16 2009-09-01 Hewlett-Packard Development Company, L.P. Management tree management in a mobile handset
US8046753B1 (en) 2003-06-18 2011-10-25 Hewlett-Packard Development Company, L.P. Mobile handset with symbian OS and update agent
US7617324B2 (en) * 2003-06-20 2009-11-10 Sun Microsystems, Inc Protocol method for provisioning services
US8250565B2 (en) * 2003-06-27 2012-08-21 Hewlett-Packard Development Company, L.P. System and method for downloading update packages into a mobile handset in a carrier network
US20040267872A1 (en) * 2003-06-30 2004-12-30 Serdy Frank Stephen Provisioning interface
US7343443B1 (en) 2003-07-08 2008-03-11 Hewlett-Packard Development Company, L.P. Updated package generation based on analysis of bank dependency
US20050114504A1 (en) * 2003-07-09 2005-05-26 Sunil Marolia Carrier network capable of conducting remote diagnostics in a mobile handset
US7366125B1 (en) 2003-07-24 2008-04-29 Bbn Technologies Corp. Extensible satellite communication system
EP1652075B1 (en) * 2003-07-29 2018-10-31 Qualcomm Incorporated Mobile handset with update agent implemented in hardware
US7886093B1 (en) 2003-07-31 2011-02-08 Hewlett-Packard Development Company, L.P. Electronic device network supporting compression and decompression in electronic devices
US7624438B2 (en) 2003-08-20 2009-11-24 Eric White System and method for providing a secure connection between networked computers
US7451198B2 (en) * 2003-08-29 2008-11-11 Microsoft Corporation WAP XML extension for WiFi and desktop passthrough connections
US20050050456A1 (en) * 2003-08-29 2005-03-03 Dehamer Brian James Method and apparatus for supporting XML-based service consumption in a web presentation architecture
US11033821B2 (en) 2003-09-02 2021-06-15 Jeffrey D. Mullen Systems and methods for location based games and employment of the same on location enabled devices
KR101003888B1 (ko) * 2003-09-03 2010-12-30 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 전자 장치에서의 3-단계 부팅 프로세스
US8555273B1 (en) 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
US7668612B1 (en) 2003-09-18 2010-02-23 Hewlett-Packard Development Company, L.P. System and method for efficient manufacture and update of electronic devices
CA2538800A1 (en) * 2003-09-19 2005-04-14 Pctel, Inc. Apparatus and method for automated updating system for wireless networks
US7694293B2 (en) 2003-09-26 2010-04-06 Hewlett-Packard Development Company, L.P. Update package catalog for update package transfer between generator and content server in a network
WO2005036916A1 (en) * 2003-10-03 2005-04-21 Bitfone Corporation Network and method for registration of mobile devices and management of the mobile devices
US8626146B2 (en) 2003-10-29 2014-01-07 Qualcomm Incorporated Method, software and apparatus for performing actions on a wireless device using action lists and versioning
GB2407661A (en) 2003-10-31 2005-05-04 Hewlett Packard Development Co Method of validating device profiles and capability class descriptions
WO2005051021A1 (en) 2003-11-14 2005-06-02 Cingular Wireless Ii, Llc Subscriber identity module with video permissions
US7716276B1 (en) 2003-11-17 2010-05-11 Hewlett-Packard Development Company, L.P. Network that supports user-initiated device management
US7797693B1 (en) 2003-12-12 2010-09-14 Hewlett-Packard Development Company, L.P. NAND mobile devices capable of updating firmware or software in a manner analogous to NOR mobile devices
US7587712B2 (en) * 2003-12-19 2009-09-08 Marvell International Ltd. End-to-end architecture for mobile client JIT processing on network infrastructure trusted servers
WO2005064498A1 (en) 2003-12-23 2005-07-14 Trust Digital, Llc System and method for enforcing a security policy on mobile devices using dynamically generated security profiles
US7257583B2 (en) * 2004-01-09 2007-08-14 Microsoft Corporation System and method for updating an on-device application catalog in a mobile device receiving a push message from a catalog server indicating availability of an application for download
US9323515B1 (en) 2004-01-16 2016-04-26 Qualcomm Incorporated Network with broker for device management
JP2007519120A (ja) 2004-01-21 2007-07-12 クゥアルコム・インコーポレイテッド 無線加入者ネットワークにおけるアプリケーションをベースにした価値課金
US20050160414A1 (en) * 2004-01-21 2005-07-21 Nokia Corporation System and method for dynamically adding features to software applications
US7624449B1 (en) * 2004-01-22 2009-11-24 Symantec Corporation Countering polymorphic malicious computer code through code optimization
US8838754B1 (en) 2004-01-26 2014-09-16 Qualcomm Incorporated Mobile device with a management forest in a device management network
US7984485B1 (en) 2004-01-29 2011-07-19 Hewlett-Packard Development Company, L.P. Ingestion interface for transferring update package containers into a distribution network
US8387039B2 (en) * 2004-01-30 2013-02-26 Research In Motion Limited System and method for customized provisioning of application content
US7509658B2 (en) 2004-01-30 2009-03-24 Research In Motion Limited System and method for adaptable provisioning of generic application content
EP2088505A1 (en) * 2004-02-02 2009-08-12 Research In Motion Limited Computer system and method for adaptable provisioning of generic application content
EP1560114A1 (en) * 2004-02-02 2005-08-03 Research In Motion Limited Computer system and method for customized provisioning of application content
WO2005079334A2 (en) * 2004-02-12 2005-09-01 Bitfone Corporation Device management network that facilitates selective billing
US20050188406A1 (en) 2004-02-23 2005-08-25 Gielow Christopher C. System and method for managing applications and media content of a wireless communication device
US8549166B2 (en) * 2004-03-01 2013-10-01 Qualcomm Incorporated Execution of unverified programs in a wireless, device operating environment
US8543710B2 (en) 2004-03-10 2013-09-24 Rpx Corporation Method and system for controlling network access
US7610621B2 (en) 2004-03-10 2009-10-27 Eric White System and method for behavior-based firewall modeling
US7509625B2 (en) * 2004-03-10 2009-03-24 Eric White System and method for comprehensive code generation for system management
US7665130B2 (en) 2004-03-10 2010-02-16 Eric White System and method for double-capture/double-redirect to a different location
US7590728B2 (en) 2004-03-10 2009-09-15 Eric White System and method for detection of aberrant network behavior by clients of a network access gateway
US10200504B2 (en) 2007-06-12 2019-02-05 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US10339791B2 (en) 2007-06-12 2019-07-02 Icontrol Networks, Inc. Security network integrated with premise security system
US11811845B2 (en) 2004-03-16 2023-11-07 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US10348575B2 (en) 2013-06-27 2019-07-09 Icontrol Networks, Inc. Control system user interface
US11316958B2 (en) 2008-08-11 2022-04-26 Icontrol Networks, Inc. Virtual device systems and methods
US9141276B2 (en) 2005-03-16 2015-09-22 Icontrol Networks, Inc. Integrated interface for mobile device
US10721087B2 (en) * 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
GB2428821B (en) 2004-03-16 2008-06-04 Icontrol Networks Inc Premises management system
US10156959B2 (en) 2005-03-16 2018-12-18 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US8635350B2 (en) 2006-06-12 2014-01-21 Icontrol Networks, Inc. IP device discovery systems and methods
US10522026B2 (en) 2008-08-11 2019-12-31 Icontrol Networks, Inc. Automation system user interface with three-dimensional display
US11343380B2 (en) 2004-03-16 2022-05-24 Icontrol Networks, Inc. Premises system automation
US10237237B2 (en) 2007-06-12 2019-03-19 Icontrol Networks, Inc. Communication protocols in integrated systems
US10382452B1 (en) 2007-06-12 2019-08-13 Icontrol Networks, Inc. Communication protocols in integrated systems
US11201755B2 (en) 2004-03-16 2021-12-14 Icontrol Networks, Inc. Premises system management using status signal
US11368327B2 (en) 2008-08-11 2022-06-21 Icontrol Networks, Inc. Integrated cloud system for premises automation
US7711796B2 (en) 2006-06-12 2010-05-04 Icontrol Networks, Inc. Gateway registry methods and systems
US11277465B2 (en) 2004-03-16 2022-03-15 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US8988221B2 (en) 2005-03-16 2015-03-24 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US11677577B2 (en) 2004-03-16 2023-06-13 Icontrol Networks, Inc. Premises system management using status signal
US11916870B2 (en) 2004-03-16 2024-02-27 Icontrol Networks, Inc. Gateway registry methods and systems
US8963713B2 (en) 2005-03-16 2015-02-24 Icontrol Networks, Inc. Integrated security network with security alarm signaling system
US9531593B2 (en) 2007-06-12 2016-12-27 Icontrol Networks, Inc. Takeover processes in security network integrated with premise security system
US11582065B2 (en) 2007-06-12 2023-02-14 Icontrol Networks, Inc. Systems and methods for device communication
US11113950B2 (en) 2005-03-16 2021-09-07 Icontrol Networks, Inc. Gateway integrated with premises security system
US10062273B2 (en) 2010-09-28 2018-08-28 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US10444964B2 (en) 2007-06-12 2019-10-15 Icontrol Networks, Inc. Control system user interface
US10142392B2 (en) 2007-01-24 2018-11-27 Icontrol Networks, Inc. Methods and systems for improved system performance
US11244545B2 (en) 2004-03-16 2022-02-08 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US10375253B2 (en) 2008-08-25 2019-08-06 Icontrol Networks, Inc. Security system with networked touchscreen and gateway
US11489812B2 (en) 2004-03-16 2022-11-01 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US9191228B2 (en) 2005-03-16 2015-11-17 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US20090077623A1 (en) 2005-03-16 2009-03-19 Marc Baum Security Network Integrating Security System and Network Devices
US9729342B2 (en) 2010-12-20 2017-08-08 Icontrol Networks, Inc. Defining and implementing sensor triggered response rules
US9609003B1 (en) 2007-06-12 2017-03-28 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US11368429B2 (en) 2004-03-16 2022-06-21 Icontrol Networks, Inc. Premises management configuration and control
US11159484B2 (en) 2004-03-16 2021-10-26 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US10313303B2 (en) 2007-06-12 2019-06-04 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US7739679B2 (en) * 2004-04-06 2010-06-15 Hewlett-Packard Development Company, L.P. Object ordering tool for facilitating generation of firmware update friendly binary image
WO2005111795A1 (fr) * 2004-04-14 2005-11-24 France Telecom Procede d’evaluation de compatibilite d’une application et d’une plateforme de type java
US7904895B1 (en) 2004-04-21 2011-03-08 Hewlett-Packard Develpment Company, L.P. Firmware update in electronic devices employing update agent in a flash memory card
DE102004020395A1 (de) * 2004-04-23 2005-11-17 Vodafone Holding Gmbh Betreiben von mobilen Endgeräten zur Nutzung in Mobilfunknetzen
US7971199B1 (en) 2004-05-03 2011-06-28 Hewlett-Packard Development Company, L.P. Mobile device with a self-updating update agent in a wireless network
US7689982B1 (en) 2004-05-07 2010-03-30 Hewlett-Packard Development Company, L.P. Transparent linker profiler tool with profile database
US7543118B1 (en) 2004-05-07 2009-06-02 Hewlett-Packard Development Company, L.P. Multiple variance platform for the management of mobile devices
US7657886B1 (en) 2004-06-03 2010-02-02 Hewlett-Packard Development Company, L.P. Mobile device with a MMU for faster firmware updates in a wireless network
US8812613B2 (en) 2004-06-03 2014-08-19 Maxsp Corporation Virtual application manager
US9357031B2 (en) * 2004-06-03 2016-05-31 Microsoft Technology Licensing, Llc Applications as a service
FI20040944A0 (fi) * 2004-07-07 2004-07-07 Nokia Corp Sisältöviestinnän hallinta viestintäjärjestelmässä
US7664834B2 (en) * 2004-07-09 2010-02-16 Maxsp Corporation Distributed operating system management
US8526940B1 (en) 2004-08-17 2013-09-03 Palm, Inc. Centralized rules repository for smart phone customer care
FR2875921B1 (fr) * 2004-09-27 2006-12-01 Gemplus Sa Campagne de telechargement de donnees dans des objets communicants portables
US8756521B1 (en) 2004-09-30 2014-06-17 Rockwell Automation Technologies, Inc. Systems and methods for automatic visualization configuration
US8090844B2 (en) * 2004-10-08 2012-01-03 Truecontext Corporation Content management across shared, mobile file systems
DE102004049706A1 (de) * 2004-10-12 2006-04-20 Siemens Ag Verfahren und Vorrichtung für eingebettete Systeme, insbesondere rekonfigurierbare Mobilfunkendgeräte, mit ladbaren Softwaremodulen
US20060093149A1 (en) * 2004-10-30 2006-05-04 Shera International Ltd. Certified deployment of applications on terminals
JP2006134236A (ja) * 2004-11-09 2006-05-25 Canon Inc プロファイル取得方法、装置、プログラム、および、記憶媒体
US8585476B2 (en) 2004-11-16 2013-11-19 Jeffrey D Mullen Location-based games and augmented reality systems
GB0426736D0 (en) 2004-12-06 2005-01-12 Omnifone Ltd MyFone
DE102004063688A1 (de) * 2004-12-28 2006-07-13 Vodafone Holding Gmbh System und Verfahren zur Vermittlung von Daten zwischen einem Datenanbieter und einem Mobilfunkteilnehmer
US20060175271A1 (en) * 2005-01-31 2006-08-10 Emrey David A Apparatus and method of holding a golf score card and writing instrument, and golf bag and system incorporating the same
US20060179349A1 (en) * 2005-02-09 2006-08-10 Preemptive Solutions, Llc System and method for tracking exceptional states
US11496568B2 (en) 2005-03-16 2022-11-08 Icontrol Networks, Inc. Security system with networked touchscreen
US11700142B2 (en) 2005-03-16 2023-07-11 Icontrol Networks, Inc. Security network integrating security system and network devices
US9306809B2 (en) 2007-06-12 2016-04-05 Icontrol Networks, Inc. Security system with networked touchscreen
US20170180198A1 (en) 2008-08-11 2017-06-22 Marc Baum Forming a security network including integrated security system components
US11615697B2 (en) 2005-03-16 2023-03-28 Icontrol Networks, Inc. Premise management systems and methods
US10999254B2 (en) 2005-03-16 2021-05-04 Icontrol Networks, Inc. System for data routing in networks
US20120324566A1 (en) 2005-03-16 2012-12-20 Marc Baum Takeover Processes In Security Network Integrated With Premise Security System
EP1703382A1 (en) * 2005-03-16 2006-09-20 Sun Microsystems, Inc. Method for loading applications to a mobile device
US20110128378A1 (en) 2005-03-16 2011-06-02 Reza Raji Modular Electronic Display Platform
US20060225066A1 (en) * 2005-04-04 2006-10-05 Sharp Laboratories Of America, Inc. Systems and methods for extending an application on a mobile information device with additional functionality
JP4727278B2 (ja) * 2005-04-05 2011-07-20 株式会社エヌ・ティ・ティ・ドコモ アプリケーションプログラム検証システム、アプリケーションプログラム検証方法およびコンピュータプログラム
US8549049B2 (en) * 2005-04-13 2013-10-01 Sharp Laboratories Of America, Inc. Systems and methods for updating an application on a mobile information device
WO2006110005A1 (en) * 2005-04-15 2006-10-19 Ktfreetel Co., Ltd. Method for providing contents for mobile comunication terminal
JP2008515046A (ja) * 2005-04-15 2008-05-08 ケーティーフリーテル・カンパニー・リミテッド コンテンツの提供方法
KR100680296B1 (ko) * 2005-04-15 2007-02-07 주식회사 케이티프리텔 무선 네트워크를 통한 대용량 컨텐츠 이어받기 서비스 제공방법 및 이를 구현하기 위한 프로그램이 기록된 기록매체
CA2606193C (en) 2005-04-18 2015-03-17 Research In Motion Limited Method for providing wireless application privilege management
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
AU2006239739B2 (en) * 2005-04-28 2009-12-10 Hww Limited A system for the delivery of mobile content
NZ563312A (en) * 2005-04-28 2009-11-27 Hww Ltd A system for the delivery of mobile content
EP1891538A4 (en) 2005-05-11 2009-01-21 Bigfoot Networks Inc SYSTEM AND METHOD FOR DISTRIBUTED PROCESSING
US7676281B2 (en) * 2005-05-13 2010-03-09 Rockwell Automation Technologies, Inc. Distributed database in an industrial automation environment
US8799800B2 (en) 2005-05-13 2014-08-05 Rockwell Automation Technologies, Inc. Automatic user interface generation
US7650405B2 (en) 2005-05-13 2010-01-19 Rockwell Automation Technologies, Inc. Tracking and tracing across process boundaries in an industrial automation environment
US7672737B2 (en) * 2005-05-13 2010-03-02 Rockwell Automation Technologies, Inc. Hierarchically structured data model for utilization in industrial automation environments
US7809683B2 (en) * 2005-05-13 2010-10-05 Rockwell Automation Technologies, Inc. Library that includes modifiable industrial automation objects
US9350875B2 (en) 2005-05-31 2016-05-24 Qualcomm Incorporated Wireless subscriber billing and distribution
US9185538B2 (en) 2005-05-31 2015-11-10 Qualcomm Incorporated Wireless subscriber application and content distribution and differentiated pricing
US20060274869A1 (en) * 2005-06-07 2006-12-07 Yahoo! Inc. Dynamically generating content based on capabilities of a mobile device
US7746895B2 (en) * 2005-07-29 2010-06-29 Dell Products L.P. Guided discovery of media content
CN101258483B (zh) * 2005-09-09 2015-08-12 易享信息技术(上海)有限公司 用于在多租户数据库环境中导出、发布、浏览和安装随需应用的系统及其方法
US9455844B2 (en) * 2005-09-30 2016-09-27 Qualcomm Incorporated Distributed processing system and method
US7640424B2 (en) 2005-10-13 2009-12-29 Sandisk Corporation Initialization of flash storage via an embedded controller
DE602005008613D1 (de) * 2005-10-28 2008-09-11 Research In Motion Ltd Vorrichtung und Verfahren zum Bereitstellen von drahtlosen Diensten
US9274774B2 (en) * 2005-10-28 2016-03-01 Google Inc. Common installer server
WO2007120360A2 (en) 2005-12-29 2007-10-25 Blue Jungle Information management system
US7877409B2 (en) * 2005-12-29 2011-01-25 Nextlabs, Inc. Preventing conflicts of interests between two or more groups using applications
US7716240B2 (en) 2005-12-29 2010-05-11 Nextlabs, Inc. Techniques and system to deploy policies intelligently
CN101390432B (zh) * 2006-01-04 2013-01-02 思达伦特网络有限责任公司 基于简档信息选择应用会话服务以处理包数据流
US20070182841A1 (en) * 2006-02-07 2007-08-09 Donnie Drake Image sensing microelectronic device with glass tilt control features, and various methods of making same
EP1818822A1 (fr) 2006-02-10 2007-08-15 France Telecom Procédé et serveur de distribution de composants logiciels, et procédé de mise à jour et terminal et produits programme d'ordinateur correspondants
US9143622B2 (en) 2006-02-17 2015-09-22 Qualcomm Incorporated Prepay accounts for applications, services and content for communication devices
US9185234B2 (en) 2006-02-22 2015-11-10 Qualcomm Incorporated Automated account mapping in a wireless subscriber billing system
US20070204039A1 (en) * 2006-02-24 2007-08-30 Prasanna Inamdar System and method of downloading restricted applications to wireless devices
CA2638877C (en) * 2006-03-27 2012-05-29 Teamon Systems, Inc. Wireless email communications system providing resource updating features and related methods
US7962125B2 (en) * 2006-03-27 2011-06-14 Research In Motion Limited Wireless email communications system providing resource updating features and related methods
US7600064B2 (en) * 2006-03-31 2009-10-06 Research In Motion Limited System and method for provisioning a remote library for an electronic device
US8122174B2 (en) * 2006-03-31 2012-02-21 Research In Motion Limited System and method for provisioning a remote resource for an electronic device
US7835736B2 (en) 2006-04-03 2010-11-16 Disney Enterprises, Inc. System and method for initializing a portable communication device within a group at a point of activation
US8548452B2 (en) 2006-04-13 2013-10-01 Blackberry Limited System and method for controlling device usage
US9958934B1 (en) 2006-05-01 2018-05-01 Jeffrey D. Mullen Home and portable augmented reality and virtual reality video game consoles
US8898319B2 (en) 2006-05-24 2014-11-25 Maxsp Corporation Applications and services as a bundle
US8811396B2 (en) 2006-05-24 2014-08-19 Maxsp Corporation System for and method of securing a network utilizing credentials
WO2007146710A2 (en) 2006-06-08 2007-12-21 Hewlett-Packard Development Company, L.P. Device management in a network
US10079839B1 (en) 2007-06-12 2018-09-18 Icontrol Networks, Inc. Activation of gateway device
US8442485B2 (en) * 2006-06-19 2013-05-14 Cisco Technology, Inc. System and method for measuring and reporting service usage
US20080052279A1 (en) * 2006-07-12 2008-02-28 Sunil Marolia Device and network capable of providing personalized services
EP2047420A4 (en) 2006-07-27 2009-11-18 Hewlett Packard Development Co USER EXPERIENCE AND DEPENDENCE MANAGEMENT IN A MOBILE DEVICE
US20080027945A1 (en) * 2006-07-28 2008-01-31 Nichols Paul H Methods, systems and computer program products for downloading a Java application based on identification of supported classes
WO2008022198A2 (en) * 2006-08-15 2008-02-21 Hewlett-Packard Development Company, L.P. Friends finder service for a mobile device in a network
US20080052383A1 (en) * 2006-08-25 2008-02-28 Gpxs Holding Ltd. System and method for mobile device application management
US8019893B2 (en) * 2006-08-31 2011-09-13 Cisco Technology, Inc. Method and device to process network data
US9317506B2 (en) * 2006-09-22 2016-04-19 Microsoft Technology Licensing, Llc Accelerated data transfer using common prior data segments
US20080077622A1 (en) * 2006-09-22 2008-03-27 Keith Robert O Method of and apparatus for managing data utilizing configurable policies and schedules
EP1909466B1 (en) * 2006-10-03 2017-07-19 BlackBerry Limited Access control system and method for wireless application provisioning
US9137844B2 (en) * 2007-10-04 2015-09-15 Qualcomm Incorporated Method and apparatus for handling user equipment capability information
US7870255B2 (en) * 2006-10-03 2011-01-11 Research In Motion Limited Access control system and method for wireless application provisioning
US9251498B2 (en) * 2006-10-23 2016-02-02 Oracle International Corporation Facilitating deployment of customizations of enterprise applications
US8259568B2 (en) 2006-10-23 2012-09-04 Mcafee, Inc. System and method for controlling mobile device access to a network
US8929360B2 (en) * 2006-12-07 2015-01-06 Cisco Technology, Inc. Systems, methods, media, and means for hiding network topology
US7844686B1 (en) 2006-12-21 2010-11-30 Maxsp Corporation Warm standby appliance
US8370261B2 (en) * 2007-01-10 2013-02-05 Amnon Nissim System and a method for access management and billing
US11706279B2 (en) 2007-01-24 2023-07-18 Icontrol Networks, Inc. Methods and systems for data communication
US7633385B2 (en) 2007-02-28 2009-12-15 Ucontrol, Inc. Method and system for communicating with and controlling an alarm system from a remote server
US8701101B2 (en) * 2007-03-30 2014-04-15 Blackberry Limited System and method for managing upgrades for a portable electronic device
ATE425633T1 (de) * 2007-03-30 2009-03-15 Research In Motion Ltd System und verfahren zur verwaltung eines tragbaren elektronischen gerätes
US8451986B2 (en) 2007-04-23 2013-05-28 Icontrol Networks, Inc. Method and system for automatically providing alternate network access for telecommunications
US11237714B2 (en) 2007-06-12 2022-02-01 Control Networks, Inc. Control system user interface
US10498830B2 (en) 2007-06-12 2019-12-03 Icontrol Networks, Inc. Wi-Fi-to-serial encapsulation in systems
US11646907B2 (en) 2007-06-12 2023-05-09 Icontrol Networks, Inc. Communication protocols in integrated systems
US10523689B2 (en) 2007-06-12 2019-12-31 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US10423309B2 (en) 2007-06-12 2019-09-24 Icontrol Networks, Inc. Device integration framework
US10666523B2 (en) 2007-06-12 2020-05-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11212192B2 (en) 2007-06-12 2021-12-28 Icontrol Networks, Inc. Communication protocols in integrated systems
US11089122B2 (en) 2007-06-12 2021-08-10 Icontrol Networks, Inc. Controlling data routing among networks
US11316753B2 (en) 2007-06-12 2022-04-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11601810B2 (en) 2007-06-12 2023-03-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US10051078B2 (en) 2007-06-12 2018-08-14 Icontrol Networks, Inc. WiFi-to-serial encapsulation in systems
US10389736B2 (en) 2007-06-12 2019-08-20 Icontrol Networks, Inc. Communication protocols in integrated systems
US11218878B2 (en) 2007-06-12 2022-01-04 Icontrol Networks, Inc. Communication protocols in integrated systems
US11423756B2 (en) 2007-06-12 2022-08-23 Icontrol Networks, Inc. Communication protocols in integrated systems
US10616075B2 (en) 2007-06-12 2020-04-07 Icontrol Networks, Inc. Communication protocols in integrated systems
JP5065482B2 (ja) 2007-06-19 2012-10-31 クゥアルコム・インコーポレイテッド 無線環境においてデータセットを同期するための方法および機器
KR100906109B1 (ko) * 2007-06-20 2009-07-07 엔에이치엔(주) 3a 기반의 다양한 어플리케이션 상태를 제공하는유비쿼터스 프리젠스 서비스 방법 및 시스템
US8103865B2 (en) * 2007-08-01 2012-01-24 Phunware, Inc. Server method and system for rendering content on a wireless device
US8478245B2 (en) 2007-08-01 2013-07-02 Phunware, Inc. Method and system for rendering content on a wireless device
US11831462B2 (en) 2007-08-24 2023-11-28 Icontrol Networks, Inc. Controlling data routing in premises management systems
US7894436B1 (en) * 2007-09-07 2011-02-22 Meru Networks Flow inspection
US9015692B1 (en) 2007-10-23 2015-04-21 Phunware, Inc. Method and system for customizing content on a server for rendering on a wireless device
US8060594B1 (en) 2007-10-23 2011-11-15 Phunware, Inc. Client-side wireless communications link support for mobile handheld devices
US8009619B1 (en) 2007-10-23 2011-08-30 Phunware, Inc. Server-side wireless communications link support for mobile handheld devices
US7979350B1 (en) 2007-10-23 2011-07-12 Gotv Networks, Inc. Method and system for accessing wireless account information
US8307239B1 (en) 2007-10-26 2012-11-06 Maxsp Corporation Disaster recovery appliance
US8175418B1 (en) 2007-10-26 2012-05-08 Maxsp Corporation Method of and system for enhanced data storage
US8645515B2 (en) 2007-10-26 2014-02-04 Maxsp Corporation Environment manager
US8014720B2 (en) 2007-12-31 2011-09-06 Intel Corporation Service provisioning utilizing near field communication
US8107921B2 (en) 2008-01-11 2012-01-31 Seven Networks, Inc. Mobile virtual network operator
US11916928B2 (en) 2008-01-24 2024-02-27 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US8219595B2 (en) * 2008-02-14 2012-07-10 Hewlett-Packard Development Company, L.P. System and method for efficient remote data access for server management
EP2104313A1 (en) * 2008-03-20 2009-09-23 British Telecommunications Public Limited Company Method and apparatus for processing delivery of software items
US9069575B2 (en) 2008-03-25 2015-06-30 Qualcomm Incorporated Apparatus and methods for widget-related memory management
US9110685B2 (en) 2008-03-25 2015-08-18 Qualcomm, Incorporated Apparatus and methods for managing widgets in a wireless communication environment
US20090254479A1 (en) * 2008-04-02 2009-10-08 Pharris Dennis J Transaction server configured to authorize payment transactions using mobile telephone devices
US20090298582A1 (en) * 2008-05-30 2009-12-03 Matthew Robert Dempsky Method and system for distributing browser-based computer games and files
US8340634B2 (en) 2009-01-28 2012-12-25 Headwater Partners I, Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US8391834B2 (en) 2009-01-28 2013-03-05 Headwater Partners I Llc Security techniques for device assisted services
US8346225B2 (en) 2009-01-28 2013-01-01 Headwater Partners I, Llc Quality of service for device assisted services
US8832777B2 (en) 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US8924543B2 (en) 2009-01-28 2014-12-30 Headwater Partners I Llc Service design center for device assisted services
US8402111B2 (en) 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US8924469B2 (en) 2008-06-05 2014-12-30 Headwater Partners I Llc Enterprise access control and accounting allocation for access networks
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8635335B2 (en) 2009-01-28 2014-01-21 Headwater Partners I Llc System and method for wireless network offloading
US8406748B2 (en) 2009-01-28 2013-03-26 Headwater Partners I Llc Adaptive ambient services
US8725123B2 (en) 2008-06-05 2014-05-13 Headwater Partners I Llc Communications device with secure data path processing agents
US8548428B2 (en) 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US8626115B2 (en) 2009-01-28 2014-01-07 Headwater Partners I Llc Wireless network service interfaces
US8898293B2 (en) 2009-01-28 2014-11-25 Headwater Partners I Llc Service offer set publishing to device agent with on-device service selection
US8099332B2 (en) 2008-06-06 2012-01-17 Apple Inc. User interface for application management for a mobile device
AU2016250485B2 (en) * 2008-06-06 2019-05-02 Apple Inc. User interface for application management for a mobile device
US20170185278A1 (en) 2008-08-11 2017-06-29 Icontrol Networks, Inc. Automation system user interface
US8086562B2 (en) 2008-06-30 2011-12-27 Microsoft Corporation Arrangement for anonymous API downloaded resources for advanced content
US20100037204A1 (en) * 2008-08-07 2010-02-11 Google Inc. Content Distribution for Mobile Device
US10530839B2 (en) 2008-08-11 2020-01-07 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11729255B2 (en) 2008-08-11 2023-08-15 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11758026B2 (en) 2008-08-11 2023-09-12 Icontrol Networks, Inc. Virtual device systems and methods
US11792036B2 (en) 2008-08-11 2023-10-17 Icontrol Networks, Inc. Mobile premises automation platform
US11258625B2 (en) 2008-08-11 2022-02-22 Icontrol Networks, Inc. Mobile premises automation platform
EP2175613A1 (en) * 2008-10-08 2010-04-14 Research In Motion Limited Mobile wireless communications device and system providing dynamic management of carrier applications and related methods
EP2175614B1 (en) * 2008-10-08 2013-04-10 Research In Motion Limited System and methods for configuring an updating frequency for mobile wireless communications device application updates and related methods
US9781148B2 (en) 2008-10-21 2017-10-03 Lookout, Inc. Methods and systems for sharing risk responses between collections of mobile communications devices
US9367680B2 (en) * 2008-10-21 2016-06-14 Lookout, Inc. System and method for mobile communication device application advisement
US8661056B1 (en) * 2008-11-03 2014-02-25 Salesforce.Com, Inc. System, method and computer program product for publicly providing web content of a tenant using a multi-tenant on-demand database service
US8650290B2 (en) * 2008-12-19 2014-02-11 Openpeak Inc. Portable computing device and method of operation of same
US8713173B2 (en) 2008-12-19 2014-04-29 Openpeak Inc. System and method for ensuring compliance with organizational policies
US8615581B2 (en) * 2008-12-19 2013-12-24 Openpeak Inc. System for managing devices and method of operation of same
US8199507B2 (en) * 2008-12-19 2012-06-12 Openpeak Inc. Telephony and digital media services device
US8788655B2 (en) * 2008-12-19 2014-07-22 Openpeak Inc. Systems for accepting and approving applications and methods of operation of same
US8856322B2 (en) 2008-12-19 2014-10-07 Openpeak Inc. Supervisory portal systems and methods of operation of same
US8612582B2 (en) * 2008-12-19 2013-12-17 Openpeak Inc. Managed services portals and method of operation of same
US8745213B2 (en) * 2008-12-19 2014-06-03 Openpeak Inc. Managed services platform and method of operation of same
US10484858B2 (en) 2009-01-28 2019-11-19 Headwater Research Llc Enhanced roaming services and converged carrier networks with device assisted services and a proxy
US9557889B2 (en) 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US10798252B2 (en) 2009-01-28 2020-10-06 Headwater Research Llc System and method for providing user notifications
US9351193B2 (en) 2009-01-28 2016-05-24 Headwater Partners I Llc Intermediate networking devices
US8793758B2 (en) 2009-01-28 2014-07-29 Headwater Partners I Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10057775B2 (en) 2009-01-28 2018-08-21 Headwater Research Llc Virtualized policy and charging system
US10841839B2 (en) 2009-01-28 2020-11-17 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US10715342B2 (en) 2009-01-28 2020-07-14 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US9609510B2 (en) 2009-01-28 2017-03-28 Headwater Research Llc Automated credential porting for mobile devices
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US9253663B2 (en) 2009-01-28 2016-02-02 Headwater Partners I Llc Controlling mobile device communications on a roaming network based on device state
US10064055B2 (en) 2009-01-28 2018-08-28 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US8893009B2 (en) 2009-01-28 2014-11-18 Headwater Partners I Llc End user device that secures an association of application to service policy with an application certificate check
US8745191B2 (en) 2009-01-28 2014-06-03 Headwater Partners I Llc System and method for providing user notifications
US9647918B2 (en) 2009-01-28 2017-05-09 Headwater Research Llc Mobile device and method attributing media services network usage to requesting application
US10492102B2 (en) 2009-01-28 2019-11-26 Headwater Research Llc Intermediate networking devices
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US10200541B2 (en) 2009-01-28 2019-02-05 Headwater Research Llc Wireless end-user device with divided user space/kernel space traffic policy system
US9955332B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Method for child wireless device activation to subscriber account of a master wireless device
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US11218854B2 (en) 2009-01-28 2022-01-04 Headwater Research Llc Service plan design, user interfaces, application programming interfaces, and device management
US9858559B2 (en) 2009-01-28 2018-01-02 Headwater Research Llc Network service plan design
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US9954975B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Enhanced curfew and protection associated with a device group
US9392462B2 (en) 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US9755842B2 (en) 2009-01-28 2017-09-05 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US9578182B2 (en) 2009-01-28 2017-02-21 Headwater Partners I Llc Mobile device and service management
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US9270559B2 (en) 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US10783581B2 (en) 2009-01-28 2020-09-22 Headwater Research Llc Wireless end-user device providing ambient or sponsored services
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US8351898B2 (en) 2009-01-28 2013-01-08 Headwater Partners I Llc Verifiable device assisted service usage billing with integrated accounting, mediation accounting, and multi-account
US10248996B2 (en) 2009-01-28 2019-04-02 Headwater Research Llc Method for operating a wireless end-user device mobile payment agent
US8606911B2 (en) 2009-03-02 2013-12-10 Headwater Partners I Llc Flow tagging for service policy implementation
US10779177B2 (en) 2009-01-28 2020-09-15 Headwater Research Llc Device group partitions and settlement platform
US8838084B2 (en) * 2009-02-27 2014-09-16 Blackberry Limited System and method for provisioning mobile communication device upgrades
KR101042794B1 (ko) * 2009-04-09 2011-06-20 삼성에스디에스 주식회사 휴대단말기에서의 시스템온칩 및 주문형반도체 기반의 악성코드 검출 장치
KR101058301B1 (ko) * 2009-04-09 2011-08-22 삼성에스디에스 주식회사 휴대단말기에서의 시스템온칩 기반의 악성코드 검출 장치
KR101042733B1 (ko) * 2009-04-09 2011-06-20 삼성에스디에스 주식회사 휴대단말기에서의 시스템온칩 기반의 악성코드 검출 장치
KR101042729B1 (ko) 2009-04-09 2011-06-20 삼성에스디에스 주식회사 휴대단말기에서의 시스템온칩 및 주문형반도체 기반의 악성코드 검출 장치
US8725745B2 (en) 2009-04-13 2014-05-13 Microsoft Corporation Provision of applications to mobile devices
US20100274671A1 (en) * 2009-04-27 2010-10-28 Sony Corporation And Sony Electronics Inc. System and method for distributing contextual information in an electronic network
US8638211B2 (en) 2009-04-30 2014-01-28 Icontrol Networks, Inc. Configurable controller and interface for home SMA, phone and multimedia
US20100332996A1 (en) * 2009-06-25 2010-12-30 Nokia Corporation Method and apparatus of acquiring information regarding applications for display on a user interface
US10387140B2 (en) 2009-07-23 2019-08-20 S3G Technology Llc Modification of terminal and service provider machines using an update server machine
US10198414B2 (en) * 2009-09-10 2019-02-05 Usablenet Inc. Methods for optimizing interaction with a form in a website page and systems thereof
US8352797B2 (en) * 2009-12-08 2013-01-08 Microsoft Corporation Software fault isolation using byte-granularity memory protection
US9197482B1 (en) 2009-12-29 2015-11-24 Meru Networks Optimizing quality of service in wireless networks
CN101799757B (zh) * 2010-01-22 2013-01-16 华为终端有限公司 Java软件集成到移动终端的方法、装置及移动终端
US9544143B2 (en) 2010-03-03 2017-01-10 Duo Security, Inc. System and method of notifying mobile devices to complete transactions
US9532222B2 (en) 2010-03-03 2016-12-27 Duo Security, Inc. System and method of notifying mobile devices to complete transactions after additional agent verification
US8484401B2 (en) 2010-04-15 2013-07-09 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8984533B2 (en) 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9392072B2 (en) 2010-04-15 2016-07-12 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8935384B2 (en) 2010-05-06 2015-01-13 Mcafee Inc. Distributed data revocation using data commands
EP2569712B1 (en) 2010-05-10 2021-10-13 Icontrol Networks, Inc. Control system user interface
US20110276651A1 (en) * 2010-05-10 2011-11-10 Nokia Siemens Networks Oy Routing logic
US20130212596A1 (en) * 2010-05-10 2013-08-15 Nokia Siemens Networks Oy Routing logic
US8365287B2 (en) 2010-06-18 2013-01-29 Samsung Sds Co., Ltd. Anti-malware system and operating method thereof
KR101279213B1 (ko) 2010-07-21 2013-06-26 삼성에스디에스 주식회사 시스템 온 칩 기반의 안티-멀웨어 서비스를 제공할 수 있는 디바이스 및 그 방법과 인터페이스 방법
US9241190B2 (en) 2010-08-24 2016-01-19 Cisco Technology, Inc. Generating a response to video content request including dynamically processed video content
US8836467B1 (en) 2010-09-28 2014-09-16 Icontrol Networks, Inc. Method, system and apparatus for automated reporting of account and sensor zone information to a central station
EP2638465A2 (en) * 2010-11-09 2013-09-18 Openpeak Inc. Communication devices, networks, services and accompanying methods
US8359016B2 (en) 2010-11-19 2013-01-22 Mobile Iron, Inc. Management of mobile applications
CN108156265B (zh) 2010-11-22 2019-03-26 杭州硕文软件有限公司 一种应用程序控制方法及移动设备
US9774700B2 (en) * 2010-11-22 2017-09-26 Verizon Patent And Licensing Inc. Management system for managing a VoIP network service
US11750414B2 (en) 2010-12-16 2023-09-05 Icontrol Networks, Inc. Bidirectional security sensor communication for a premises security system
US9147337B2 (en) 2010-12-17 2015-09-29 Icontrol Networks, Inc. Method and system for logging security event data
JP5788963B2 (ja) * 2011-02-21 2015-10-07 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America データ処理装置、データ処理システム及びデータ処理方法
US20120227035A1 (en) * 2011-03-03 2012-09-06 Microsoft Corporation Cross platform service notification
EP2500838A1 (en) 2011-03-16 2012-09-19 Samsung SDS Co. Ltd. SOC-based device for packet filtering and packet filtering method thereof
US9275162B2 (en) 2011-03-22 2016-03-01 Blackberry Limited Pre-caching web content for a mobile device
US9154826B2 (en) 2011-04-06 2015-10-06 Headwater Partners Ii Llc Distributing content and service launch objects to mobile devices
US9058612B2 (en) * 2011-05-27 2015-06-16 AVG Netherlands B.V. Systems and methods for recommending software applications
US8538845B2 (en) 2011-06-03 2013-09-17 Mozido, Llc Monetary transaction system
US9401917B2 (en) 2011-06-03 2016-07-26 Blackberry Limited Pre-caching resources based on a cache manifest
US9467463B2 (en) 2011-09-02 2016-10-11 Duo Security, Inc. System and method for assessing vulnerability of a mobile device
US20130067448A1 (en) * 2011-09-09 2013-03-14 Microsoft Corporation Application deployment
US8943150B2 (en) * 2011-09-12 2015-01-27 Fiserv, Inc. Systems and methods for customizing mobile applications based upon user associations with one or more entities
GB2495081A (en) * 2011-09-23 2013-04-03 Centrix Networking Ltd Management system for delivering an application
US9521439B1 (en) 2011-10-04 2016-12-13 Cisco Technology, Inc. Systems and methods for correlating multiple TCP sessions for a video transfer
US8755342B2 (en) 2011-10-05 2014-06-17 Cisco Technology, Inc. System and method for dynamic bearer selection for immersive video collaboration in mobile wireless networks
US8695060B2 (en) 2011-10-10 2014-04-08 Openpeak Inc. System and method for creating secure applications
US8239918B1 (en) * 2011-10-11 2012-08-07 Google Inc. Application marketplace administrative controls
KR101295644B1 (ko) * 2011-11-11 2013-09-16 한국전자통신연구원 스마트폰 앱 검증 시스템 및 그 방법
US10438196B2 (en) 2011-11-21 2019-10-08 Mozido, Inc. Using a mobile wallet infrastructure to support multiple mobile wallet providers
US9208488B2 (en) 2011-11-21 2015-12-08 Mozido, Inc. Using a mobile wallet infrastructure to support multiple mobile wallet providers
US8903955B2 (en) 2011-12-02 2014-12-02 Cisco Technology, Inc. Systems and methods for intelligent video delivery and cache management
US9055120B1 (en) * 2011-12-16 2015-06-09 Google Inc. Device capability filtering
EP3629181B1 (en) * 2012-01-24 2022-10-05 SSH Communications Security Oyj Privileged access auditing
CN102790776B (zh) * 2012-08-03 2015-02-04 中国联合网络通信集团有限公司 心跳连接归一处理方法、终端、服务器及通信系统
US8966007B2 (en) 2012-09-10 2015-02-24 Kt Corporation Method and apparatus for providing web contents
US9565475B2 (en) * 2012-10-11 2017-02-07 Netflix, Inc. System and method for managing playback of streaming digital content
US9727321B2 (en) 2012-10-11 2017-08-08 Netflix, Inc. System and method for managing playback of streaming digital content
RU2619263C2 (ru) * 2013-01-10 2017-05-15 Нокиа Текнолоджиз Ой Обработка вспомогательных данных для глобального позиционирования
US9092302B2 (en) * 2013-09-10 2015-07-28 Duo Security, Inc. System and method for determining component version compatibility across a device ecosystem
US9507609B2 (en) 2013-09-29 2016-11-29 Taplytics Inc. System and method for developing an application
US20150112769A1 (en) * 2013-10-18 2015-04-23 Caterpillar Inc. System and method for managing a worksite
KR101418038B1 (ko) * 2013-11-28 2014-07-22 주식회사 케이티 웹 콘텐츠를 제공하는 방법 및 장치
JP6322976B2 (ja) 2013-11-29 2018-05-16 富士通株式会社 情報処理装置及びユーザ認証方法
CN103685491B (zh) * 2013-12-04 2017-10-17 华为技术有限公司 一种应用服务提供方法、系统及相关设备
US11405463B2 (en) 2014-03-03 2022-08-02 Icontrol Networks, Inc. Media content management
US11146637B2 (en) 2014-03-03 2021-10-12 Icontrol Networks, Inc. Media content management
US10140654B2 (en) * 2014-03-20 2018-11-27 United Parcel Service Of America, Inc. Concepts for repair and service of a consumer device using a network connection and diagnostic test
JP6340872B2 (ja) * 2014-03-31 2018-06-13 富士通株式会社 購入制御装置、購入制御方法及び購入制御プログラム
US10885565B1 (en) * 2014-06-20 2021-01-05 Amazon Technologies, Inc. Network-based data discovery and consumption coordination service
US9270815B2 (en) * 2014-06-24 2016-02-23 At&T Intellectual Property I, Lp Method and apparatus for data management of third party services
US9350818B2 (en) 2014-09-05 2016-05-24 Openpeak Inc. Method and system for enabling data usage accounting for unreliable transport communication
US9232013B1 (en) 2014-09-05 2016-01-05 Openpeak Inc. Method and system for enabling data usage accounting
US8938547B1 (en) 2014-09-05 2015-01-20 Openpeak Inc. Method and system for data usage accounting in a computing device
US9100390B1 (en) 2014-09-05 2015-08-04 Openpeak Inc. Method and system for enrolling and authenticating computing devices for data usage accounting
US20160071040A1 (en) 2014-09-05 2016-03-10 Openpeak Inc. Method and system for enabling data usage accounting through a relay
WO2016061520A1 (en) * 2014-10-16 2016-04-21 Amazon Technologies, Inc. On-demand delivery of applications to virtual desktops
US9495142B2 (en) 2014-11-07 2016-11-15 Amazon Technologies, Inc. Dynamic reconstruction of application state upon application re-launch
US10152211B2 (en) 2014-11-11 2018-12-11 Amazon Technologies, Inc. Application delivery agents on virtual desktop instances
US10182103B2 (en) 2014-10-16 2019-01-15 Amazon Technologies, Inc. On-demand delivery of applications to virtual desktops
US9985953B2 (en) 2014-11-10 2018-05-29 Amazon Technologies, Inc. Desktop application fulfillment platform with multiple authentication mechanisms
US10116601B2 (en) * 2015-02-06 2018-10-30 Jamdeo Canada Ltd. Methods and devices for display device notifications
US9232078B1 (en) 2015-03-16 2016-01-05 Openpeak Inc. Method and system for data usage accounting across multiple communication networks
US9733927B2 (en) * 2015-11-11 2017-08-15 International Business Machines Corporation Detection of software or hardware incompatibilities in software packages
EP3501139B1 (en) * 2016-08-18 2020-11-18 Telefonaktiebolaget LM Ericsson (publ) Online charging for application download
US10083029B2 (en) * 2016-11-09 2018-09-25 Red Hat, Inc. Detect application defects by correlating contracts in application dependencies
US10757110B2 (en) 2016-12-21 2020-08-25 Microsoft Technology Licensing, Llc Generation of application allowed lists for machines
US10412113B2 (en) 2017-12-08 2019-09-10 Duo Security, Inc. Systems and methods for intelligently configuring computer security
JP2022513444A (ja) * 2018-12-07 2022-02-08 フリート スペース テクノロジーズ プロプライエタリー リミテッド 高レイテンシ通信システムにおけるバックホールを有する遠隔lpwanゲートウェイ
US11658962B2 (en) 2018-12-07 2023-05-23 Cisco Technology, Inc. Systems and methods of push-based verification of a transaction
EP3712789A1 (en) * 2019-03-22 2020-09-23 Siemens Aktiengesellschaft Method and administration device for administrating code artifacts for an industrial system

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4640986A (en) * 1983-09-16 1987-02-03 Nec Corporation Mobile radio communication system
US5103475A (en) * 1990-10-29 1992-04-07 At&T Bell Laboratories Processing of telecommunications call billing data
US5418837A (en) * 1993-07-30 1995-05-23 Ericsson-Ge Mobile Communications Inc. Method and apparatus for upgrading cellular mobile telephones
US5634010A (en) * 1994-10-21 1997-05-27 Modulus Technologies, Inc. Managing and distributing data objects of different types between computers connected to a network
US6141652A (en) * 1995-10-10 2000-10-31 British Telecommunications Public Limited Company Operating apparatus
DE19543843C2 (de) * 1995-11-24 2001-02-08 Acer Peripherals Inc Verfahren zur Aktualisierung der Software in einem mikrocomputergestützten Telefon
US5708709A (en) * 1995-12-08 1998-01-13 Sun Microsystems, Inc. System and method for managing try-and-buy usage of application programs
US6578113B2 (en) * 1997-06-02 2003-06-10 At&T Corp. Method for cache validation for proxy caches
US6377982B1 (en) * 1997-10-14 2002-04-23 Lucent Technologies Inc. Accounting system in a network
US6088803A (en) * 1997-12-30 2000-07-11 Intel Corporation System for virus-checking network data during download to a client device
US6081900A (en) * 1999-03-16 2000-06-27 Novell, Inc. Secure intranet access
US6647260B2 (en) * 1999-04-09 2003-11-11 Openwave Systems Inc. Method and system facilitating web based provisioning of two-way mobile communications devices
US6845398B1 (en) * 1999-08-02 2005-01-18 Lucent Technologies Inc. Wireless multimedia player
US6662233B1 (en) * 1999-09-23 2003-12-09 Intel Corporation System dynamically translates translation information corresponding to a version of a content element having a bandwidth corresponding to bandwidth capability of a recipient
US6430624B1 (en) * 1999-10-21 2002-08-06 Air2Web, Inc. Intelligent harvesting and navigation system and method
US6658455B1 (en) * 1999-12-30 2003-12-02 At&T Corp. Method and system for an enhanced network and customer premise equipment personal directory
US20020029287A1 (en) * 2000-02-02 2002-03-07 Yechiam Yemini Method and apparatus for dynamically addressing a circuits based network
US7266369B2 (en) * 2000-04-04 2007-09-04 Samsung Electronics Co., Ltd. System and method for provisioning or updating a mobile station using over-the-air transfer of interpreted byte-code program
US6721804B1 (en) * 2000-04-07 2004-04-13 Danger, Inc. Portal system for converting requested data into a bytecode format based on portal device's graphical capabilities
US7181542B2 (en) * 2000-04-12 2007-02-20 Corente, Inc. Method and system for managing and configuring virtual private networks
US6615038B1 (en) * 2000-04-28 2003-09-02 Samsung Electronics Co., Ltd. System and method for automatically creating and updating a mobile station configuration database in a wireless network
CN100454950C (zh) * 2000-07-21 2009-01-21 特里马克公司 用于确定无线装置数据费率的方法及系统
US6823373B1 (en) * 2000-08-11 2004-11-23 Informatica Corporation System and method for coupling remote data stores and mobile devices via an internet based server
US6741853B1 (en) * 2000-11-09 2004-05-25 Nortel Networks Limited Device aware internet portal
US20030009385A1 (en) * 2000-12-26 2003-01-09 Tucciarone Joel D. Electronic messaging system and method thereof
US7188091B2 (en) * 2001-03-21 2007-03-06 Resolutionebs, Inc. Rule processing system
US20020138622A1 (en) * 2001-03-21 2002-09-26 Motorola, Inc. Apparatus and method of using long lived addresses in a private network for push messaging to mobile devices

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1728710B (zh) * 2004-07-20 2010-06-16 阿尔卡特公司 检索网络文件的方法和网络服务器
CN101495967B (zh) * 2005-04-22 2013-05-08 微软公司 一种无服务器对等网络中邀请用户的应用程序接口
CN100442704C (zh) * 2005-07-19 2008-12-10 上海华为技术有限公司 通信系统中升级基站的方法
CN1984151B (zh) * 2005-10-27 2012-07-04 捷讯研究有限公司 用于供应无线服务的方法和系统
CN101080037B (zh) * 2006-05-26 2010-07-07 泰利双星科技有限公司 用于准备移动内容的方法和设备
CN101460939B (zh) * 2006-07-05 2011-01-26 艾格瑞系统有限公司 移动数据存储和采集的系统和方法
CN101523853B (zh) * 2006-10-04 2013-07-31 波音公司 用于保护计算机网络安全的方法和系统
CN101068258B (zh) * 2006-12-14 2011-09-21 腾讯科技(深圳)有限公司 一种电子游戏的控制方法及控制系统
CN102365623B (zh) * 2009-01-28 2013-03-20 海德沃特合作I有限公司 通信系统和方法
CN101799765B (zh) * 2009-02-09 2013-11-06 苹果公司 从在线应用仓库下载应用程序的方法、设备和系统
CN102378963A (zh) * 2009-04-01 2012-03-14 摩托罗拉移动公司 利用模型来审查可执行程序的方法和装置
CN101964809A (zh) * 2009-07-24 2011-02-02 美国博通公司 用于网络管理的方法和系统
US9836783B2 (en) 2009-07-24 2017-12-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for content selection, delivery and payment
US10366449B2 (en) 2009-07-24 2019-07-30 Avago Technologies International Sales Pte. Limited Method and system for content selection, delivery and payment
CN102609662A (zh) * 2010-12-20 2012-07-25 微软公司 防篡改的位置服务
CN102609662B (zh) * 2010-12-20 2015-08-05 微软公司 防篡改的位置服务
CN102158810A (zh) * 2011-04-20 2011-08-17 中兴通讯股份有限公司 基于组播方式下载应用的方法、装置和系统
CN102158810B (zh) * 2011-04-20 2016-09-28 中兴通讯股份有限公司 基于组播方式下载应用的方法、装置和系统
JP2017073153A (ja) * 2011-06-29 2017-04-13 フリースタイル・テクノロジー・プロプライエタリー・リミテッドFreestyle Technology Pty Ltd 異なる通信プロトコルを用いて装置間の通信を可能にするためのシステム、方法、及び/又は装置
US10310834B2 (en) 2014-01-06 2019-06-04 Samsung Electronics Co., Ltd. Searching and accessing application functionality
CN106233285A (zh) * 2014-02-21 2016-12-14 奎克西公司 搜索和访问软件应用功能
US10353977B2 (en) 2014-02-21 2019-07-16 Samsung Electronics Co., Ltd. Computer-implemented method for automated operating-system-specific access to software functionality
CN106233285B (zh) * 2014-02-21 2020-01-21 三星电子株式会社 搜索和访问软件应用功能

Also Published As

Publication number Publication date
JP2009037598A (ja) 2009-02-19
JP2007179557A (ja) 2007-07-12
WO2002044892A3 (en) 2002-09-26
WO2002044892A2 (en) 2002-06-06
EP1340167A2 (en) 2003-09-03
JP2004530958A (ja) 2004-10-07
US20020131404A1 (en) 2002-09-19
AU2002226995A1 (en) 2002-06-11

Similar Documents

Publication Publication Date Title
CN1489736A (zh) 用于维护和分发无线应用的方法和系统
US20080301231A1 (en) Method and System for Maintaining and Distributing Wireless Applications
EP2012229B1 (en) Mobile provisioning tool system
JP4139228B2 (ja) アプリケーションの通信に基づく請求方法およびシステム
CA2480821C (en) Connector gateway
US11886609B2 (en) Computer-implemented methods, systems comprising computer-readable media, and electronic devices for secure multi-datasource query job status notificaion
JP3958689B2 (ja) 無線ネットワークにおけるアプリケーション分配および料金請求システム
US8977647B2 (en) On-demand database service system, method and computer program product for conditionally allowing an application of an entity access to data of another entity
CN102185900B (zh) 一种应用服务平台系统和一种开发应用服务的方法
US20080270987A1 (en) Method and system for allowing access to developed applications via a multi-tenant on-demand database service
US8818338B2 (en) Service platform for cellular telephony
CN101305555B (zh) 使用元数据的多媒体中间件装置和用于控制多媒体中间件的方法
US8341530B1 (en) Customer service center database management

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20040414