BRPI0720581A2 - Transferir programaticamente aplicativos entre aparelhos telefônicos com base em informações de licença - Google Patents
Transferir programaticamente aplicativos entre aparelhos telefônicos com base em informações de licença Download PDFInfo
- Publication number
- BRPI0720581A2 BRPI0720581A2 BRPI0720581-3A BRPI0720581A BRPI0720581A2 BR PI0720581 A2 BRPI0720581 A2 BR PI0720581A2 BR PI0720581 A BRPI0720581 A BR PI0720581A BR PI0720581 A2 BRPI0720581 A2 BR PI0720581A2
- Authority
- BR
- Brazil
- Prior art keywords
- application
- user
- transaction
- user device
- transfer
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/108—Transfer of content, software, digital rights or licenses
- G06F21/1086—Superdistribution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/04—Billing or invoicing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services
- G06Q50/188—Electronic negotiation
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Technology Law (AREA)
- Tourism & Hospitality (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
- Telephonic Communication Services (AREA)
Description
"TRANSFERIR PROGRAMATICAMENTE APLICATIVOS ENTRE APARELHOS TELEFÔNICOS COM BASE EM INFORMAÇÕES DE LICENÇA"
Reivindicação de Prioridade sob 35 U.S.C. § 119
O presente pedido de patente reivindica prioridade do pedido provisório No. 60/870.706, intitulado "METHODS, SYSTEMS AND APPARATUS FOR CONTENT TRANSFER" depositado em 19 de dezembro de 2006, e cedido para o cessionário do presente pedido e expressamente incorporado aqui por referência.
FUNDAMENTOS
Os presentes aspectos se referem geralmente à comunicação, e mais particularmente a redes de comunicações de dados que fornecem o equipamento de usuário com um código executável por aplicativo.
Os avanços na tecnologia têm resultado em dispositivos de computação pessoais menores e mais poderosos. Por exemplo, existe atualmente uma variedade de dispositivos de computação pessoais portáteis, incluindo os dispositivos de computação sem fio, tal como telefones sem fio portáteis, assistentes digitais pessoais (PDAs) e dispositivos de paging que são pequenos, leves e podem ser facilmente transportados pelos usuários. Com os avanços na tecnologia de computação, os consumidores recebem cada vez mais ofertas de muitos tipos de dispositivos eletrônicos ("equipamento de usuário") que podem ser fornecidos com um conjunto de aplicativos de software. Características distintas tal como correio eletrônico, navegação pela Internet, jogos, cadernos de endereços, calendários, reprodutores de mídia, visualização de livro eletrônico, comunicação de voz, serviços de diretório, etc., são cada vez mais aplicativos selecionáveis que podem ser carregados em um dispositivo de múltiplas funções tal como um telefone inteligente, um console de jogo portátil, ou computador portátil. A compra conveniente dos aplicativos desejados é frequentemente disponível juntamente com a compra inicial ou depois da compra do hardware. Tais características 5 ativadas por software em separado tendem a ter licenças individuais, especialmente quando adquiridas e
descarregadas separadamente do hardware. Como tal, um equipamento de usuário em particular (UE) pode ter um valor residual significativo representado por tais licenças, além 10 de um valor subjetivo de acordo com o tempo e inconveniência que seriam exigidos para se configurar de forma similar um dispositivo substituto.
Com os aumentos em tecnologia, probabilidade melhorada e redução nos custos de muitos UE ativados por 15 software, a probabilidade aumenta de o UE ser substituído com frequência. Primeiro, um dispositivo aperfeiçoado pode se tornar disponível o qual o usuário prefira utilizar permanentemente, descartando ou permutando pelo UE anterior. Em segundo lugar, o UE que é bem pequeno e 20 portátil pode ser perdido ou danificado enquanto está sendo transportado. Em terceiro lugar, um usuário pode ter uma coleção de dispositivos UE que são selecionados para uma função particular com base no tamanho, nas características, na robustez e na estética de forma análoga à escolha de um 25 relógio de pulso ou uma bolsa. No entanto, a compra de licenças adicionais para essas situações é desnecessária visto que o usuário só estará utilizando um dispositivo de cada vez. A fim de encorajar a compra inicial e a fim de manter a fidelidade do cliente, os vendedores de 30 aplicativos de software podem desejar utilizar licenças que forneçam uma transferência sem custos para outro dispositivo; no entanto, a viabilidade econômica dos vendedores dos aplicativos de software exige que tais licenças sejam difíceis de se fraudar em outras situações, tal como quando nenhum aplicativo equivalente, mas apenas um aplicativo mais valioso, está disponível para uma plataforma de computação em particular de um novo UE.
5 Aplicativos muito pequenos também podem possuir um pequeno royalty de licenciamento que só é possível se tais transações de licenciamento e distribuições ocorrerem sem uma quantia indevida, ou talvez algum suporte de cliente para o usuário.
Cada uma dessas considerações é particularmente
adequada para os telefones sem fio portáteis, por exemplo, que incluem adicionalmente telefones celulares que comunicam pacotes de voz e dados através de redes sem fio. Adicionalmente, muitos dos telefones celulares estão sendo 15 fabricados com aumentos relativamente grandes nas capacidades de computação, e como tal, estão se tornando críticos para os computadores pessoais pequenos e PDAs portáteis. No entanto, esses dispositivos de computação pessoal menores podem ser severamente restritos em termos 20 de recurso. Por exemplo, o tamanho da tela, a quantidade de memória disponível e o espaço do sistema de arquivamento, a quantidade de capacidades de entrada e saída e a capacidade de processamento podem, cada uma, ser limitadas pelo tamanho reduzido do dispositivo. Devido a tais restrições 25 severas de recurso, é frequentemente desejável, por exemplo, se manter um tamanho limitado e quantidade de aplicativos de software e outras informações residentes em tais dispositivos de computação pessoal remotos, por exemplo, dispositivos de cliente. Como tal, as plataformas 30 de computação para tais dispositivos são frequentemente otimizadas para um chipset de telefone particular e hardware de interface de usuário.0 licenciamento pode vislumbrar um download de curta duração e um número limitado de utilizações, ao invés do paradigma da compra do software de computador em um CD-ROM que é carregado em um computador pessoal por uma duração essencialmente ilimitada e é compatível com uma grande população de sistemas 5 operacionais.
SUMÁRIO
A seguir é apresentado um sumario simplificado a fim de se fornecer uma compreensão básica de alguns aspectos das versões descritas. Esse sumário não é uma 10 visão geral extensa e não pretende identificar elementos chave ou críticos nem delinear o escopo de tais versões. Sua finalidade é apresentar alguns conceitos das versões descritas de uma forma simplificada como uma introdução à descrição mais detalhada que será apresentada 15 posteriormente.
Em um aspecto, um método de transação e transferência de um aplicativo implementado por computador relacionado com um aplicativo atualmente licenciado começa com a determinação dos direitos de licença mantidos por um 20 usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo. 0 aplicativo original é mapeado por uma regra comercial de mapeamento para um aplicativo substituto adequado para 25 execução em um segundo dispositivo de usuário possuindo uma segunda configuração. Uma regra comercial de precificação é aplicada ao preço de uma transação para licenciamento do usuário para utilizar o aplicativo substituto no lugar da utilização do aplicativo original. Então, a transação é 30 concluída pelo fornecimento do segundo dispositivo de usuário com um aplicativo substituto. A automação da seleção de um aplicativo substituto adequado e a automação da precificação para essa transferência de direitos de licença fornece de forma continua, para os usuários, a comutação entre os dispositivos de usuário sem despesas ou inconveniência indevidas. Adicionalmente, uma rede que suporta esses dispositivos de usuário não é sobrecarregada com gastos de cálculo manual de um valor para essas transferências e causando a entrega.
Em outros aspectos, um processado, um programa de computador, e um aparelho possuem meios de realização do método mencionado acima para a transação e transferência do aplicativo implementado por computador em suporte dos dispositivos de usuário.
Em outro aspecto, um aparelho possui um componente de gerenciamento de transferência que determina os direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para a execução do aplicativo.Um catálogo de aplicativo mapeia de acordo com uma regra comercial de mapeamento o aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração. Um motor de regra aplica uma regra comercial de precificação para cotar o preço de uma transação para licenciamento para que o usuário utilize o aplicativo substituto no lugar da utilização do aplicativo original. Um componente de entrega conclui a transação pelo fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
Em um aspecto adicional, um método de transação e transferência de aplicativo implementado por computador relacionado com um aplicativo atualmente licenciado começa com uma solicitação pela determinação de direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo. 0 mapeamento do aplicativo original para um aplicativo substituto para execução em um segundo dispositivo de usuário possuindo uma segunda configuração 5 de acordo com uma regra comercial de mapeamento é aceito.Um preço de transação que foi determinado pela aplicação de uma regra comercial de precificação para cotar o preço de uma transação de licenciamento de usuário para uso do aplicativo substituto no lugar da utilização do aplicativo 10 original é aceito. A transação é concluída pelo recebimento do fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
Em aspectos adicionais, um processador, um programa de computador, e um aparelho possuem meios para a realização do método mencionado acima para a transação e transferência do aplicativo implementado por computador em um dispositivo de usuário.
Em outro aspecto adicional, um aparelho inclui um componente de comunicação para solicitar uma determinação de direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo. Uma interface de usuário aceita um mapeamento de acordo com uma regra comercial de mapeamento do aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração e para aceitar um preço de transação que foi determinado pela aplicação de uma regra comercial de precificação para cotar o preço de uma transação para licenciamento do usuário para uso do aplicativo substituto no lugar da utilização do aplicativo original. 0 componente de comunicação conclui a transação pelo recebimento do fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
Para se realizar as finalidades acima e outras relacionadas, uma ou mais versões compreendem as características posteriormente totalmente descritas e particularmente destacadas nas reivindicações. A descrição a seguir e os desenhos em anexo apresentam em detalhes determinados aspectos ilustrativos e são indicativos de apenas poucas dentre as várias formas nas quais os princípios das versões podem ser empregados. Outras vantagens e características de novidade se tornarão aparentes a partir da descrição detalhada a seguir quando considerada em conjunto com os desenhos e as versões descritas devem incluir todos os ditos aspectos e suas equivalências.
BREVE DESCRIÇÃO DOS DESENHOS
A figura 1 é um diagrama de sistema de alto nível de um sistema de transferência de acordo com um aspecto;
A figura 2 é uma metodologia para a realização d a transferência de aplicativos e outros itens que formam um inventário dinâmico de um UE do sistema de transferência da figura 1, de acordo com um aspecto;
A figura 3 é uma metodologia para impor as regras de negócios para atualização ou venda cruzada dos aplicativos para usuários transferindo o inventário dinâmico de um UE para outro UE, de acordo com um aspecto;
A figura 4 é um UE ilustrativo para transferência de aplicativos de acordo com a metodologia da figura 2, de acordo com um aspecto;
A figura 5 é um servidor de transferência ilustrativo para o sistema de transferência da figura 1, de acordo com um aspecto; A figura 6 é uma estrutura de dados ilustrativa para um inventário dinâmico dos aplicativos licenciados mantidos pelo UE da figura 1, de acordo com um aspecto;
A figura 7 é uma estrutura de dados ilustrativa para um depósito de transações licenciadas por assinante mantido pelo sistema de transferência da figura 1, de acordo com um aspecto;
A figura 8 é uma estrutura de dados ilustrativa para um catálogo de aplicativo acessado p elo sistema de transferência da figura 1, de acordo com um aspecto;
A figura 9 é uma matriz ilustrativa consubstanciando as regras de negócios utilizadas pelo sistema de transferência da figura 1, de acordo com um aspecto;
A figura 10 é um sistema de comunicação
ilustrativo incluindo entidades que formam um sistema de transferência distribuído, de acordo com um aspecto;
A figura 11 é um diagrama de temporização para um UE de origem contendo um inventário dinâmico e cliente de transferência que deve ser transferido com coordenação entre outras entidades do sistema de transferência distribuído da figura 10, de acordo com um aspecto;
A figura 12 é um diagrama de temporização para um UE de origem que não está disponível, mas que contém aplicativos licenciados que precisam ser transferidos para um UE de destino, de acordo com um aspecto;
A figura 13 é um diagrama de temporização de um sistema de transferência distribuído descarregando os aplicativos licenciados para um UE de destino que não contém um cliente de transferência, de acordo com um aspecto;
A figura 14 é um diagrama de temporização de um sistema de transferência distribuído descarregando aplicativos licenciados para um UE de destino depois de um UE de origem estar indisponível para iniciar a transferência, de acordo com um aspecto;
A figura 15 é um diagrama de temporização de um sistema de transferência distribuído descarregando o aplicativo licenciado para um UE de destino que não inclui um cliente de transferência, de acordo com um aspecto; e
A figura 16 é um diagrama de um sistema de comunicação incorporando uma trava digital para os aplicativos licenciados, de acordo com um aspecto.
DESCRIÇÃO DETALHADA 0 gerenciamento de transferência dos aplicativos licenciados de um dispositivo UE original para um dispositivo UE de destino é facilitado por uma rede de comunicação que rastreia o inventário do aplicativo de software que foi previamente licenciado, e sugere um conjunto de aplicativos equivalente a uma versão atualizada de, ou uma oportunidade de venda cruzada adequada para uma configuração (por exemplo, chipset e sistema operacional) de um dispositivo UE de destino (por exemplo, telefone celular capaz de rodar os aplicativos tal como jogos, aparelhos de mídia, e organizadores pessoais, etc.). As regras de negócios automatizam o mapeamento e a precificação de aplicativo adequados para a configuração proposta para automação e aumento de conveniência para ambos o usuário e o provedor. Uma vez aceito, o código executável adequado é distribuído para o dispositivo UE de destino, a cobrança adequada é iniciada, e os aplicativos licenciados anteriores são travados para transferência subsequente com impacto mínimo em um canal de comunicação limitado por rendimento ou comandado para eliminar automaticamente para garantir uma transferência permanente,especialmente para um dispositivo UE original perdido ou roubado.
Vários aspectos são agora descritos com referência aos desenhos. Na descrição a seguir, para fins 5 de explicação, inúmeros detalhes específicos são apresentados a fim de fornecer uma compreensão profunda de um ou mais aspectos. Pode ser evidente, no entanto, que os vários aspectos podem ser praticados sem esses detalhes específicos. Em outros casos, estruturas e dispositivos bem 10 conhecidos são ilustrados na forma de diagrama em bloco a fim de descrever de forma concisa essas versões.
Na descrição a seguir, o termo "ilustrativo" é utilizado para significar servindo como um exemplo, caso ou ilustração. Qualquer aspecto ou desenho descrito aqui como 15 "ilustrativo" não deve ser considerado necessariamente como preferido ou vantajoso sobre outros aspectos ou desenhos. Ao invés disso, o uso do termo ilustrativo deve apresentar os conceitos de uma forma concreta.
0 aparelho e os métodos são especialmente bem 20 adequados para uso em ambientes sem fio, mas podem ser adequados em qualquer tipo de ambiente de rede, incluindo, mas não limitado a, redes de comunicação, redes públicas, tal como a Internet, redes privadas, tal como as redes privadas virtuais (VPN), redes de área local, redes de área 25 ampla, redes de transporte à distância,ou qualquer outro tipo de rede de comunicação de dados.
Com referência à figura 1, uma rede de comunicação 10 fornece uma entrega de reconhecimento de licença dos aplicativos licenciados 12 para um dispositivo 30 original 14 com a transferência automatizada subsequente de licença e entrega de um aplicativo licenciado substituto 16 adequado para uso em um dispositivo de destino 18. Na presente descrição, o termo "aplicativo" também pode incluir arquivos possuindo conteúdo executável, tal como um código de objeto, scripts, código de byte, arquivos de linguagem de marcação, e emendas. Adicionalmente, um "aplicativo" referido aqui, também pode incluir arquivos 5 que não são executáveis por natureza, tal como documentos que podem precisar ser abertos ou outros arquivos de dados que precisem ser acessados.
um sistema de entrega 20 que se comunica com os dispositivos de origem e de destino 14 e 18 para realizar a 10 entrega dos aplicativos 12 e 16 coordena com um sistema de transferência 22 que valida os direitos de licença existentes do dispositivo de origem 14 contra uma base de dados de transação de licença 24 em um depósito 26. Por motivos de clareza, as características de segurança e 15 outras características de comunicação são associadas com o sistema de entrega 20 e a transferência de aplicativos e direitos de licença são apresentados como segregados no sistema de transferência 22, apesar de tais características poderem ser totalmente integradas e não prontamente 20 distinguíveis. Na versão ilustrativa, o sistema de transferência 22 opera para fornecer a tomada de decisão e lógica para o gerenciamento de licenças e precificação associados com a entrega de conteúdo sendo transferido.
Para essa finalidade, o sistema de transferência 25 22 propõe que os aplicativos licenciados substitutos 16 sejam retirados de um catálogo de aplicativo 28 como sendo equivalentes ou uma atualização ou substituição adequada para os aplicativos licenciados 12. O sistema de transferência 22 negocia um preço proposto com o usuário 30 através do sistema de entrega e uma interface de usuário 30 no dispositivo de origem 14 ou uma interface de usuário 32 no dispositivo de destino 18 para os aplicativos licenciados substitutos 16 com base nos direitos de licença existentes e de acordo com as regras de negócios em vigor 34. 0 sistema de transferência 22 atualiza a base de dados de transação de licença 24 para reportar para os vendedores dos aplicativos e futuras validações de transferência. Um 5 cliente de transferência 36 no dispositivo de origem 14 facilita o travamento ou eliminação dos aplicativos 12 e um cliente de transferência 38 facilita a instalação e ativação dos aplicativos licenciados substitutos 16 no dispositivo de destino 18.
Um sistema de portal de rede 40 possui uma
interface de usuário 41 através da qual um usuário pode iniciar uma transferência do inventário dinâmico (por exemplo, aplicativos 12) no dispositivo original 14, iniciar um crédito de retorno para os aplicativos 12 que 15 devem ser desativados no dispositivo original 14 sem qualquer plano imediato para a transferência para um dispositivo de destino 18,ou iniciar uma transferência para um dispositivo de destino 18. O sistema de portal da rede 40 inclui um cliente de transferência de rede 42 que 20 fornece o protocolo adequado através de uma rede 43 (por exemplo, rede Sem Fio através do Ar a fim de comunicar com o sistema de transferência 22.
Em um aspecto ilustrativo, o sistema de transferência 22 (por exemplo, um servidor) inclui um 25 serviço de transferência 44 que inclui um motor de regras 45, um motor de gerenciamento de transferência 46, e um motor de interface 47. De acordo com um aspecto, o motor de regras 45, o motor de gerenciamento de transferência 46 e o motor de interface 47 do sistema de transferência 22 estão 30 em comunicação. 0 motor de regras 45 opera para especificar as regras e lógica para o controle das transferências de conteúdo e licença. Em um exemplo, o motor de regras 45 opera de forma independente no sistema de transferência 22. Em tal exemplo, o motor de regras 45 pode não estar em comunicação com o sistema de entrega 20 ou dispositivo de origem 14 e o dispositivo de destino 18.
O motor de gerenciamento de transferência 46 opera para consultar o sistema de entrega 108 de forma a determinar o histórico de compra do conteúdo sendo transferido. 0 motor de gerenciamento de transferência 46 opera adicionalmente para consultar o sistema de entrega 20 por um histórico de utilização do conteúdo pelo dispositivo de origem 14. Em um caso, o motor de gerenciamento de transferência 46 inicia e controla a consulta do sistema de entrega 20 de modo a determinara informação de licença para os aplicativos 12. Com base na informação de licença obtida e conhecimento dos aplicativos comprados, o sistema de transferência 22 opera adicionalmente para distribuir os aplicativos 16 sendo transferidos para o dispositivo de destino 18. 0 motor de gerenciamento de transferência 46 opera adicionalmente para consultar o sistema de entrega 20 para determinar a utilização do conteúdo de uso limitado e ajustar a utilização do conteúdo de uso limitado de acordo. Em um exemplo, o motor de gerenciamento de transferência 46 opera adicionalmente para adicionar regras adicionais à entrega de aplicativo. O motor de gerenciamento de transferência 46 pode solicitar adicionalmente que o dispositivo de origem 14 elimine o aplicativo transferido 12 do dispositivo de origem 14.
O motor de interface 47 fornece interfaces para o dispositivo de origem 14 e o dispositivo de destino 18 de forma que o usuário final possa visualizar os aplicativos 30 de dispositivo de origem 12. O motor de interface 47 fornece adicionalmente uma interface para um administrador para visualização e definição de regras para a transferência de aplicativo 12 do portal de rede 40. Em um exemplo, durante a operação, os clientes de transferência 36 e 38 interagem com o motor de interface 47.
0 sistema de entrega 20 inclui uma entidade de cobrança 48 e uma unidade de entrega 49. A unidade de 5 entrega 49 opera para distribuir o conteúdo transferido para o dispositivo de destino 18. Em um exemplo, a entidade de cobrança 48 passa através da informação do conteúdo comprado para fins de cobrança. Em um exemplo, o conteúdo sendo transferido pode ser associado com uma licença 10 ilimitada. Em tal situação, a licença associada com o aplicativo transferido 16 pode ser associada com o dispositivo de destino 18.
Em uma situação na qual o aplicativo sendo transferido é associado com uma licença de utilização 15 limitada, o motor de gerenciamento de transferência 46 pode operar de forma a consultar o dispositivo de origem 14 ou a entidade de cobrança 48 para determinar o número de licenças ainda disponíveis para uso. Depois da determinação do número de licenças disponíveis, a entidade de entrega 49 20 opera para transferir as licenças de utilização restantes para o dispositivo de destino 18.
Em um exemplo, o motor de gerenciamento de transferência 46 se comunica com a entidade de cobrança 48 e a entidade de entrega 49. O motor de interface 47 se 25 comunica com o dispositivo de origem 14 e o dispositivo de destino 18 através da interface de usuário de dispositivo 30 ou a interface de usuário de rede 41. O motor de interface 47 se comunica adicionalmente com o administrador. Em um exemplo, o administrador gerencia e 30 controla as operações, administração e gerenciamento do sistema, tal como através do portal da rede 40.
Dessa forma, o sistema de transferência 22 pode operar para criar um suporte, restaurar e transferir os aplicativos entre os dispositivos 14 e 18 possuindo capacidades diferentes, cada um possuindo um código binário executável diferente. Por meio de exemplo, o código binário executável para os aplicativos de dispositivo de origem 12 5 pode ser diferente do código binário executável para o dispositivo de destino 18. Em um exemplo, o sistema de transferência 22 opera para fornecer ao dispositivo de destino 18 um código binário executável que pode ser executado no dispositivo de destino 18, mas é equivalente 10 ao código binário executável dos aplicativos 12 para o dispositivo de origem 14.
Adicionalmente, em um caso, o sistema de transferência 22 opera para transferir os aplicativos pela utilização de informação no sistema de entrega 20 com base 15 no histórico e conhecimento da família de aplicativos. Adicionalmente, o sistema de transferência 22 opera para fornecer o mapeamento de conteúdo com base em regra configurável para os aplicativos alvo no dispositivo de destino 18. Adicionalmente ainda, o sistema de 20 transferência 22 opera para utilizar um conjunto de regras para determinar o formato de mapeamento. Adicionalmente ainda, o sistema de transferência 22 opera para realizar o mapeamento de conteúdo com base no histórico de compra, mapeamento de família, informação de precificação, etc.
Adicionalmente, o sistema de transferência 22
opera para fornecer uma característica de transferência de conteúdo automatizada que é acionada pelo registro do novo dispositivo 18 substancialmente sem qualquer intervenção por parte do usuário. Em um aspecto, uma vez que um novo 30 dispositivo 18 é inicialmente conectado à rede 10, o novo dispositivo 18 atravessa um processo de registro de forma a estabelecer a conexão entre o dispositivo 18 e a rede 10. Dessa forma, uma vez que a conexão do novo dispositivo 18 é confirmada, os aplicativos 16 podem ser transferidos do dispositivo de origem 14 para o dispositivo de destino 18 sem qualquer interação do usuário ou uma interação de usuário minima.
5 Ademais, o sistema de transferência 22 opera para
fornecer um suporte de precificação combinado para atualização de conteúdo, venda cruzada, e venda ascendente durante a operação de transferência de conteúdo. Adicionalmente, o sistema de transferência 22 fornece a 10 inclusão da contagem de utilização para aplicativos de utilização limitada em uma operação de transferência de aplicativo. Em um exemplo, a contagem de utilização pode ser contada durante o mapeamento de conteúdo.
Adicionalmente ainda, o sistema de transferência 15 22 fornece a eliminação automática dos aplicativos transferidos 16. Em um aspecto, uma vez que os aplicativos foram transferidos para o dispositivo de destino 18, os aplicativos 12 são automaticamente eliminados do dispositivo de origem 14 sem qualquer intervenção do 20 usuário. Adicionalmente ainda, o sistema de transferência 22 fornece a descoberta automática programática do inventário do aplicativo com base em ambos o dispositivo 14 e os registros de transação extremidade posterior (por exemplo, licenças 24) . Em um caso, o sistema de 25 transferência 22 determina de forma programática os aplicativos 12 residentes no dispositivo de origem 12, as licenças residentes no histórico de compra (por exemplo, licenças 24) e a reconciliação dos dois em um conjunto de informações para determinar o mapeamento do aplicativo.
Deve ser apreciado com os benefícios da presente
descrição que a transferência de aplicativos 12 do dispositivo de origem 14 para o dispositivo de destino 18 pode ser alcançada sem se copiar o aplicativo 12 sendo transferido. Ao invés disso, em um aspecto, a transferência do aplicativo 12 é realizada utilizando-se a informação de licença associada com o aplicativo 12 do dispositivo de origem 14. Nessa situação, um usuário do dispositivo de 5 origem 14 inicia a transferência dos aplicativos 12 pela comunicação de uma solicitação de transferência de conteúdo a partir do dispositivo de origem 14 para o dispositivo de destino 18 para o sistema de transferência 22 através do sistema de entrega 20. 0 sistema de transferência 22 obtém 10 a informação de licença 24 associada com os aplicativos 12. Depois de recebera informação de licença 24, o sistema de transferência 22 solicita que o conteúdo sendo transferido seja eliminado do dispositivo de origem 14 através do sistema de entrega 20. 0 sistema de transferência 22 também 15 pede ao sistema de entrega 20 para transferir os aplicativos 16 para o dispositivo de destino 18. Mediante a realização da transferência, o usuário pode acessar os aplicativos transferidos 16 no dispositivo de destino 18.
Parte ou todas as interfaces de usuário 30, 38, e 41 nos dispositivos 14 e 18 ou o portal de rede 40, respectivamente, podem exibir cotações de preço de atualização de uma atualização mapeada a partir dos aplicativos 12 e confirmar a transferência. Os pecos para aplicativos equivalentes também podem mudar com o tempo garantindo a precificação atualizada para ser exibida para aceitação nas interfaces de usuário 30, 38 e 41. O método de pagamento para os aplicativos transferidos pode ser em termos de precificação de assinatura, compras de licença ilimitada, ou compras de licença limitada com algumas restrições que devem ser exibidas para o usuário antes da aceitação da transferência. Aplicativos equivalentes podem ser transferidos sem uma etapa de exibição e aceitação de usuário interveniente em alguns aplicativos. Em um exemplo, a equivalência de conteúdo de aplicativo se refere à exibição de um aplicativo disponível 16 que pode ser oferecido para substituir um aplicativo existente 12. A autenticação e autorização de acesso à rede através do portal de rede 40 podem ser incluídas para todos os acessos para o sistema de transferência 22 e serviços 44 da rede pelos usuários finais/operadores com o provedor de aplicativo (não ilustrado). Em um exemplo, múltiplos níveis de permissões podem ser exigidos para administração e operações. A autorização de transferência pelos operadores se refere ao mecanismo de autorização para todas as transferências pelos operadores. A comunicação entre cliente e servidor segura para o processo de transferência de aplicativo pode fornecer um percurso de comunicação seguro para os clientes de transferência 32, 38 e 41, e as conexões do servidor de transferência de conteúdo.
A base de dados de aplicativo 28 pode compreender um catálogo de operador que fornece uma interface para operadores definirem os dispositivos 18 onde os aplicativos 16 podem ser transferidos. O motor de gerenciamento de transferência 46 pode fornecer uma interface administrativa para definir as regras de negócios de transferência. A entrega controlada dos aplicativos fornece uma opção para os operadores gerenciarem a entrega do conteúdo através da interface de usuário de compra UE ou um processo de instalação automática.
O sistema de transferência 22 permite de forma vantajosa que um usuário compre um dispositivo novo 18 ou substitua dispositivos perdidos/danificados 14, porém seja creditado pelos aplicativos 12 no dispositivo antigo 14. Adicionalmente, o sistema de transferência 22 permite que o usuário compre um dispositivo 18 online através do portal da rede 40, e ainda seja capaz de transferir os aplicativos 12 do antigo dispositivo 14 para o novo dispositivo 18 utilizando o portal da rede 40. Adicionalmente ainda, o sistema de transferência 22 permite que o usuário suporte periodicamente aplicativos 16 do dispositivo de usuário 14 como salvaguarda ou área de armazenamento para reutilização futura. Adicionalmente, os operadores podem adicionar novos aplicativos 16 ao novo dispositivo 18 utilizando o sistema de transferência 22.
Deve-se apreciar que com os benefícios da presente descrição tal migração contínua de conteúdo licenciado (por exemplo, código executável por aplicativo)ρ ode ocorrer em uma situação com ou sem fio, incluindo comunicação de pacote de dados sem fio tal como IEEE 802.11 ou comunicações de dados através de uma rede telefônica. Adicionalmente, a transferência de aplicativos pode compreender qualquer tipo de conteúdo, gerado por usuário ou comprado, do dispositivo de origem 14 para um dispositivo de destino 18. 0 conteúdo sendo transferido pode incluir aplicativos, dados de aplicativo, conteúdo de gerenciamento de direitos digitais (DRM), e conteúdo não DRM. Sem qualquer limitação, o conteúdo ilustrativo que pode ser transferido pode ser de tons, papéis de parede, música, livro de endereços, imagens, vídeos, SMS, metadados de aplicativo, etc.
Deve-se apreciar que a transferência facilitada pelo sistema de transferência 22 pode ser códigos de ativação ou transferências similares. Os aplicativos agrupados já instalados, mas não ativados, no dispositivo de destino 18, podem ter fornecimento de segurança adicional com relação a precisarem ser transmitidos ou tal agrupamento pode reduzir as cargas de transmissão da rede de comunicação 10, aumentar a experiência do usuário pela redução do tempo necessário para se instalar um aplicativo, e/ou facilitar mudanças rápidas nos direitos de licença de uma demonstração de usos limitados ou características limitadas durante a utilização para uma licença mais ilimitada.
Em uma versão ilustrativa, ambos os dispositivos
de origem e destino 14 e 18 são ativados por BREW. O software de Ambiente de Tempo de Funcionamento Binário para Sem Fio® (BREW®) , desenvolvido pela Qualcomm Incorporated de San Diego, Califórnia, existe no sistema operacional de um dispositivo de computação, tal como um telefone celular sem fio.BREW® pode fornecer um conjunto de interfaces para características de hardware particulares encontradas nos dispositivos de computação.
Deve-se apreciar que interfaces adicionais podem ser incluídas para verificação que os usuários estão em conformidade com os aplicativos licenciado, mas não fraudando manualmente as travas de aplicativo nem descarregando aplicativos não autorizados, etc. As características de segurança podem ser facilitadas pelo sistema de transferência 22 tal como o fornecimento de um conduto para novos aplicativos serem armazenados na forma executável, com referência cruzada a configurações de dispositivo existentes ou novas suportadas pela rede de comunicação 10, etc. Na figura 2, uma metodologia 52 de transferência
dinâmica entre os dispositivos de equipamento de usuário (por exemplo, telefones celulares, dispositivos de envio de mensagem integrados portáteis, assistentes digitais pessoais, computadores de finalidade geral portáteis, etc.) começa no bloco 53 pela realização de inventário de conteúdo licenciado (por exemplo, código executável por aplicativo) em um dispositivo original. As transações de licença são confirmadas para estabelecer esses aplicativos no dispositivo original como validamente licenciados no bloco 54. Em um aspecto, a transferência desses aplicativos válidos os quais um usuário pode utilizar para um dispositivo de destino, que pode ser construído sobre uma plataforma de computação diferente (por exemplo, chipset, sistema operacional), exige um mapeamento dos aplicativos originais que podem ser distribuídos e que operarão no dispositivo de destino. Dessa forma, no bloco 55, uma referência cruzada é feita a um catálogo de aplicativo para determinar se uma versão equivalente, uma versão de atualização, ou uma oferta alternativa na mesma categoria (por exemplo, jogo, organizador pessoal, aparelho de reprodução de mídia, etc.) pode ser distribuída. No bloco 56, as regras de negócios são aplicadas a fim de se propor automaticamente uma configuração que seja configurada adequadamente a fim de transferir os aplicativos licenciados, talvez com versões equivalentes, atualizadas ou alternativas. No bloco 57, se o usuário não aceitar a configuração proposta, então uma proposta alternativa é disponibilizada, que na versão ilustrativa é apresentada como sendo os aplicativos que podem ser distribuídos sem custo adicional através do valor atual dos aplicativos licenciados no dispositivo original (bloco 58) e o processamento retorna para o bloco 57. Deve-se apreciar que em alguns casos tais conversões podem resultar em regras de negócios preaprovadas de forma que o usuário tenha concordado em incorrer em custos para atualizações à medida que se tornam disponíveis. Com o inventário dinâmico proposto dos aplicativos licenciados para o dispositivo de destino aceito no bloco 57, no bloco 59, esse inventário dinâmico é distribuído, talvez no formato executável para uma operação otimizada no dispositivo de destino. A base de dados de transação que substancia as licenças válidas é atualizada para refletir essa transferência no bloco 60. O ciclo de cobrança é rateado no bloco 61 para refletir a data de transferência para essas licenças que são pagas por uma assinatura em andamento e são afetadas por uma mudança no custo da assinatura. No bloco 62, uma determinação é feita quanto ao fato de se essa transferência deve ser temporária (por exemplo, o usuário escolhe utilizar um dentre uma pluralidade de dispositivos para uma saida). Se for esse o caso, o aplicativo pode ser vantajosamente travado no dispositivo original no bloco 63 para reduzir o overhead de comunicação no futuro para transferir o aplicativo de volta para o dispositivo original. Se for considerada uma transferência permanente no bloco 62, então o aplicativo no dispositivo original é eliminado no bloco 64. Tal eliminação pode ocorrer como uma característica automatizada, que pode ser desejável em situações nas quais o usuário não está mais em controle do dispositivo original (por exemplo, perdido ou roubado). Se o dispositivo original não estiver operando ou não estiver se comunicando com a rede, tal ação de eliminação pendente pode ser deferida até que o dispositivo restabeleça a comunicação ou seja energizado.
Na figura 3, uma metodologia ilustrativa 70 para transferência de inventário dinâmico (por exemplo, aplicativos) quando oportunidades surgem para atualizações ou venda cruzada, e em particular para um processo realizado no fundo com relação a um usuário. Quando é determinado no bloco 72 que uma nova versão de um aplicativo está disponível, então uma determinação é feita quanto ao fato de existir um benefício para a rede através de uma versão anterior do aplicativo (bloco 74). Por exemplo, alguns aplicativos podem impor um fardo de comunicação em uma parte portadora de uma rede como um todo, ser suscetível à invasão de software malicioso que não só prejudicaria a reputação de um projetista de aplicativo, como também degradaria o desempenho da rede portadora, causaria o mau funcionamento do equipamento que prejudicaria a reputação de um fabricante de equipamento original (OEM), mas também dá lugar à insatisfação geral com os serviços de rede se erroneamente culpado no portador ou operador da rede, etc. Como outro exemplo, uma versão mais antiga de um aplicativo pode empurrar mais reporte e processamento na direção da rede que com os aperfeiçoamentos posteriores nos UEs é manuseado de forma distribuída, fornecendo, dessa forma, um benefício para a rede. Consequentemente, ao invés de esperar por um usuário para puxar uma substituição de tal aplicativo anterior, no bloco 78, uma atualização automática pode ser iniciada para aplicativos equivalentes que são comercializados. Em alguns casos, a nova versão pode ser considerada uma atualização significativa e não meramente um aplicativo equivalente. Por exemplo, o vendedor do novo aplicativo pode não concordar com a instalação sem custos para os com uma versão anterior. No bloco 80, visto que a rede ainda se beneficiaria dos usuários escolhendo transferir o aplicativo para o dispositivo atual, os canais de anúncio são utilizados para orientar a opção para os usuários, talvez com um grande desconto para encorajar a aceitação. Então, o novo aplicativo é incluindo nos catálogos de referência cruzada no bloco 82. As regras de negócios aplicáveis a esse aplicativo podem tornar esse aplicativo a opção preferida para propor para transferências futuras de aplicativos e adicionalmente pode ornar a versão anterior indisponível para compras futuras para essas plataformas suportadas pela nova versa. Se de volta ao bloco 78, a nova versai não tiver um benefício para a rede, então o aplicativo é adicionado para uma referência cruzada de aplicativos disponíveis com aplicativo padrão de regras de negócios referentes à compra ou taxas de assinatura.
Na figura 4, uma versão ilustrativa de um sistema de comunicação 104 é apresentada de acordo com alguns aspectos como qualquer tipo de dispositivo computadorizado, tal como o dispositivo de origem ou destino 14 da figura 1. Por exemplo, o dispositivo de comunicação 104 pode compreender um dispositivo de comunicação móvel, tal como um telefone sem fio e/ou celular. Alternativamente, o dispositivo de comunicação 104 pode compreender um dispositivo de comunicação fixo, tal como um servidor de Função de Controle de Sessão/Chamada Proxy (P-CSCF), um dispositivo de rede, um servidor, uma estação de trabalho de computador, etc. Deve-se compreender que o dispositivo de comunicação 104 não está limitado a tais dispositivos descritos ou ilustrados, mas pode incluir adicionalmente um PDA, um pager de texto de duas vias, um computador portátil possuindo um portal de comunicação com ou sem fio, e qualquer tipo de plataforma de computador possuindo um portal de comunicações com e/ou sem fio.Adicionalmente, o dispositivo de comunicação 104 pode ser um dispositivo escravo remoto ou outro dispositivo similar, tal como sensores remotos, servidores remotos, ferramentas de diagnóstico, relês de dados e similares, que não possuem um usuário de extremidade, mas que simplesmente comunique dados através de uma rede com ou sem fio. Em aspectos alternativos, o dispositivo de comunicação 104 pode ser um dispositivo de comunicação com fio, tal como um telefone de linha terrestre, um computador pessoal, uma caixa de decodificação ou similar. Adicionalmente, deve-se notar que qualquer combinação de qualquer número de dispositivos de comunicação 104 de um único tipo ou uma pluralidade de tipos mencionados acima pode ser utilizada em um sistema de comunicação celular (não ilustrado). Portanto, o presente aparelho e métodos podem, de acordo, ser realizados em qualquer forma de dispositivo com fio ou sem fio ou módulo de computador, incluindo um portal de comunicação com ou sem fio, incluindo, sem limitação, modems sem fio, cartões da Associação Internacional de Cartão de Memória de Computador (PCMCIA), terminais de acesso, computadores pessoais, telefones, ou qualquer combinação ou subcombinação dos mesmos.
Adicionalmente, o dispositivo de comunicação 104 pode incluir uma interface de usuário 106 para fins tal como solicitação, interação com, e/ou jogo de conteúdo de midia 14. Essa interface de usuário 106 inclui um dispositivo de entrada 108 que opera para gerar ou receber um registro de usuário no dispositivo de comunicação 104, e um dispositivo de saida 110 que opera para gerar e/ou apresentar informação para consumo pelo usuário do dispositivo de comunicação 104. Por exemplo, o dispositivo de entrada 106 pode incluir pelo menos um dispositivo tal como um teclado, mouse, monitor de tela de toque, um microfone associado com um módulo de reconhecimento de voz, etc. Em determinados aspectos, o dispositivo de entrada 108 pode fornecer o registro de usuário de uma solicitação de conteúdo ou para o registro de usuário de uma solicitação por informação adicional. Adicionalmente, por exemplo, o dispositivo de saida 110 pode incluir um monitor, um alto falante de áudio, um mecanismo de retorno haptic, etc. O dispositivo de saida 110 pode gerar uma interface de usuário gráfica, um som, uma sensação tal como uma vibração, etc. e tais saídas podem ser associadas, por exemplo, ao uso de um aplicativo licenciado 111. Adicionalmente, o dispositivo de comunicação 104 pode incluir uma plataforma de computador 112 que opera para executar aplicativos para fornecer a funcionalidade para o dispositivo 104, e que pode adicionalmente interagir com o dispositivo de entrada 108 e o dispositivo de saida 110. A plataforma de computador 112 pode incluir uma memória que pode compreender partes de memória volátil e não volátil tal como a memória de leitura apenas e/ou a memória de acesso randômico (RAM e ROM), memória de leitura apenas programável e eliminável (EPROM), memória de leitura apenas eletricamente programável e eliminável (EEPROM), memória flash, e/ou qualquer memória comum às plataformas de computador. Adicionalmente, a memória pode incluir memória ativa ou memória de armazenamento, incluindo um sistema de arquivamento eletrônico e qualquer dispositivo de armazenamento secundário e/ou terciário, tal como midia magnética, midia ótica, fita, disco flexível e/ou rígido, e componentes de memória removíveis. Na versão ilustrativa, a memória é apresentada como uma memória RAM 112 e um componente de armazenamento local não volátil 116, ambos conectados a um barramento de dados 119 da plataforma de computador 112.
Adicionalmente, a plataforma de computador 112 pode incluir também um processador 120, que pode ser um circuito integrado específico de aplicativo (ASIC), ou outro chipset, processador, circuito lógico, ou outro dispositivo de processamento de dados. Em alguns aspectos, tal como guando o dispositivo de comunicação 104 compreende um telefone celular, processador ou outra lógica tal como um ASIC 122 pode ser executado em uma camada de interface de programação de aplicativo (API) 124 que interfaceia com qualquer componente de software residente, apresentado como outros aplicativos 125 que podem estar ativos na memória 114 para outras funções (por exemplo, controle de chamada de comunicação, relógio de alarme, mensagem de texto, etc.)· Deve-se apreciar com o beneficio da presente descrição que os aplicativos consistentes com os aspectos da presente invenção podem omitir outros aplicativos e/ou omitir a capacidade de receber conteúdo seqüenciado tal como chamada de voz, chamada de dados e aplicativos relacionados com midia na memória 114. As APIs do dispositivo 124 podem ser um ambiente de tempo de funcionamento executado no dispositivo de comunicação respectiva. Um ambiente de tempo de funcionamento API 124 é a API 126 BREW® apresentada separadamente e desenvolvida pela QUALCOMM Incorporated de San Diego, Califórnia. Outros ambientes de tempo de funcionamento podem ser utilizados, por exemplo, para controlar a execução dos aplicativos nos dispositivos de computação sem fio.
Adicionalmente, o processador 120 pode incluir vários subsistemas de processamento 128 consubstanciados em hardware, firwmare, software, e combinações dos mesmos, que permite a funcionalidade do dispositivo de comunicação 104 e a operacionalidade do dispositivo de comunicação 104 no sistema de comunicação 100. Por exemplo, os subsistemas de processamento 128 permitem a iniciação e manutenção das comunicações, e permuta de dados, com outros dispositivos em rede além de dentro e/ou entre os componentes do dispositivo de comunicação 104. Em um aspecto, tal como em um telefone celular, o processador 120 pode incluir um ou uma combinação de subsistemas de processamento 128, tal como: som, memória não volátil, sistema de arquivamento,transmissão, recepção, buscador, camada 1, camada 2, camada 3, controle principal, procedimento remoto, aparelho, gerenciamento de energia, diagnóstico, processador de sinal digital, vocoder, envio de mensagens, gerenciador de chamada, sistema Bluetooth®, LPOS Bluetooth®, determinação de posição, motor de posição, interface de usuário, modo latente, serviços de dados, segurança, autenticação, USIM/SIM (módulo de identidade de assinante universal/módulo de identidade de assinante), serviços de voz, gráficos, USB (barramento serial universal), multimídia tal como multimídia de protocolo MPEG (Grupo Especialista em Imagem em Movimento), SMS, serviço de voz curto (SVS™) , navegador de rede, etc. Para os aspectos descritos, os subsistemas de processamento 128 do processador 120 podem incluir quaisquer componentes de subsistema que interajam com os aplicativos sendo executados na plataforma de computador 112.
A plataforma de computador 112 pode incluir adicionalmente um módulo de comunicações 130 que permite a comunicação entre os vários componentes do dispositivo de comunicação 104, além de ser operável para comunicações relacionadas com os aplicativos licenciados 111. O módulo de comunicações 130 podem ser consubstanciados em hardware, firmware, software e/ou combinações dos mesmos, e pode incluir adicionalmente todos os protocolos para uso em comunicações intradispositivos e interdispositivos. Adicionalmente, o módulo de comunicações 130 opera para transmitir e/ou receber informação, tal como solicitando e recebendo aplicativo licenciado 111 de acordo com o aparelho e os métodos descritos aqui.
Determinadas capacidades do dispositivo de comunicação 104 podem ser facilitadas pelo código carregado a partir do armazenador local 116, retido na memória 114, e executado pelo processador 120, tal como um sistema operacional (OS) 132. Um módulo de interface de usuário 134 facilita o controle interativo com a interface de usuário 106. Adicionalmente, o inventário dinâmico 140 que personaliza as características do dispositivo de comunicação 104 pode incluir cópias armazenadas 142 dos aplicativos licenciados 112 (por exemplo, ambos os códigos licenciados e não licenciados, executáveis e/ou interpretados), conteúdo gerado por aplicativo 144, conteúdo protegido contra entrega 146, e dados de usuário 148. Sem quaisquer limitações, exemplos de conteúdo gerado por aplicativo 144 podem ser configurações, dados gerados por aplicativo, configurações de interface de usuário, configurações de serviço, etc. O conteúdo protegido contra entrega 146 pode ser toques, papel de parede, temas, níveis de jogo, marcações, conteúdo protegido por DRM (por exemplo, música, vídeo, etc.), estado de aplicativo, dados de aplicativo, etc. Os dados de usuário 148 podem incluir o conteúdo gerado por usuário ou conteúdo de núcleo de dispositivo (gerado ou de outra forma). O conteúdo gerado por usuário 144 pode incluir imagens, vídeos, etc., enquanto que o conteúdo de núcleo de dispositivo pode incluir contatos, calendário, configurações de telefone, associações de toque, SMS (isso é, envio de mensagens de texto por telefone celular), mensagens, arquivo de chamadas, configurações de rede, etc.
As APIs BREW 12 6 fornecem a capacidade de os aplicativos chamarem as APIs de Dispositivo 124 e outras funções sem ter que escritas especificamente para o tipo de dispositivo de comunicação 104. Dessa forma, um aplicativo licenciado 112 pode operar de forma idêntica, ou com ligeiras modificações, em um número de tipos diferentes de configurações de hardware dentro do ambiente operacional fornecido pela API BREW 126, que abstrai determinados aspectos de hardware. Uma extensão BREW 150 adicional capacidade adicional à plataforma de programação da API BREW 126, tal como a oferta de aparelhos de MPE, Máquinas Virtuais JAVA, etc. Uma arquitetura uiOne™ desenvolvida pela Qualcomm Incorporated como parte de BREW fornece um conjunto de extensões BREW que permitem o desenvolvimento rápido de UIs ricas e personalizáveis (isso é, conteúdo ativo, atualizáveis através do ar (OTA), ajuda a desenvolver o comercio de download além dos aplicativos, fornece temas de parte ou toda a UI do aparelho, e utiliza Widgets UI BREW. Dessa forma, uiOne BREW reduz o tempo para se comercializar os aparelhos, personalização de portador e personalização de consumidor. Para fazer isso, uiOne BREW fornece um conjunto claro de abstrações, adicionando duas novas camadas à pilha de desenvolvimento do aplicativo para BREW. Na versão ilustrativa, um cliente de transferência de dispositivo ilustrativo 160, de acordo com um aspecto, inclui uma interface de usuário de ator de referência/demonstrativa (UI) 162, uma interface de usuário personalizada 164, e um Widget de interface de usuário (UIW) 166. Em um exemplo, a interface de usuário 164 é um Widget de interface de usuário BREW, a extensão de transferência 168, IDownload 180, e IMutualAuth/IWeb 172. Como ilustrado, a extensão de transferência de dispositivo 168 é capaz de enviar dados para IDownload 170 e IMutualAuth/IWeb 172. Da mesma forma, IDownload 170 é capaz de enviar dados para IMutualAuth/IWeb 172.
0 cliente de transferência 160 inicia a reutilização da lógica de credito para um aplicativo 112. A UI ator de referência/demonstrativa 162 envia uma solicitação de transferência de aplicativo para a extensão de transferência 168. A extensão de transferência 168 envia uma solicitação de download para IDownload 170, que é seguida por IDownload 170, fornecendo o número de reutilizações restantes para a extensão de transferência 168. A extensão de transferência 168 então envia mensagens para IDownload 170 e autenticação mútua (MA)/dispositivo de rede (não ilustrado) para determinar o número de downloads restantes, e solicitando adicionalmente a eliminação dos downloads restantes no dispositivo de comunicação 104. 0 cliente 160 é notificado depois disso.
De forma similar, um cliente de transferência 160 de um dispositivo de comunicação de destino 104 é iniciado, de acordo com um exemplo. A extensão de transferência 168 recebe uma mensagem para ilustrar todos os aplicativos de usuário. A extensão de transferência 168 envia uma mensagem para MA/Rede solicitando a informação desejada. Depois do recebimento da lista de aplicativo de usuário, a extensão de transferência 168 envia uma mensagem para o usuário. Depois do recebimento dos itens selecionados a serem transferidos pelo usuário, a extensão de transferência 168 envia uma mensagem para MA/Web. Depois que a extensão de transferência 168 foi notificada, a extensão de transferência 168 envia uma solicitação para IDownload 170 para iniciar o download dos itens selecionados. 0 IDownload 170, por sua vez, se comunica com MA/Web de forma a obter os itens selecionados. 0 IDownload 170, por sua vez, se comunica com o MA/Web de forma a obter os itens selecionados. Uma vez que os itens foram descarregados com sucesso, a extensão de transferência 168 é notificada. Outros componentes para a transferência de aplicativos licenciados 112 são facilitados por outros componentes residentes na memória 114 para execução pelo processador 120, incluindo um componente de interface de usuário de transferência 174 para utilização da interface de usuário 160 para interagir com o usuário. Adicionalmente, o componente de coleta de licença e conteúdo 176 auxilia no inventário de aplicativos licenciados 112 armazenados no dispositivo de comunicação 104. Um componente de autenticação e autorização 178 realiza a parte do dispositivo de autenticação mútua com outros componentes de uma rede de comunicação 10 (figura 1) . Um mecanismo de aviso de recebimento e remoção de conteúdo 180 responde aos comandos de eliminação dos aplicativos licenciados 112 depois da transferência para um dispositivo de comunicação de destino 104. Um protocolo de interface 182 fornece as conversões de protocolo necessárias entre o dispositivo de comunicação 104 e outros componentes da rede de comunicação 10.
Na figura 5, um servidor de transferência ilustrativo 200 que realiza as funções do sistema de transferência 22 da figura 1, de acordo com um aspecto, inclui uma camada de apresentação 202, uma camada de interface lógica de negócios 204, uma camada de negócios 206, uma camada de acesso a dados 208, uma camada de integração de sistema externo 210 que conecta aos sistemas externos 212, e uma camada de integração de serviços comuns 214. Em um exemplo, a camada de apresentação 202 pode utilizar faces de servidor Java,a camada de negócios 206 utiliza Java 2, Edição Empresarial (J2EE), os serviços comuns 214 utilizam J2EE, a camada de integração de sistema externo 210 utiliza J2EE pura, e a camada de acesso a dados 208 utiliza DAO ou DAO gerado por torque.
A camada de apresentação 202 do servidor de transferência 200 pode ser uma amarraçao de rede ou uma amarração de dispositivos. A camada de apresentação 202 fornece interfaces para diferentes tipos de clientes (por exemplo, dispositivo móvel, navegador de Internet, etc.). A camada de apresentação 202 inclui uma interface de rede de assinante 216 conectada a um dispositivo ativado para rede de assinante 218, uma interface de rede de administrador 220 conectada a um sistema ativado por rede de administrador 222, e uma interface de dispositivo 224. A interface de rede de assinante 216 permite que o usuário acesse o sistema de transferência 22 como fornecido pelo servidor de transferência 200 utilizando um navegador da rede 226. A interface de rede de administrador 220 permite a configuração e o gerenciamento do processo de transferência de conteúdo utilizando um navegador da rede 228. A interface de dispositivo 224 permite que o usuário do dispositivo acesse o servidor de transferência 200 utilizando o dispositivo de usuário 230 através de comunicação de autenticação mútua através de um Proxy MA 232. Em um exemplo, a interface de dispositivo pode incluir a geração de páginas de rede além de solicitações de usuários interpretando.
De acordo com um exemplo, o servidor de transferência 200 fornece a apresentação padrão/de referência, que contém páginas da rede simples. Em um exemplo, a camada de apresentação 202 é implementada utilizando a Estrutura de Trabalho de Faces de Servido Java. De acordo com um exemplo, o portador (ou provedor de conteúdo) pode implementar a lógica de apresentação do próprio portador, que pode ser facilmente mapeada na lógica de negócios incorporada à camada de negócios 206.
A camada de interface lógica de negócios 204 define as interfaces implementadas para separar a lógica de apresentação incorporada às interfaces 216, 220 e 224 da lógica de negócios incorporada na camada de negócios 206. A camada de interface lógica de negócios 204 permite que o servidor de transferência 200 seja desenvolvidos como um servidor independente ou seja implementado como serviços de rede. Em um caso, as interfaces lógicas comerciais 204 podem ser agrupadas com base em funcionalidades respectivas, tornando, assim, o desenvolvimento do sistema de transferência 22 mais flexível.
A camada de negócios 236 inclui um gerenciador de usuário 236 que possui uma API authenticateUser(nome de usuário, senha)que valida a credencial do usuário (por exemplo, nome de usuário, senha). 0 gerenciador de usuário 236 possui uma API newRegistration()que cria novo usuário e possui uma APImapUserIDToSid() que mapeia o ID de usuário para ID de assinante. Um ID de usuário pode ser um número de diretório móvel (MDN), o numero de identificação móvel (MIN), etc. Um sistema portador 237 dos sistemas externos 212 fornece o mapeamento e é interfaceado para a camada de integração de sistema externa 210 por uma interface portadora 239. Um gerenciador de histórico de compra 238 da camada de negócios 206 possui uma API getSIDPurchasedApplications() que obtém a lista de aplicativos (ou conteúdo) comprados pelo assinante. A lista consiste de aplicativos, que estão atualmente instalados no dispositivo, além de aplicativos eliminados previamente pelo assinante. Um gerenciador de regra (motor) 240 da camada de negócios 206 possui uma API getApplicationMappings(appsList) que obtém uma lista de aplicativos (ou conteúdo) que podem ser transferidos para o novo dispositivo, após a aplicação d e uma regra de transferência (por exemplo, mapeamento dos aplicativos licenciados para um aplicativo substituto seguindo para um destino ou determinando um preço de transferência).O gerenciador de regra (motor) 240 também possui uma API getDefaultPriceOptions(appid, pid) que quando o aplicativo (ou conteúdo) mapeado possui mais de uma opção de preço, então a lógica de apresentação dessa função pode determinar uma opção de preço padrão.Essa função é útil durante o registro MA. Em um exemplo, durante o registro MA, o usuário pode não ter uma opção para escolher as opções de preço. Um gerenciador de entrega 242 da camada de negócios 206 possui uma API deliverApplications(appsList) que realiza a solicitação de compra alternativa para cada aplicativo (ou conteúdo). Um gerenciador de dispositivo 244 da camada de negócios 206 possui uma API validateDevicelD(devicelD) que valida se um ID de dispositivo pertence à rede portadora. O gerenciador de dispositivo 244 da camada de negócios 206 possui uma API ListgetAvailableDeviceIDO que obtém uma lista de dispositivos disponíveis com associação de portador. Pela utilização dessa API, a interface de rede pode exibir os IDs de dispositivo disponíveis para o assinante de forma que o assinante possa realizar uma transferência simulada. Um gerenciador de inventário de dispositivo 246 possui uma API SetDeviceLicenseInformation(Iist) que armazena a lista de aplicativos (ou conteúdo) recuperados a partir do dispositivo de assinante.
A camada de negócios 206 contém a lógica de transferência do sistema de transferência 22. Em um exemplo, a camada de negócios 206 pode ser desenvolvida utilizando Java. Em um caso, a camada de apresentação 206 interage com a camada de interface de lógica de negócios 204, o padrão de desenho de facada (não ilustrado) e um gerenciador de transferência 248. De acordo com um exemplo, o gerenciador de transferência 248 fornece um ponto de entrada único na camada de negócios 206. Em um caso, a camada de apresentação 202 pode interagir com os módulos na camada de negócios 206 utilizando módulos bem definidos.
De acordo com um exemplo, o gerenciador de transferência 248 implementa as interfaces definidas pela camada de interface lógica de negócios 204. O gerenciador de transferência 248 é responsável pelas solicitações de interpretação dos clientes, carregando os manuseadores de solicitação adequados, e redirecionando a saida dos manuseadores de solicitação para a classe de resposta adequada. 0 gerenciador de transferência 248 opera para extrair o parâmetro necessário com o valor das solicitações e entrega a lista de parâmetros para os manuseadores de solicitação.
0 gerenciador de inventario de dispositivo 246 é responsável pela manutenção dos dados de licença para o conteúdo submetido pelo cliente de transferência de dispositivo 160 (figura 3) . O cliente de transferência de dispositivo 160 submete os dados de licença quando a operação de transferência é iniciada utilizando o cliente de transferência de dispositivo 160. Em um exemplo, o gerenciador de inventário de dispositivo 246 opera para armazenar temporariamente os dados da licença na memória e fornece a API para recuperar os dados da licença. Em um exemplo, o gerenciador de inventário de dispositivo 246 implementa uma interface DeviceInventoryInterface. Em outro exemplo, o gerenciador de inventário do dispositivo 246 pode operar para obter os dados licenciados a partir do dispositivo em uma transferência iniciada por rede.
0 gerenciador de histórico de compra 238 é responsável pela recuperação da lista de conteúdo adquirido pelo assinante. Em um exemplo, o histórico é recuperado a partir de um sistema de entrega 250 dos sistemas externos 212 utilizando uma interface de serviço 252 da camada de integração de sistema externo 210. 0 gerenciador de histórico de compra 238 opera para recuperar o histórico de compra ou transação do assinante, recuperar o conteúdo comprado e eliminado do assinante e fornece as APIs necessárias para acessar o histórico. Em um caso, o gerenciador de histórico de compra 238 recupera o conteúdo adquirido, porém eliminado utilizando a interface de serviço 252. De acordo com um aspecto, o servidor de transferência 200 pode recuperar o histórico de compra mesmo se o cliente de transferência de dispositivo 160 não estiver presente.
Um gerenciador de reconciliação 254 é responsável pela manutenção de uma lista única do conteúdo descarregado pelo assinante. O servidor de transferência 200 possui dois conjuntos de listas de conteúdo; uma lista contendo o histórico de compra e a outra lista o inventário de conteúdo do dispositivo. O gerenciador de reconciliação 254 mistura as duas listas de conteúdo em uma única lista de conteúdo. O gerenciador de reconciliação 254 pode salvar a lista de conteúdo reconciliada em uma base de dados para uso futuro. O gerenciador de reconciliação 254 fornece adicionalmente a API para recuperar a lista de conteúdo salvada. Em um exemplo, o gerenciador de reconciliação 254 armazena a lista de conteúdo reconciliada na base de dados local. Uma vez que o conteúdo foi transferido do servidor de transferência 200 para o dispositivo de destino 18 (figura 1), o gerenciador de reconciliação 254 pode remover a lista de conteúdo reconciliada depois de um período especificado. Em um caso, o gerenciador de reconciliação 254 opera para apresentar ao cliente a lista reconciliada. Em um exemplo, o gerenciador de reconciliação 254 implementa a Interface APIU ReconcileInterface.
A transferência de conteúdo pode depender de uma regra de transferência (por exemplo, mapeamento dos aplicativos licenciados para um aplicativo substituto seguindo para um destino ou determinando um preço de transferência). 0 gerenciador (motor) de regra 240 implementa e executa a regra durante o processo de transferência de conteúdo. Em um caso, o gerenciador (motor) de regra 240 é responsável pela decisão do conteúdo alvo para cada conteúdo fonte. As regras implementadas garantem que para cada conteúdo da lista, um único conteúdo seja mapeado para o dispositivo de destino 18. O gerenciador (motor) de regra 240 opera adicionalmente para determinar o conteúdo mais adequado para o dispositivo de destino alvo 18 pela aplicação da regra de transferência.
0 gerenciador (motor) de regra 240 permite adicionalmente que um operador configure novas regras de transferência. Em um exemplo, quando o conteúdo selecionado para ser transferido não está disponível no catálogo do provedor de conteúdo, o operador pode dar todo o crédito para o assinante. O operador também pode dar crédito parcial para o assinante com base em uma fórmula (por exemplo, lógica disponível no conteúdo Creditback, etc.). Em um exemplo, um método de precificação ou base de preço pode não estar presente. Quando o usuário possui licenças restantes ou licenças que nunca foram usadas, o operador pode creditar as licenças restantes, transferir todas as licenças ou transferir as licenças restantes apenas. Pode haver regras para a nova versão,atualização ou equivalência. Em um caso, o portador pode decidir que conteúdo utilizar no lugar de um conteúdo determinado. Em um exemplo, o motor de regra implementa a interface AXMappingInterface.
Depois que o conteúdo alvo foi determinado, a próxima etapa é distribuir o conteúdo para o dispositivo de destino. Em um exemplo, o gerenciador de entrega opera para distribuir o conteúdo transferido para o dispositivo de destino. 0 download real do conteúdo alvo para o dispositivo de destino 18 é iniciado pelo dispositivo de destino 18, em um exemplo. O gerenciador de entrega 242 opera para criar uma solicitação de compra alternativa (evento) para cada conteúdo transferido e submete a solicitação de compra alternativa para o DS 250. Em um caso, a opção de entrega é um item de configuração. O conteúdo pode ser distribuído utilizando-se a opção de instalação automática, pode ser uma imagem distribuída para o diretório myApps no dispositivo de destino 18, etc. Em um exemplo, o gerenciador de entrega 242 implementa a interface API DeliveryInterface.
O gerenciador de usuário 236 opera para gerenciar a conta do usuário de servidor de transferência. Em um exemplo, o servidor de transferência 200 pode suportar o usuário final, o administrador, e o usuário comercial. O usuário final pode transferir conteúdo e utilizar determinados serviços complementares. O administrador pode realizar as atividades diárias (por exemplo, transferência de conteúdo, adição de privilégios de configuração de novo usuário para um usuário, etc.), suporte, geração de relatórios e utilização de alguns serviços complementares. Os usuários comerciais podem transferir conteúdo, gerar relatórios, determinar regra de transferência e utilizar alguns serviços complementares. Em um caso, de forma padrão, o servidor de transferência 200 pode ter um super usuário que pode realizar todas as atividades listadas acima. O assinante precisa se registrar com o servidor de transferência 200. Em um exemplo, o gerenciador de usuário 236 implementa a API UseAccountInterface.
A camada de acesso de dados 208 fornece abstrações para a base de dados em uma API de base de dados 258 (por exemplo, esconde a complexidade do mecanismo de base de dados subjacente) . A camada de acesso de dados 208 opera para fornecer o mapeamento dos registros de tabela para os objetos comerciais e vice-versa. Em um exemplo, ao camada de acesso de dados 208 pode utilizar a estrutura de trabalho de mapeamento de objeto de torque. Em um caso, para cada tabela, uma fonte de dados e objeto DAO podem ser definidos.
A camada de integração de sistema externa 210 permite que a camada de negócios 206 interaja com os sistemas externos 212 utilizando as interfaces bem definidas 237 e 250. 0 servidor de transferência 200 pode interagir com DS 250 utilizando a interface de serviço 252. A camada de integração de sistema externa 210 pode fornecer a abstração para as APIs de interface de serviço 252. 0 servidor de transferência 200 pode interagir com o sistema portador 237 para a autenticação do usuário ou dispositivo. A camada de integração do sistema externa 210 pode fornecer acesso ao MDN para o mapeamento de identificação de assinante (SID).
A camada de serviços comuns de servidor de transferência 214 contém módulos que podem ser acessados diretamente por um número de entidades funcionais (por exemplo, camada de apresentação 202, camada de interface lógica de negócios 204, camada de negócios 206, camada de acesso de dados 208, camada de integração de sistema externa 210, etc.). Os serviços comuns de servidor de transferência 214 incluem um gerenciador de sessão 264, um gerenciador de aplicativo 266, um gerenciador de configuração 268, um gerenciador plug-in 270, um gerenciador de exceção 272, um gerenciador de arquivamento 274, utilidades 276, e gerenciador de catálogo 278.
0 gerenciador de sessão 264 possui uma API SessionIDopenTransferO que cria nova sessão de transferência com uma API closeTransfer(SessionID) que encerra a sessão criada pela função openTransfer () . 0 gerenciador de sessão 264 mantém uma sessão para cada transferência e fornece uma API para salvar os dados transferidos na sessão.
0 gerenciador de configuração 268 permite que o administrador configure a configuração de sistema. 0 gerenciador de configuração 268 fornece adicionalmente as classes que podem ser utilizadas por outros módulos para acessar os valores de parâmetro de configuração de transferência. Os dados de configuração podem ser salvos como um documento XML. O gerenciador de interface (plug-in) 270 é
responsável pela criação e manutenção de conectores de integração de sistema externos. Durante a inicialização do servidor de transferência 200, o gerenciador de interface 270 cria casos de conectores de sistema externo. A interface externa pode ser implementada como um conjunto de plug-ins.
0 gerenciador de exceção 272 lida com os casos de exceção do sistema, ou com o sistema externo. O gerenciador de exceção 272 opera para retificar o tempo de funcionamento pela utilização da configuração padrão, interrompendo o sistema de transferência 222 de forma graciosa, ou realizando outras ações.
O gerenciador de arquivamento 274 fornece uma API para criar um arquivo. A API permite que outros módulos adicionem dados de arquivamento ao arquivo. Em um caso, apenas o administrador de transferência do usuário comercial pode visualizar os vários arquivos. 0 gerenciador de arquivo pode utilizar o pacote de fonte aberta log4j para gerenciar os arquivos de transferência. 0 módulo de utilidades 276 contém várias classes
de utilidades (por exemplo, utilidade de seqüência, utilidades de formatação de número, utilidades de documento XML, etc.). O gerenciador de utilidade 276 pode conter um submódulo de programação que programa a entrega de conteúdo.
0 gerenciador de aplicativo 266 é responsável pela iniciação e desligamento do servidor de transferência 200. O gerenciador de aplicativo 266 opera para inicializar vários módulos na camada de negócios 206, e pode ser responsável pelo gerenciamento de casos isolados na lógica de negócios. Em um exemplo, a base de dados pode incluir uma tabela de transferência, uma tabela de conta de usuário (opcional), tabela de item, e tabela de regra. Δ tabela de transferência arquiva as solicitações de compra submetidas para a interface de serviço 252.
Em um aspecto, o servidor de transferência 200 pode implementar HTTPS, HTML, Serviços de rede (SOAP), XML, folha estilo cascata, etc. Em um exemplo, o mapeamento MDN para SID é fornecido pelo sistema portador 237. O servidor de transferência 200 pode definir a interface 239. 0 servidor de transferência 200 se comunica com a interface de serviço 252, que em um exemplo, é BREWZone. Em um caso, a transferência de conteúdo do servidor de transferência 200 para o dispositivo 230 ocorre depois que o assinante tem o dispositivo validado ou realizou o registro MA.
A transferência de aplicativos licenciados facilita automaticamente a avaliação, negociação e cobrança a fim de facilitar a transferência. Para essa finalidade, a lógica de negócios soluciona a avaliação dos direitos de licença existentes e oferece um preço adequado para a transferência de direitos de licença equivalente sou atualizados para outro dispositivo. Esses cálculos refletem as mudanças em preço que podem ocorrer quando um número de conteúdo diferente é implementado ou um novo preço é criado. Por exemplo, em um método de preço de compra (PM), o preço de lista de portador (CLP) e o preço de aplicativo de projetista (DAP) são iguais a zero; dessa forma, o assinante não pode ser cobrado. No método de preço de assinatura, devido à recorrência de cobrança ser gerada com base nos valores DAP e CLP, o preço pode ser o mesmo que o preço do catálogo. Portanto, em um exemplo, o preço de assinatura efetivo pode ser baseado no preço de catálogo e um novo preço de assinatura será efetivo. Se a cobrança de assinatura (SB) já tiver sido gerada para o mês, um evento de ajuste de tempo (TA) pode ser gerado pelo servidor de transferência 200 (figura 5) para creditar o evento de Eliminação (DL)do servidor de transferência, se, por exemplo, o conteúdo estiver na mesma família. Se a cobrança de assinatura não tiver sido gerada para o mês, um TA não precisa ser gerado. 0 DE(SE) está no dispositivo de origem enquanto o DL(SB) está no dispositivo de destino. Para uma assinatura de duração limitada, os valores de CLP e DAP são iguais a zero, visto que a eliminação de um conteúdo de assinatura de duração limitada pode não encerrar a cobrança da assinatura. Em um exemplo, a assinatura pode ser baseada em uma combinação de identificação de software (SID)/identificação de hardware (hwID) . 0 dispositivo de destino pode ter um hwID diferente. Para uma técnica de precificação de demonstração, de acordo com um exemplo, as licenças restantes serão reiteradas independentemente de se os tipos de base de preço combinam com o PBT original.
Em um caso, independentemente de se os tipos de base de preço combinam com o PBT original, as licenças restantes serão reintegradas. De acordo com um aspecto, o manuseio de preço local pode ser utilizado com PM/PBT/PBV personalizado para Entrega Alternativa utilizando BREWZone®. Em um exemplo, BREWZone fornece a entrega de item com preço personalizado. BREWZone pode, adicionalmente, enviar um evento TA para a base de dados de transação (TXN) através da cobrança de valor de serviço (SVB) . Quando a licença expira, o usuário pode comprar outros tipos de licença PBT mesmo quando PBT não combina com o dispositivo de destino. Em um exemplo, TXN pode não incluir quaisquer referências cruzadas a quaisquer manuseadores de preço reais. Adicionalmente, de acordo com um aspecto, nenhum ajuste pode ser feito visto que CLP/DAP é igual azero. Em um caso, o subt ipo/estado SVB sendo iguala dois será utilizado para entrega.
Alternativamente, em uma técnica de precificação de assinatura, a assinatura ilimitada será reintegrada no dispositivo de destino. Se o preço tiver mudado, o preço de nova assinatura poderá ser utilizado. Visto que a assinatura de duração limitada já foi pago, a assinatura de duração limitada será reintegrada da mesma forma que a licença parcial, mesmo se eliminada anteriormente. Em um exemplo, um SB adicional é gerado com CLP/DAP igual a zero. De acordo com um exemplo, o subtipo/estado SVB equivalente a dois ou três pode ser utilizado. Em um caso, a entrega de conteúdo pode se dar através da compra alternativa utilizando BREWZone.
Suportando tais arquivos comerciais, na figura 6, uma estrutura de dados de dispositivo ilustrativa 300 utilizada pelo cliente de transferência de dispositivo 160 da figura 4 realiza o inventário dinâmico dos aplicativos licenciados. Cada registro corresponde a um aplicativo atualmente instalado e licenciado, ou eliminado, no dispositivo de comunicação 104 (figura 4) . Cada aplicativo licenciado é referido pela referência de índice de catálogo na coluna "#", pelo título do aplicativo em uma coluna com essa denominação, por um endereço de memória física, pelo tipo de licença (por exemplo, livre, demonstração, compra, assinatura), por um método de pagamento (por exemplo, preço por utilização, preço por tempo, compra por duração ilimitada, etc. Uma data de transação é fornecida para a realização de referência cruzada com os dados da rede e para cálculo do tempo restante nas licenças de duração limitada.
Na figura 7, uma estrutura de dados de rede ilustrativa 400 contém a informação para a validação das licenças dos aplicativos inventariados em um dispositivo, para recuperação de um aplicativo que foi eliminado no dispositivo com duração de licença restante, e/ou para localização de uma versão equivalente ou atualizada do aplicativo, adequada para transferência para um dispositivo de destino. Para essa finalidade, a estrutura de dados ilustrativa 400 pertence a um ID de usuário, ou um ID de dispositivo, com transações listadas por um indice de catálogo para o aplicativo, o titulo do aplicativo, um tipo de plataforma (por exemplo, tipo de software e/ou tipo de hardware) do aplicativo, uma identificação do vendedor para acessar disposições particulares de cobrança e preço que podem ser externas à estrutura de dados 400, um método de preço para a transação original, uma disposição de pagamento que pode ser utilizada para determinar tempo ou utilizações restantes na licença, e uma data de transação para correlacionar com a estrutura de dados de dispositivo 300 e para calcular um valor restante na licença.
Na figura 8, uma estrutura de dados de catálogo ilustrativa 500 utilizada pelo gerenciador de transferência fornece uma referência cruzada entre os números de referência de catálogo para os aplicativos a fim de determinar os termos de licença oferecidos no momento, incluindo o tipo de licença e a precificação, se descontos estão disponíveis para as classes de usuários em particular, e se uma versão particular do aplicativo pela plataforma é considerada uma equivalência ou uma atualização de um aplicativo original licenciado para um usuário. A lógica de negócios pode indicar que uma versão atualizada deve ser oferecida, ou pode indicar que uma equivalência deva ser automaticamente transferida com a versão de atualização selecionada apenas quando a única opção ou quando manualmente selecionado pelo usuário.
Na figura 9, uma matriz de lógica de negócios 600 pode servir como uma forma de se mapear os direitos de licença atuais em um aplicativo original para um substituto proposto para um dispositivo de destino proposto. Para essa finalidade, o tipo de licença para um aplicativo "antigo" (por exemplo, demonstração, pague para usar, paguem pelo tempo, duração ilimitada) pode ter sua referência cruzada realizada com os tipos de licença disponíveis para o aplicativo substituto localizado na estrutura de dados de catálogo 500. Exemplos de tal lógica de negócios incluem a configuração de um lembrete de venda cruzada ou outro tipo de lembrete futuro para realização de uma transferência em um momento posterior se uma versão equivalente ou atualizada ainda não estiver disponível para o dispositivo de destino sob quaisquer termos de licença. Para versões de demonstração, a lógica de negócios pode resultar sempre no fornecimento de um preço atualizado equivalente sem custos. A lógica de negócios pode incluir o crédito de um pagamento pelo uso ou pagamento por tempo e quantia equivalente com uma nova versão, independentemente de se é uma equivalência ou atualização, mas com extensões de assinatura futuras com preço de nova assinatura. Descontos podem ser oferecidos, tal como o fornecimento de versões atualizadas com metade da diferença do preço da licença com relação a alguém que não está atualizando. Na figura 10, um sistema de comunicação 700 facilita a transferência de conteúdo tal como um aplicativo licenciado através de uma rede 702 entre o UE de origem 704 e um UE de destino 706. Várias arquiteturas de computação e rede podem ser empregadas com vários elementos funcionais como apresentado. Um sistema portador 708 fornece serviços de comunicação para os UE de origem e destino 704, 706 para suas finalidades ilustrativas como dispositivos de comunicação que executam os aplicativos licenciados. Um servidor de transferência 710 manuseia o processamento de extremidade posterior necessário para a transferência de aplicativo licenciado através de um canal de entrega fornecido por um servidor de entrega de conteúdo (CDS) 712. Quando nenhuma autenticação através de um cliente de transferência de dispositivo (não ilustrado) no UE de origem ou destino 702 e 704 está ocorrendo, um portal de rede de transferência 714 pode interagir com o servidor de transferência 710 para manusear os registros de usuário, incluindo a autenticação do UE 702 e 704 e o usuário através de um Proxy de autenticação mútua (MA) 716. Os UEs 704 e 706 podem ser parte de um grupo, identificado em uma base de dados de grupo 718. O sistema portador 708 que serve o grupo pode ser financiado por um serviço de entrega de cobrança (BDS) 720 que utiliza os dados da cobrança de valor de serviço (SVB) 722 para determinar as taxas de assinatura e ciclos de cobrança para o grupo. O servidor de transferência 710 pode rastrear as transferências realizadas pelos registros mantidos em uma base de dados de transferência 724 com validação das licenças realizadas previamente comparando com uma base de dados de transação (TXN) 72 6. Determinados serviços administrativos podem ser realizados através de uma base de dados de centro de gerenciamento (MC) 728 que pode incluir a autenticação de autorizações de nível superior para visualizar ou modificar os dados de grupo e usuário, etc. Várias outras entidades externas, tal como sistemas portadores, podem ser acessadas através de uma interface de serviço 730. Um depósito de aplicativos (por exemplo, código executável) pode ser recuperado a partir da base de dados de aplicativos segura 732.
As disposições de arquitetura entre algumas ou todas essas entidades da figura 10 podem ser selecionadas com base no tipo de sistema de comunicação 700 e outras considerações. Em um exemplo, o usuário pode utilizar o portal de rede de transferência 714 para comunicar para o servidor de transferência 710 de modo a iniciar a transferência de conteúdo. Alternativamente, o usuário pode iniciar a transferência de conteúdo utilizando a interface de usuário de dispositivo fornecida pelo UE 704, 706. Depois do recebimento da solicitação, o servidor de transferência 710 se comunica com a entidade de cobrança 720 através da interface de serviço 730. Uma vez que o histórico de cobrança e de compra associado com o conteúdo a ser transferido foi determinado, a entidade de cobrança 720 comunica tal informação para o servidor de transferência 710. O servidor de transferência 710, por sua vez, realiza o mapeamento de conteúdo seguido pelo servidor de transferência 710 comunicando para a entidade de entrega 712 invocando uma operação de entrega para a entrega do conteúdo transferido.
De acordo com outra implementação, a comunicação entre o servidor de transferência 710 e o usuário é alcançada através do portal de rede de transferência 714 através de uma conexão de rede. O portal de rede de transferência 714 pode ser uma interface de usuário de dispositivo de assinante ou uma interface de usuário de rede de assinante. Δ interface de usuário de dispositivo de assinante pode se comunicar com a base de dados do aplicativo 732. De forma similar, uma interface de Rede de administrador (por exemplo, o centro de gerenciamento 728) pode se comunicar com o servidor de transferência 710. O servidor de transferência 710 também pode acessar dados na base de dados de transferência 724. 0 servido de transferência 710 pode se comunicar adicionalmente com uma base de dados de aplicativo 732 utilizando a comunicação entre cliente e servidor de transferência de conteúdo autenticado através do MA 716. As comunicações entre o servidor de transferência 710 e o grupo 718, e a SVB 722 podem ser alcançadas através da interface de serviço 730. Por exemplo, o servido de transferência 710 e o grupo 718 se comunicam para facilitar a compra e entrega de conteúdo. Por sua vez, o grupo 718 pode se comunicar com a base de dados de aplicativo 732 de forma a acessar o conteúdo necessário (por exemplo, aplicativos licenciados). O servidor de transferência 710 se comunica com a SVB 722 para realizar o inventário e cobrança de conteúdo. A SVB 722 e o servidor de entrega de conteúdo 712 também podem se comunicar com o MC 72 8.
Em um exemplo com referência à figura 4 e à figura 10, cada um dos UE 704 e 706 compreende uma interface de usuário integrada 164 incluindo a extensão de cliente de transferência 168 e um aplicativo 112. Em um exemplo, a interface de usuário integrada 164 é uma interface de usuário comum para a transferência de aplicativos 112 e outro conteúdo de dispositivo. A extensão de cliente de transferência 168 está em comunicação com o serviço de transferência (referido de forma intercambiável como cliente de transferência que está em rede ou hospedado e apresentado como um processo de serviço de transferência 734) definido no sistema de entrega (por exemplo, CDS 712). Em um caso, a extensão de cliente de transferência 168 fornece o IDownload 170 e abstração MA 172 para a interface de usuário de dispositivo de transferência 164. Esses componentes da figura 4 são agregados como apresentado por 736 na figura 10 no UE 704 e por 738 no UE 706. Os clientes de transferência 736, 738 fornecem interfaces de usuário de dispositivo para a operação de transferência. 0 cliente de transferência opera com a extensão de cliente de transferência 168 para manusear o cliente para as comunicações com o servidor.
De acordo com um aspecto, o aplicativo 112 é implementado por um projetista para uma solução de transferência/suporte de conteúdo de dispositivo e aplicativo unificada. O aplicativo 112 do dispositivo 704 está em comunicação com um serviço de gerenciamento de conteúdo de dispositivo (não ilustrado) que possui armazenamento de dados persistente. Em um exemplo, o serviço de gerenciamento de conteúdo de dispositivo ABC pode fornecer suporte, restauração, e transferência de conteúdo de dispositivo para um projetista.
A comunicação segura entre o cliente de transferência 160 e o servidor de transferência 710 é facilitada pelo cliente de transferência 160, o IDownloadl70, e IMutualAuth/IWeb 172 no lado do dispositivo enquanto que o servidor de entrega de conteúdo 712 inclui um content Fac (ou Cl), MA, servidor de rede, e porta SVC (não ilustrada). 0 servidor de transferência 710 inclui um serviço de transferência 734 e uma porta de serviços (SVC). 0 dispositivo 704 pode se comunicar com o servidor de entrega de conteúdo 712 como o MA 716, que por sua vez se comunica com o servidor de transferência 710 e a base de dados de transferência 724. Em um aspecto, o cliente de transferência 160 pode utilizar MA para a comunicação autenticada entre o dispositivo 704 e o serviço de transferência 734, enquanto o cliente de transferência 160 pode utilizar HTTP para toda a comunicação não autenticada. O CDS 712 pode ser utilizado como um Proxy MA 716, que termina no MA, e passa os dados restantes para o serviço de transferência. Em um exemplo, um duto autenticado pode ser criado entre o cliente de transferência 160 e o serviço de transferência. O Proxy MA 716 é o serviço de autenticação mútua para a operação de transferência. 0 serviço MA fornece a conectividade segura ente o cliente de transferência 160 e o servidor CT 710. Em um exemplo, uma interface portadora (ou provedor de conteúdo) do CDS 712 pode agir como o Proxy MA 716 para o serviço de transferência.
Em outro sistema de comunicação, o UE 704 se comunica com o servidor de transferência 710 e o CDS 712. 0 servidor de transferência 710 também está em contato com o portal de rede de transferência 714, e interfaceia com a SVB 722 utilizando a interface de serviço 730. 0 CDS 712 está em comunicação com o MC 728 e o grupo 718.
Em outro sistema de comunicação, o UE 704 interfaceia com o CDS 712 e o servidor de transferência 710, que, por sua vez, se comunica com o MC 728 por meio da interface de serviço 730. 0 servidor de transferência 710 também está conectado ao portal de rede de transferência 714. Alternativamente, o UE 704 está em comunicação com o servidor de transferência 710 e o CDS 712. O MC 728 se comunica com o servidor de transferência 710 por meio de interface de serviço 730.
Em um exemplo, um nome de hospedeiro do CDS 712 é automaticamente inserido pelo Proxy MA 716 de forma a impedir que os clientes de transferência 736 e 738 tenham qualquer controle sobre o hospedeiro de destino (não ilustrado). Adicionalmente, o CDS 712 pode ser configurado de modo a fornecer a função de autenticação/autorização necessária para o dispositivo, e fornece a configuração do dispositivo (por exemplo, quando o dispositivo foi configurado incorretamente).
Na figura 11, um fluxo de chamada ilustrativo de um UE de origem 704 para o serviço de transferência 734 de um sistema de transferência 700 é apresentado, de acordo com um exemplo. Em particular, o UE de origem 704 no estágio Ά apresentado em 800 envia uma solicitação por informação de licença/aplicativo para o CDS 712. No estágio B apresentado em 802, o CDS 712 realiza a autenticação/autorização e forma a interface portadora e envia uma mensagem de aplicativo de transferência para o serviço de transferência 734, apresentado como uma resposta de estágio D em 806 do serviço de transferência 734 para o CDS 712 e uma mensagem de sucesso de estágio E em 808 para o UE de origem 704, o cliente de transferência 736 remove todos os aplicativos no estágio F apresentado em 810 e envia um aviso de recebimento de eliminação para o CDS 712 no estágio G apresentado em 812. 0 serviço de transferência 734 consulta o TXN 726 no estágio H apresentado em 814 (através da interface de serviço 730 no estágio I apresentado em 816) para a informação de partes de cliente e garante que a informação enviada pelo cliente de transferência não seja corrompida. 0 TXN 726 envia de volta a informação de licença de cliente no estágio J apresentado por 818 para a interface de serviço 730, que, por sua vez, transmite a resposta no estágio K apresentado por 820 para o serviço de transferência 734. 0 serviço de transferência 734 armazena a informação de licença para o SID no estágio L, apresentado como o processamento apresentado por 822. Em torno desse momento, o CDS 712 envia no estágio M a eliminação dos aplicativos para o TXN 726 para armazenamento.
A figura 12 ilustra um fluxograma de chamada ilustrativo a partir do serviço de transferência 734 para o UE de destino 706 em um sistema de comunicação 700 onde o UE de destino 706 inclui um cliente de transferência 738, de acordo com um exemplo. No momento em que essa seqüência começa, o UE de origem 704 enviou a informação de licença/conteúdo para o serviço de transferência 734 e o UE de origem 704 foi desativado. Na figura 12, o UE de destino 706 envia uma solicitação para a reintegração para o serviço de transferência 734 e o serviço de transferência 734 obtém a nova PID para a SID e determina os aplicativos que podem ser reintegrados para a PID de destino. Em particular, em um estágio A apresentado por 840, o UE de destino 706 envia uma solicitação de reintegração ("aplicativos/licença solicitados") para o CDS 712, que em resposta realiza a autenticação e autorização e a interface portadora no estágio B apresentado por 842. O CDS 712 envia uma mensagem de obtenção de aplicativo/licença para o serviço de transferência 734 no estágio C apresentado por 844. O serviço de transferência 734 obtém a identificação de nova plataforma (PID) para a identificação de assinante (SID) e determina o aplicativo que pode ser reintegrado para a PID de destino. Com base nos aplicativos, as licenças restantes são reintegradas utilizando o serviço de interface 730 e o grupo 718. Em particular, no estágio D apresentado por 84 6, uma mensagem de item de entrega alternativa de aplicativo segue do serviço de transferência 734 para a interface de serviço 730, que, por sua vez, no estágio G envia uma mensagem de MyApps de instalação automática de grupo apresentada em 848 para o grupo 718. No estágio F, o grupo 18 fornece uma resposta apresentada em 850 para a interface de serviço 730, que, por sua vez, envia uma mensagem de resposta no estágio G apresentada por 852 para o serviço de transferência 734. Os aplicativos ao instalados automaticamente juntamente com as licenças restantes do dispositivo original. Em particular, o serviço de transferência 734 no estágio H apresentado por 854 envia a resposta para o CDS 712, que, por sua vez, reporta no estágio I o sucesso do cliente de transferência 738 do UE de destino 706. 0 UE de destino 706 responde com uma solicitação "get ADS.txt" no estágio J, apresentado por 856, para o servidor CDS712. O CDS 712 envia uma solicitação para obtenção da lista de ação no estágio K apresentado em 858 para o grupo 718. O grupo 718 no estágio L envia os itens de instalação automática apresentados em 860 para o CDS 712, que, por sua vez, envia os pacotes no estágio M apresentado por 862 para o UE de destino 706. No estágio N apresentado em 864, o UE de destino 706 retorna um aviso de recebimento de download (DL) para o CDS 712.
A figura 13, por outro lado, ilustra um fluxograma de chamada ilustrativo a partir do serviço de transferência 734 para o UE destino 706 em um sistema de comunicação 700 onde o UE de destino 706 não inclui um cliente de transferência 738. Dessa forma, em um exemplo, o serviço de transferência 734 fornece a transferência de informação de conteúdo/licença do portal de rede de transferência 714 utilizando o cliente de rede de transferência 740 (figura 10) ao invés de a partir do UE de destino 706. Alternativamente, essa transferência pode ser uma continuação do processo de transferência iniciado pelo UE de origem 704 onde o cliente de transferência 736 pode implementar as interfaces MA e CDS para autenticar e autorizar a transferência, de acordo com um aspecto. Em um exemplo, a transferência para a solicitação de servidor incluir o cliente de rede de transferência 740 enviando o CT=Ack para o serviço de transferência 734 utilizando a lógica. O cliente de transferência 736 remove os aplicativos e envia o evento de eliminação para o CDS 712. De acordo com um aspecto, em uma solicitação de reintegração de dispositivo, os itens/licenças
reintegráveis podem estar disponíveis através das ações automáticas de Grupo ou Myapps no dispositivo, dependendo do dispositivo. O serviço CT pode implementar um motor de CreditBack para gerar o TA, se necessário. De acordo com um exemplo, o serviço CT consulta as partes de cliente e a informação de licença para a SID gerar a lista de transferência verdadeira. Se o cliente CT enviar mais itens do que estão presentes nas partes de cliente, os itens adicionais podem ser ignorados.
Em particular, no estágio A apresentado por 880, o UE de destino 706 envia uma mensagem de registro MA para o CDS 712. No estágio B apresentado por 882, o CDS 712 realiza a autenticação, autorização e interface de portador. No estagio C apresentado por 884, o CDS 712 solicita a informação SID/PID do serviço de transferência 734, que, por sua vez, verifica se a informação de aplicativo/licença está presente no estágio D apresentado por 886. Então, no estágio E apresentado por 888, uma solicitação por um item de entrega alternativa de aplicativo é feita para a interface de serviço 730, que, por sua vez, envia uma solicitação My App/de instalação automática de grupo no estágio F apresentado por 890 para o grupo 718.0 grupo 718 envia no estágio G uma mensagem de sucesso apresentada por 892 para a interface de serviço 730, que, por sua vez, no estágio H envia uma mensagem de sucesso representada por 894 para o serviço de transferência 734. No estagio I, o serviço de transferência 734 envia uma mensagem de resposta apresentada por 896 para o CDS 712, que, por sua vez, envia no estágio J uma mensagem de registro para o UE de destino 706 apresentado por 898. 0 UE de destino 706 responde com ADS.txt e listas de ação no estágio K apresentado por 900 para o CDS 712, que, por sua vez, envia no estágio L uma solicitação de obtenção de listas de ação representada por 902 para o grupo 718. O grupo 718 no estágio M representado por 940 envia os itens de instalação automática para o CDs 712, que no estágio N representado por 906 envia os pacotes para o UE de destino 706, que, por sua vez, no estágio O representado por 908 envia um aviso de recebimento de download (DL) de volta para o CDS 712. A figura 14 representa um fluxograma de chamada
ilustrativo a partir do serviço de transferência 734 para o UE de destino 706 em um sistema de comunicação 700 onde nenhuma informação de conteúdo/licença está disponível e o UE de destino 706 inclui um cliente de transferência 738, de acordo com um exemplo. Por exemplo, se o UE de origem 704 for perdido ou danificado, a informação de conteúdo/licença não pode ser enviada para o serviço de transferência 734. Dessa forma, no estágio A representado por 920, o UE de destino 706 envia a solicitação por mensagem de aplicativo/licença para o CDS 712. O CDS 712 no estágio B representado por 922 autentica e autoriza a comunicação e configura a interface portadora, e então, no estágio C, representado por 924, solicita a obtenção da licença de aplicativo do serviço de transferência 734. O serviço de transferência 734 no estágio D representado por 926 verifica para ver se a informação de aplicativo/licença está presente. No estágio E representada por 928, o serviço de transferência 734 envia uma solicitação de obtenção de informação de aplicativo/licença para a interface de serviço 730 depois da determinação de que o UE de origem 704 não enviou tal informação ainda. No estágio F representado por 930, a interface de serviço 730 envia a solicitação por consulta de partes de cliente para o TXN 930, que responde no estágio G com a informação de partes de cliente representada por 932. A interface de serviço 730 envia a informação de aplicativo/licença para o serviço de transferência no estágio H representado por 934. Com base nas regras de negócios, o serviço de transferência no estágio I solicita o item de entrega alternativo representado por 936 a partir da interface de serviço 730, que, por sua vez, envia a solicitação no estágio J representada por 938 para o grupo 718. O grupo 718 no estágio K responde com uma resposta de sucesso representada por 940 para a interface de serviço 730, que, por sua vez, no estágio L responde com uma resposta de sucesso representada por 942 para o serviço de transferência 734. No estágio Μ, o serviço de transferência envia uma mensagem de resposta representada por 944 para o CDS 712, que, por sua vez, retorna uma mensagem de sucesso para o cliente de transferência 738. No estágio 0, o UE de destino 706 responde com uma mensagem de obtenção ADS.txt para o CDS 712, que no estágio P representado por 950 envia uma solicitação de obtenção de My Apps para o grupo 718. No estágio Q, o grupo 718 responde com a categoria My Apps representada por 952 para o CDS 712, que envia o My Apps no estágio R para o UE de destino 706, representado por 954. Então, no estágio S, o UE de destino 706 acusa o recebimento do download, representado por 956.
A figura 15 representa um fluxograma de chamada ilustrativo do serviço de transferência 734 para o UE de destino 706 em um sistema de comunicação 700 onde nenhuma informação de conteúdo/licença está disponível e do UE de destino 706 não inclui um cliente de transferência 738, de acordo com um exemplo. No exemplo ilustrado, visto que o UE de destino 706 não inclui um cliente de transferência 738, o CDS 712 pode implementar a interface portadora (CI) para comunicar com o serviço de transferência 734 uma vez que o novo UE de destino 706 tenha sido registrado. Em particular, no estágio Δ representado por 970, o UE de destino 706 envia um registro MA para o CDS 712. 0 CDS 712 no estágio B realiza autenticação, autorização e cria a interface portadora, representada em 972. No estágio C, o CDS 712 solicita a informação SID/PID do servidor de transferência 734, representado por 974. No estágio D, o servidor de transferência 734 verifica a presença da informação de aplicativo/licença, representada por 976. No estágio Ε, o servidor de transferência 734 envia uma solicitação para obter informação de aplicativo/licença representada por 978 a partir da interface de serviço 730. No estágio F, a interface de serviço 730 envia uma solicitação para a consulta de partes de cliente para o TXN 726, representada por 980. No estágio G, o TXN 726 responde com a informação de partes de cliente, representadas por 982, para a interface de serviço 730. No estágio H, a interface de serviço 730, da informação de aplicativo/licença é enviada para o serviço de transferência 734, representado por 984. No estágio I, o serviço de transferência 734 envia para a interface de serviço 734 uma solicitação de item de entrega alternativa BREWZone, representada por 986, para a interface de serviço 730. No estágio J, a interface de serviço 730 envia uma mensagem de "grupo: apenas para My Apps" para o grupo 718, representado por 988. 0 grupo 718 responde com uma mensagem de sucesso no estágio K representado por 990. A interface de serviço 730 envia a mensagem de sucesso no estágio L representado por 992 para o serviço de transferência 734. No estágio Μ, o serviço de transferência 734 envia uma mensagem de resposta representada por 994 para o CDS 712. No estágio Ν, o CDS 712 envia uma resposta de registro para o UE de destino 706. No estágio O, o UE de destino 706 envia uma mensagem ADS.txt... ItemList para o CDS 712, representado por 998. 0 CDS 712 envia uma mensagem "obter My Apps" para o grupo 718, representado por 1000. No estágio Q, o grupo 718 envia a categoria My Apps representada por 1002 para o CDS 712, que, por sua vez, envia no estágio R My Apps representado por 1004 para o UE de destino 706, que por sua vez, no estágio S, responde com uma mensagem "obter Pkg" representada por 1006 para o CDs 712 .
A figura 16 é um diagrama esquemático de uma arquitetura ilustrativa para um sistema de comunicação 1100 para a implementação de uma trava digital 1102, de acordo com um aspecto. 0 sistema 1100 inclui um sistema de entrega 1104, Proxy MA 1106, serviço de transferência 1108, trava digital 1102, e TXN 1110. 0 sistema de entrega 1104 inclui um CDS 1112 e um Grupo 1114. Um UE 1116 interfaceia com o CDS 1112 e o Proxy MA 1106 através das APIs respectivas 1118, 1120. Um sistema de rede de administrador 1122 pode interagir com o serviço de transferência 1108 através da API de serviço de transferência 1124. O Proxy MA 1106 interfaceia com o serviço de transferência 11 através da API de serviço de transferência 1124. O serviço de transferência 1108, por sua vez, interage com a trava digital 1102 através da API de trava digital 1126. O serviço de transferência 1108 interfaceia com o grupo 1114 e o TXN 1110 através de uma interface de serviço 1128. Em um aspecto, as funções (por exemplo, APIs) para a trava digital de transferência 1102 são Colocar, Obter, Atualizar e Remover. O UE 1116 utiliza a função Colocar para obter a licença de suporte de transferência. A função Colocar passa através do Proxy MA 1106, o serviço de transferência 1108 para a trava digital 1102, que é associada com o TXN 1110. As funções Obter e Atualizar podem ser utilizadas pelo sistema de Rede 1122, e as funções Obter, Atualizar e Remover podem ser utilizadas por 1116 para reintegrar os aplicativos no sistema de transferência 1100.
De acordo com um exemplo, a trava digital inclui informação de assinante (SID), conteúdo (por exemplo, licenças), e metainformação (por exemplo, informação associada com o proprietário do conteúdo). A informação de assinante pode ser SID ou PID. O conteúdo (por exemplo, licenças) pode ser representado em uma forma de objeto XML com um dtd predefinido. A metainformação é a informação associada com o proprietário do conteúdo que permite que a lógica especifica do proprietário seja utilizada para o conteúdo. Em um exemplo, a lógica pode ser uma função de trava digital ou a função de proprietário (por exemplo, expiração de conteúdo, situação de conteúdo, etc.). Por exemplo, em um exemplo, o proprietário do conteúdo pode ser CT, TXN, portal de consumidor, etc.
As várias lógicas ilustrativas, blocos lógicos, módulos e circuitos descritos com relação às versões descritas aqui podem ser implementados ou realizados com um processador de finalidade geral, um processador de sinal digital (DSP), um circuito integrado especifico de aplicativo (ASIC) , um conjunto de porta programável em campo (FPGA) ou outro dispositivo lógico programável, porta discreta ou lógica de transistor, componentes de hardware discretos, ou qualquer combinação dos mesmos projetados para realizar as funções descritas aqui. Um processador de finalidade geral pode ser um microprocessador, mas, na alternativa, o processador pode se qualquer processador convencional, controlador, microcontrolador, ou máquina de estado. Um processador também pode ser implementado como uma combinação de dispositivos de computação, por exemplo, uma combinação de um DSP e um microprocessador, uma pluralidade de microprocessadores, um ou mais microprocessadores em conjunto com um núcleo DSP, ou qualquer outra configuração similar. Adicionalmente, pelo menos um processador pode compreender um ou mais módulos que operam para realizar uma ou mais etapas e/ou ações descritas acima.
Adicionalmente, as etapas e/ou ações de um método ou algoritmo descritos com relação aos aspectos descritos aqui podem ser consubstanciados diretamente em hardware,em um módulo de software executado por um processador, ou em uma combinação dos dois. Um módulo de software pode residir na memória RAM, memória flash, memória ROM, memória EPROM, memória EEPROM, registros, disco rígido, disco removível, CD-ROM, ou qualquer outra forma de meio de armazenamento conhecida da técnica. Um meio de armazenamento ilustrativo pode ser acoplado ao processador, de forma que o processador possa ler informação a parti de, e escrever informação no meio de armazenamento. Na alternativa, o meio de armazenamento pode ser integral ao processador. Adicionalmente, em alguns aspectos, o processador e o meio de armazenamento podem residir em um ASIC. Adicionalmente, o ASIC pode residir em um terminal de usuário. Na alternativa, o processador e o meio de armazenamento podem residir como componentes discretos em um terminal de usuário. Adicionalmente, em alguns aspectos, as etapas e/ou ações de um método ou algoritmo podem residir como um ou qualquer combinação ou conjunto de códigos e/ou instruções em um meio legível por máquina e/ou meio legível por computador, que possam ser incorporados a um produto de programa de computador.
Enquanto a descrição acima discute aspectos ilustrativos e/ou implementações, deve-se notar que várias mudanças e modificações podem ser feitas aqui sem se distanciar do escopo dos aspectos descritos e/ou implementações como definido pelas reivindicações em anexo. Adicionalmente, apesar de os elementos dos aspectos descritos e/ou implementações poderem ser descritos ou reivindicados no singular, o plural é contemplado a menos que a limitação ao singular seja explicitamente mencionada. Adicionalmente, todos ou uma parte de qualquer aspecto e/ou implementação podem ser utilizados com todos ou uma parte de qualquer outro aspecto e/ou implementação, a menos que mencionado o contrário.
Claims (49)
1. Método de transação e transferência de aplicativos implementados por computador relacionado com um aplicativo atualmente licenciado, compreendendo: a determinação dos direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; o mapeamento do aplicativo original para um aplicativo substituto adequado para a execução em um segundo dispositivo de usuário possuindo uma segunda configuração; a aplicação de uma regra comercial de precificação para cotar o preço de uma transação de licenciamento de usuário para uso do aplicativo substituto no lugar da utilização do aplicativo original; e a conclusão da transação pelo fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
2. Método, de acordo com a reivindicação 1, compreendendo adicionalmente o comando de eliminação do aplicativo original a partir do primeiro dispositivo de usuário.
3. Método, de acordo com a reivindicação 1, compreendendo adicionalmente a sinalização do primeiro dispositivo de usuário para impedir a utilização do aplicativo original.
4. Método, de acordo com a reivindicação 1, compreendendo adicionalmente: a solicitação de um inventário do aplicativo original no primeiro dispositivo de usuário; e a validação dos direitos de licença para o aplicativo original pela referência a uma base de dados de transação.
5. Método, de acordo com a reivindicação 1, no qual os direitos de licença compreendem uma limitação de uso, a precificação de transação compreendendo a determinação de uma parte restante do uso permitido pelos direitos de licença e aplicação de um valor da parte restante contra um preço atualizado.
6. Método, de acordo com a reivindicação 5, compreendendo adicionalmente a solicitação de um rastreamento do primeiro dispositivo de usuário de um número de vezes em que o aplicativo original foi executado para determinar a parte restante.
7. Método, de acordo com a reivindicação 5, compreendendo adicionalmente a solicitação de um rastreamento do primeiro dispositivo de usuário de uma quantidade de tempo que o aplicativo original foi executado para determinar a parte restante.
8. Método, de acordo com a reivindicação 1, compreendendo adicionalmente o fornecimento do segundo dispositivo de usuário pela comunicação sem fio do aplicativo substituto para o segundo dispositivo de usuário.
9. Método, de acordo com a reivindicação 1, compreendendo adicionalmente o fornecimento do segundo dispositivo de usuário pela sinalização para o destravamento do aplicativo substituto residente no segundo dispositivo de usuário.
10. Método, de acordo com a reivindicação 1, no qual o fornecimento do segundo dispositivo de usuário é deferido, o método compreendendo adicionalmente a determinação de um crédito de retorno para uma parte restante dos direitos de licença.
11. Método, de acordo com a reivindicação 1, compreendendo adicionalmente a interação com o usuário pela sinalização para uma interface de usuário do primeiro dispositivo de usuário para negociação da transação.
12. Método, de acordo com a reivindicação 1, compreendendo adicionalmente a interação com o usuário pela sinalização para uma interface de usuário do segundo dispositivo de usuário para negociação da transação.
13. Método, de acordo com a reivindicação 1, compreendendo adicionalmente a interação com o usuário pela sinalização de uma interface de usuário de um computador em rede para negociar a transação.
14. Método, de acordo com a reivindicação 1, no qual o aplicativo compreende um código executável.
15. Método, de acordo com a reivindicação 1, compreendendo adicionalmente a realização de uma transação de cobrança para refletir o preço da transação.
16. Método, de acordo com a reivindicação 1, compreendendo adicionalmente o registro de transações de direitos de licença substituta para refletir o fornecimento do aplicativo substituto para o segundo dispositivo de usuário.
17. Método, de acordo com a reivindicação 1, compreendendo adicionalmente: em resposta à disponibilidade de um aplicativo equivalente possuindo um beneficio sobre o aplicativo original, a determinação de uma população de dispositivos de usuário com direitos de licença para o aplicativo original; a entrega do aplicativo equivalente para a população de dispositivos de usuário; e a sinalização para desativação do aplicativo original.
18. Pelo menos um processador configurado para transar e transferir um aplicativo implementado por computador relacionado com um aplicativo atualmente licenciado, compreendendo: um primeiro módulo para a determinação dos direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; um segundo módulo para mapear o aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; um terceiro módulo para aplicação de uma regra comercial para cotar o preço de uma transação para o licenciamento do usuário para utilizar o aplicativo substituto no lugar da utilização do aplicativo original; e um quarto módulo para a conclusão da transação pelo fornecimento do segundo dispositivo de usuário com aplicativo substituto.
19. Produto de programa de computador, compreendendo: um meio legível por computador compreendendo: pelo menos uma instrução para fazer com que um computador determine os direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; pelo menos uma instrução para fazer com que o computador mapeie o aplicativo para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; pelo menos uma instrução para fazer com que o computador aplique uma regra comercial para cotar o preço de uma transação para licenciamento do usuário para que o mesmo utilize o aplicativo substituto no lugar da utilização do aplicativo original; e pelo menos uma instrução para fazer com que o computador conclua a transação pelo fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
20. Aparelho, compreendendo: meios para determinar os direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; meios para mapear o aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; meios para aplicar uma regra comercial para cotar o preço de uma transação para licenciamento do usuário para uso do aplicativo substituto no lugar do aplicativo original; e meios para concluir a transação pelo fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
21. Aparelho para realizar a transação e a transferência de um aplicativo implementado por computador relacionado com um aplicativo atualmente licenciado, compreendendo: um componente de gerenciamento de transferência para determinar os direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para execução do aplicativo; um catálogo de aplicativo para mapear o aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; um motor de regra para aplicação de uma regra comercial para cotar o preço de uma transação para licenciamento do usuário para uso do aplicativo substituto no lugar da utilização do aplicativo original; e um componente de entrega para concluir a transação pelo fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
22. Aparelho, de acordo com a reivindicação 21, compreendendo adicionalmente uma entidade de cobrança em comunicação com o componente de gerenciamento de transferência para realizar uma transação de cobrança refletindo o preço da transação concluída.
23. Aparelho, de acordo com a reivindicação 21, compreendendo adicionalmente um componente de reconciliação de aplicativo que comparar um inventário de aplicativo do primeiro dispositivo de usuário contra um registro de transação armazenado de forma remota com relação ao primeiro dispositivo de usuário.
24. Aparelho, de acordo com a reivindicação 21, no qual o componente de entrega compreende adicionalmente uma função de eliminação automática para causar a eliminação do aplicativo original no primeiro dispositivo de usuário.
25. Aparelho, de acordo com a reivindicação 21, no qual os primeiro e segundo dispositivos de usuário compreendem um dispositivo de comunicação portátil, o aparelho compreendendo adicionalmente uma interface de serviço para um serviço de portador para pelo menos um dentre os primeiro e segundo dispositivos de usuário.
26. Método de transação e transferência de um aplicativo implementado por computador relacionado com um aplicativo atualmente licenciado, compreendendo: a solicitação de uma determinação de direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; aceitação de um mapeamento do aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; aceitação de um preço de transação que foi determinado pela aplicação de uma regra comercial para cotar o preço de uma transação para licenciamento do usuário para uso do aplicativo substituto no lugar da utilização do aplicativo original; e a conclusão da transação pelo recebimento do fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
27. Método, de acordo com a reivindicação 26, compreendendo adicionalmente a eliminação do aplicativo original a partir do primeiro dispositivo de usuário em conjunto com a conclusão da transação.
28. Método, de acordo com a reivindicação 26, compreendendo adicionalmente o travamento do aplicativo original para que não seja utilizado em conjunto com a conclusão da transação.
29. Método, de acordo com a reivindicação 26, compreendendo adicionalmente: manter um inventário do aplicativo original no primeiro dispositivo de usuário; e enviar o inventário para validar os direitos de licença do aplicativo original com referência a uma base de dados de transação.
30. Método, de acordo com a reivindicação 26, no qual os direitos de licença compreendem uma limitação de uso, a manutenção de um inventario do aplicativo original no primeiro dispositivo de usuário para precificação da transação compreende a determinação de uma parte restante do uso permitido pelos direitos de licença de forma que um valor possa ser aplicado à parte restante contra um preço atualizado.
31. Método, de acordo com a reivindicação 30, compreendendo adicionalmente o rastreamento de um número de vezes em que o aplicativo original foi executado para determinar a parte restante.
32. Método, de acordo com a reivindicação 30, compreendendo adicionalmente o rastreamento de uma quantidade de tempo que o aplicativo original foi executado para determinar a parte restante.
33. Método, de acordo com a reivindicação 26, compreendendo adicionalmente o fornecimento do segundo dispositivo de usuário pelo recebimento sem fio de uma comunicação do aplicativo substituto para o segundo dispositivo de usuário.
34. Método, de acordo com a reivindicação 26, compreendendo adicionalmente o fornecimento do segundo dispositivo de usuário pelo destravamento do aplicativo substituto residente no segundo dispositivo de usuário.
35. Método, de acordo com a reivindicação 26, compreendendo adicionalmente o deferimento do fornecimento do segundo dispositivo de usuário para receber um crédito pela parte restante dos direitos de licença.
36. Método, de acordo com a reivindicação 26, compreendendo adicionalmente a interação com o usuário através de uma interface de usuário do primeiro dispositivo de usuário para negociar a transação.
37. Método, de acordo com a reivindicação 26, compreendendo adicionalmente a interação com o usuário através de uma interface de usuário do segundo dispositivo de usuário para negociar a transação.
38. Método, de acordo com a reivindicação 26, compreendendo adicionalmente a interação com o usuário através da interface de usuário de um computador em rede para negociar a transação.
39. Método, de acordo com a reivindicação 26, no qual o aplicativo compreende um código executável.
40. Método, de acordo com a reivindicação 26, compreendendo adicionalmente a aceitação de um aplicativo substituto que faz com que a transação de cobrança reflita o preço de transação.
41. Método, de acordo com a reivindicação 26, compreendendo adicionalmente a atualização do rastreamento de inventário para refletir o aplicativo substituto no segundo dispositivo de usuário.
42. Método, de acordo com a reivindicação 26, compreendendo adicionalmente: o recebimento do fornecimento de um aplicativo equivalente que substitui o aplicativo original enviado em resposta à disponibilidade de um aplicativo equivalente possuindo um beneficio através do aplicativo original; e a desativação do aplicativo original.
43. Pelo menos um processador configurado para realizar a transação e transferência de aplicativo implementado por computador relacionado com um aplicativo atualmente licenciado, compreendendo: um primeiro módulo para solicitação de uma determinação dos direitos de licença mantido por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; um segundo módulo para aceitar um mapeamento do aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo d e usuário possuindo uma segunda configuração; um terceiro módulo para aceitar um preço de transação que foi determinado pela aplicação de uma regra comercial para cotar o preço de uma transação para licenciamento do usuário par auso do aplicativo substituto no lugar da utilização do aplicativo original; e um quarto módulo para concluir a transação pelo recebimento do fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
44. Produto de programa de computador, compreendendo: um meio legível por computador, compreendendo: pelo menos uma instrução para fazer com que um computador solicite uma determinação dos direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; pelo menos uma instrução para fazer com que o computador aceite um mapeamento do aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; pelo menos uma instrução para fazer com que o computador aceite um preço de transação que foi determinado pela aplicação de uma regra comercial para cotar o peço de uma transação para o licenciamento do usuário para utilizar o aplicativo substituto no lugar da utilização do aplicativo original; e pelo menos uma instrução para fazer com que o computador conclua a transação recebendo o fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
45. Aparelho, compreendendo: um meio para solicitar uma determinação dos direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; um meio para aceitar um mapeamento do aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração; um meio para aceitar um peço de transação que foi determinado pela aplicação de uma regra comercial para cotar o preço de uma transação para licenciamento do usuário para uso do aplicativo substituto no lugar da utilização do aplicativo no lugar da utilização do aplicativo original; e um meio para concluir a transação pelo recebimento do fornecimento do segundo dispositivo de usuário com aplicativo substituto.
46. Aparelho para transação e transferência de um aplicativo implementado por computador relacionado com um aplicativo licenciado atualmente, compreendendo: um componente de comunicação para solicitar uma determinação dos direitos de licença mantidos por um usuário para um aplicativo original executado por um primeiro dispositivo de usuário possuindo uma primeira configuração adequada para executar o aplicativo; e uma interface de usuário para aceitar um mapeamento do aplicativo original para um aplicativo substituto adequado para execução em um segundo dispositivo de usuário possuindo uma segunda configuração e para aceitar um preço de transação que foi determinado pela aplicação de uma regra comercial para cotar o preço de uma transação para licenciamento do usuário para uso do aplicativo substituto no lugar da utilização do aplicativo original; onde o componente de comunicação concluía transação pelo recebimento do fornecimento do segundo dispositivo de usuário com o aplicativo substituto.
47. Aparelho, de acordo com a reivindicação 46, compreendendo adicionalmente um componente de inventário de aplicativo que rastreia o aplicativo original para reconciliação contra um registro de transação armazenado longe do primeiro dispositivo de usuário.
48. Aparelho, de acordo com a reivindicação 46, compreendendo adicionalmente um cliente de transferência que opera para eliminar o aplicativo original no primeiro dispositivo de usuário em conjunto com a conclusão da transação.
49. Aparelho, de acordo com a reivindicação 46, no qual um dispositivo selecionado a partir de um primeiro e um segundo dispositivos de usuário compreende um dispositivo de comunicação portátil em comunicação com um serviço portador.
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US87070606P | 2006-12-19 | 2006-12-19 | |
| US60/870,706 | 2006-12-19 | ||
| US11/959,082 | 2007-12-18 | ||
| US11/959,082 US20080147530A1 (en) | 2006-12-19 | 2007-12-18 | Programmatically transferring applications between handsets based on license information |
| PCT/US2007/088062 WO2008077087A2 (en) | 2006-12-19 | 2007-12-19 | Programmatically transferring applications between handsets based on license information |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| BRPI0720581A2 true BRPI0720581A2 (pt) | 2014-02-04 |
Family
ID=39528708
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0720581-3A BRPI0720581A2 (pt) | 2006-12-19 | 2007-12-19 | Transferir programaticamente aplicativos entre aparelhos telefônicos com base em informações de licença |
Country Status (10)
| Country | Link |
|---|---|
| US (1) | US20080147530A1 (pt) |
| EP (1) | EP2127170A4 (pt) |
| JP (3) | JP5420420B2 (pt) |
| KR (2) | KR20120012981A (pt) |
| CN (1) | CN101563871B (pt) |
| BR (1) | BRPI0720581A2 (pt) |
| CA (1) | CA2670841C (pt) |
| RU (1) | RU2439690C2 (pt) |
| TW (1) | TWI387898B (pt) |
| WO (1) | WO2008077087A2 (pt) |
Families Citing this family (64)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8161411B2 (en) | 2003-04-25 | 2012-04-17 | Apple Inc. | Graphical user interface for browsing, searching and presenting media items |
| JP2004265333A (ja) * | 2003-03-04 | 2004-09-24 | Sony Corp | 情報処理装置および方法、並びにプログラム |
| US20040215534A1 (en) | 2003-04-25 | 2004-10-28 | Apple Computer, Inc. | Method and system for network-based allowance control |
| US7844548B2 (en) * | 2003-10-15 | 2010-11-30 | Apple Inc. | Techniques and systems for electronic submission of media for network-based distribution |
| JP2009521742A (ja) * | 2005-12-26 | 2009-06-04 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 権利管理のための方法および装置 |
| US7827162B2 (en) * | 2006-05-15 | 2010-11-02 | Apple Inc. | Media package format for submission to a media distribution system |
| US8015237B2 (en) | 2006-05-15 | 2011-09-06 | Apple Inc. | Processing of metadata content and media content received by a media distribution system |
| US7962634B2 (en) * | 2006-05-15 | 2011-06-14 | Apple Inc. | Submission of metadata content and media content to a media distribution system |
| US8984442B2 (en) * | 2006-11-17 | 2015-03-17 | Apple Inc. | Method and system for upgrading a previously purchased media asset |
| US20100131085A1 (en) * | 2007-09-07 | 2010-05-27 | Ryan Steelberg | System and method for on-demand delivery of audio content for use with entertainment creatives |
| US20110131141A1 (en) * | 2008-09-26 | 2011-06-02 | Ryan Steelberg | Advertising request and rules-based content provision engine, system and method |
| WO2009036381A2 (en) | 2007-09-12 | 2009-03-19 | Sony Corporation | Open market content distribution |
| US8271889B1 (en) * | 2007-11-26 | 2012-09-18 | Adobe Systems Incorporated | Automatically updated user interfaces for a mobile device |
| US20110264500A1 (en) * | 2008-02-04 | 2011-10-27 | Design Net Technical Products, Inc. | Method and system for authenticated transaction history |
| 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 |
| US20090259502A1 (en) * | 2008-04-10 | 2009-10-15 | Daniel David Erlewine | Quality-Based Media Management for Network-Based Media Distribution |
| US9076176B2 (en) * | 2008-05-05 | 2015-07-07 | Apple Inc. | Electronic submission of application programs for network-based distribution |
| US9342287B2 (en) | 2008-05-05 | 2016-05-17 | Apple Inc. | Software program ratings |
| US20090307682A1 (en) * | 2008-06-08 | 2009-12-10 | Sam Gharabally | Techniques for Acquiring Updates for Application Programs |
| US20090320144A1 (en) * | 2008-06-24 | 2009-12-24 | Broadcom Corporation | Method and system for transferring protected content |
| US7979514B2 (en) * | 2008-10-27 | 2011-07-12 | At&T Mobility Ii, Llc | Method and system for application provisioning |
| US20100131942A1 (en) * | 2008-11-21 | 2010-05-27 | Microsoft Corporation | Suite-based integration and deployment of business products |
| CN101753629A (zh) * | 2008-12-16 | 2010-06-23 | 深圳富泰宏精密工业有限公司 | 手机软件同步系统及方法 |
| KR101224717B1 (ko) * | 2008-12-26 | 2013-01-21 | 에스케이플래닛 주식회사 | 소프트웨어 라이센스 보호 방법과 그를 위한 시스템, 서버,단말기 및 컴퓨터로 읽을 수 있는 기록매체 |
| US20100235254A1 (en) * | 2009-03-16 | 2010-09-16 | Payam Mirrashidi | Application Products with In-Application Subsequent Feature Access Using Network-Based Distribution System |
| US20100235889A1 (en) * | 2009-03-16 | 2010-09-16 | Michael Kuohao Chu | Application products with in-application subsequent feature access using network-based distribution system |
| US9424399B2 (en) | 2009-05-12 | 2016-08-23 | Microsoft Technology Licensing, Llc | Availability of permission models in roaming environments |
| US20100293536A1 (en) * | 2009-05-12 | 2010-11-18 | Microsoft Corporation | Enhanced product functionality based on user identification |
| US9729609B2 (en) | 2009-08-07 | 2017-08-08 | Apple Inc. | Automatic transport discovery for media submission |
| US8935217B2 (en) * | 2009-09-08 | 2015-01-13 | Apple Inc. | Digital asset validation prior to submission for network-based distribution |
| WO2011064675A1 (en) * | 2009-11-30 | 2011-06-03 | France Telecom | Method and system to recommend applications from an application market place |
| CN102130907B (zh) * | 2010-01-20 | 2014-05-07 | 微软公司 | 开发者电话注册 |
| US20110191287A1 (en) * | 2010-01-29 | 2011-08-04 | Spears Joseph L | Systems and Methods for Dynamic Generation of Multiple Content Alternatives for Content Management Systems |
| US8356359B2 (en) | 2010-04-19 | 2013-01-15 | Ericsson Television, Inc. | Licensing rights for media content that follows a subscriber |
| US8775946B2 (en) | 2010-05-07 | 2014-07-08 | Salesforce.Com, Inc. | Resolving information in a multitenant database environment |
| JP5429880B2 (ja) * | 2010-08-10 | 2014-02-26 | Necビッグローブ株式会社 | アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム |
| EP2620003B1 (en) | 2010-09-24 | 2020-06-17 | BlackBerry Limited | Storage of applications and associated digital goods for use in wireless communication devices and systems |
| WO2012056324A1 (en) * | 2010-10-29 | 2012-05-03 | France Telecom | Method and system to recommend applications from an application market place to a new device |
| GB201021875D0 (en) * | 2010-12-23 | 2011-02-02 | Antix Labs Ltd | Methods of distributing software |
| US20120185842A1 (en) * | 2011-01-14 | 2012-07-19 | Verizon Patent And Licensing Inc. | System and method for providing an application installation tool |
| US9715580B2 (en) * | 2011-01-19 | 2017-07-25 | Disney Enterprises, Inc. | Player specific limited licenses |
| US8812979B2 (en) * | 2011-05-11 | 2014-08-19 | General Electric Company | Feature license management system |
| KR101229752B1 (ko) * | 2011-06-01 | 2013-02-05 | 엘지전자 주식회사 | 이동 단말기 및 이동 단말기의 제어 방법 |
| US9137651B2 (en) * | 2011-11-22 | 2015-09-15 | International Business Machines Corporation | Systems and methods for determining relationships between mobile applications and electronic device users |
| US20130318370A1 (en) * | 2011-12-30 | 2013-11-28 | Intel Corporation | Middleware power management |
| EP2654275A1 (en) * | 2012-04-21 | 2013-10-23 | BlackBerry Limited | System and method for transmitting application data between two communication devices |
| JP5939708B2 (ja) * | 2012-04-27 | 2016-06-22 | 楽天株式会社 | コンテンツ提供装置、コンテンツ提供方法、プログラム及び記録媒体 |
| US9203624B2 (en) | 2012-06-04 | 2015-12-01 | Apple Inc. | Authentication and notification heuristics |
| US8707450B2 (en) * | 2012-08-03 | 2014-04-22 | Intel Corporation | Digital rights management (DRM) locker |
| US8990188B2 (en) | 2012-11-30 | 2015-03-24 | Apple Inc. | Managed assessment of submitted digital content |
| US9087341B2 (en) | 2013-01-11 | 2015-07-21 | Apple Inc. | Migration of feedback data to equivalent digital assets |
| CN104240091B (zh) * | 2013-06-20 | 2018-05-11 | 华为终端(东莞)有限公司 | 一种购买应用的方法及终端 |
| US11328269B2 (en) | 2013-12-04 | 2022-05-10 | Stubhub, Inc. | Systems and methods for dynamic event attendance management |
| US10037347B2 (en) * | 2014-03-13 | 2018-07-31 | Infosys Limited | Methods for reconciling transactions and devices thereof |
| RU2634219C2 (ru) * | 2015-02-04 | 2017-10-24 | Общество С Ограниченной Ответственностью "Яндекс" | Способ (варианты) и сервер для загрузки приложения |
| US20160261599A1 (en) * | 2015-03-06 | 2016-09-08 | Sony Computer Entertainment America Llc | Digital management of content assets in the cloud |
| EP4037360A1 (en) * | 2015-08-28 | 2022-08-03 | Convida Wireless, LLC | Service layer dynamic authorization |
| JP6656388B2 (ja) | 2016-02-04 | 2020-03-04 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | アクター・マイグレーション |
| US10880727B2 (en) * | 2016-06-23 | 2020-12-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Method enabling migration of a subscription |
| TWI684112B (zh) * | 2017-10-13 | 2020-02-01 | 遊戲橘子數位科技股份有限公司 | 依據事件於期間內執行特定功能之授權方法 |
| JP6296410B1 (ja) * | 2017-11-06 | 2018-03-20 | 株式会社DataSign | 利用サービス管理装置 |
| CN109460281B (zh) * | 2018-09-17 | 2021-02-26 | 华为技术有限公司 | 云平台的虚拟机管理方法及装置 |
| KR102811377B1 (ko) * | 2023-12-05 | 2025-05-26 | (주)아스트론시큐리티 | 복수의 클라우드 환경에서 api 기능을 위협 행위에 매핑하는 방법 |
Family Cites Families (34)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5956505A (en) * | 1991-12-24 | 1999-09-21 | Pitney Bowes Inc. | Remote activation of software features in a data processing device |
| US20010011253A1 (en) * | 1998-08-04 | 2001-08-02 | Christopher D. Coley | Automated system for management of licensed software |
| US6009401A (en) * | 1998-04-06 | 1999-12-28 | Preview Systems, Inc. | Relicensing of electronically purchased software |
| US6031334A (en) * | 1998-06-17 | 2000-02-29 | Primex Technologies, Inc. | Method and apparatus for selectively distributing power in a thruster system |
| US7073063B2 (en) * | 1999-03-27 | 2006-07-04 | Microsoft Corporation | Binding a digital license to a portable device or the like in a digital rights management (DRM) system and checking out/checking in the digital license to/from the portable device or the like |
| US6889376B1 (en) * | 1999-05-12 | 2005-05-03 | Treetop Ventures, Llc | Method for migrating from one computer to another |
| WO2001069384A2 (en) * | 2000-03-14 | 2001-09-20 | Buzzpad, Inc. | Method and apparatus for forming linked multi-user groups of shared software applications |
| WO2001092993A2 (en) * | 2000-06-02 | 2001-12-06 | Vigilant Systems, Inc. | System and method for licensing management |
| JP2002049436A (ja) * | 2000-08-04 | 2002-02-15 | Matsushita Electric Ind Co Ltd | ソフトウェアダウンロードシステム |
| US7689510B2 (en) * | 2000-09-07 | 2010-03-30 | Sonic Solutions | Methods and system for use in network management of content |
| US8095471B2 (en) * | 2001-05-11 | 2012-01-10 | Cadence Design Systems, Inc. | Software licensing management system |
| US7774772B2 (en) * | 2001-09-28 | 2010-08-10 | Siebel Systems, Inc. | Method and apparatus to perform an application software migration |
| US20030126086A1 (en) * | 2001-12-31 | 2003-07-03 | General Instrument Corporation | Methods and apparatus for digital rights management |
| US7483860B2 (en) * | 2002-03-08 | 2009-01-27 | Pace Anti-Piracy | Method and system for managing software licenses |
| US7496540B2 (en) * | 2002-03-27 | 2009-02-24 | Convergys Cmg Utah | System and method for securing digital content |
| JP2004038519A (ja) * | 2002-07-03 | 2004-02-05 | Hitachi Ltd | プログラム管理方法 |
| JP4217455B2 (ja) * | 2002-10-15 | 2009-02-04 | キヤノン株式会社 | 周辺装置、情報処理方法、および制御プログラム |
| JP3791499B2 (ja) * | 2003-01-23 | 2006-06-28 | ソニー株式会社 | コンテンツ配信システム、情報処理装置又は情報処理方法、並びにコンピュータ・プログラム |
| JP2004303108A (ja) * | 2003-04-01 | 2004-10-28 | Hitachi Ltd | ライセンス移動機能付き端末装置 |
| US20040235521A1 (en) * | 2003-05-01 | 2004-11-25 | Salil Pradhan | Method and system for exchanging digital media |
| CN100507931C (zh) * | 2003-05-15 | 2009-07-01 | 诺基亚公司 | 在数字权利管理系统之间转移内容的方法和设备 |
| KR20040107602A (ko) * | 2003-06-05 | 2004-12-23 | 삼성전자주식회사 | 홈 네트워크 상에서의 컨텐츠 실행을 위한 라이센스 관리시스템 및 방법 |
| US7594275B2 (en) * | 2003-10-14 | 2009-09-22 | Microsoft Corporation | Digital rights management system |
| US20070150609A1 (en) * | 2003-12-19 | 2007-06-28 | Lehrer Danielle L | Method and system to download and track digital material |
| JP2005250881A (ja) * | 2004-03-04 | 2005-09-15 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
| US20050271436A1 (en) * | 2004-06-02 | 2005-12-08 | Justine Worley | Document feeder |
| US8949469B2 (en) * | 2004-08-14 | 2015-02-03 | Telefonaktiebolaget L M Ericsson (Publ) | Method for software program synchronization |
| JP4701733B2 (ja) * | 2005-02-04 | 2011-06-15 | パナソニック株式会社 | 管理サーバ、機器、およびライセンス管理システム |
| US20060179058A1 (en) * | 2005-02-04 | 2006-08-10 | Charles Bram | Methods and systems for licensing computer software |
| US8739059B2 (en) * | 2005-05-16 | 2014-05-27 | Xcira, Inc. | System for generating inspection reports for inspected items |
| US8145571B2 (en) * | 2005-05-25 | 2012-03-27 | Qualcomm Incorporated | Content transfer control for wireless devices |
| JP4659526B2 (ja) * | 2005-06-17 | 2011-03-30 | 株式会社日立製作所 | ストレージシステムにインストールされるプログラムのライセンスを管理する管理計算機、計算機システム及び制御方法 |
| US7805375B2 (en) * | 2005-08-22 | 2010-09-28 | Microsoft Corporation | Digital license migration from first platform to second platform |
| JP4835167B2 (ja) * | 2006-01-24 | 2011-12-14 | 富士ゼロックス株式会社 | ライセンス管理のためのプログラム、システム及び方法 |
-
2007
- 2007-12-18 US US11/959,082 patent/US20080147530A1/en not_active Abandoned
- 2007-12-19 CN CN200780046671.XA patent/CN101563871B/zh not_active Expired - Fee Related
- 2007-12-19 BR BRPI0720581-3A patent/BRPI0720581A2/pt active Search and Examination
- 2007-12-19 KR KR1020117029601A patent/KR20120012981A/ko not_active Withdrawn
- 2007-12-19 WO PCT/US2007/088062 patent/WO2008077087A2/en not_active Ceased
- 2007-12-19 TW TW096148709A patent/TWI387898B/zh not_active IP Right Cessation
- 2007-12-19 JP JP2009543170A patent/JP5420420B2/ja not_active Expired - Fee Related
- 2007-12-19 KR KR1020097015229A patent/KR101129779B1/ko not_active Expired - Fee Related
- 2007-12-19 CA CA2670841A patent/CA2670841C/en active Active
- 2007-12-19 RU RU2009127699/08A patent/RU2439690C2/ru active
- 2007-12-19 EP EP07855258.5A patent/EP2127170A4/en not_active Ceased
-
2013
- 2013-09-17 JP JP2013192450A patent/JP6071820B2/ja active Active
-
2015
- 2015-07-01 JP JP2015132992A patent/JP6147814B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| RU2439690C2 (ru) | 2012-01-10 |
| EP2127170A2 (en) | 2009-12-02 |
| JP6147814B2 (ja) | 2017-06-14 |
| TWI387898B (zh) | 2013-03-01 |
| WO2008077087A3 (en) | 2008-12-24 |
| JP2010514379A (ja) | 2010-04-30 |
| KR20120012981A (ko) | 2012-02-13 |
| CN101563871A (zh) | 2009-10-21 |
| CA2670841A1 (en) | 2008-06-26 |
| WO2008077087A2 (en) | 2008-06-26 |
| JP2015222579A (ja) | 2015-12-10 |
| RU2009127699A (ru) | 2011-01-27 |
| TW200841207A (en) | 2008-10-16 |
| JP6071820B2 (ja) | 2017-02-01 |
| CN101563871B (zh) | 2018-04-03 |
| US20080147530A1 (en) | 2008-06-19 |
| JP2014041621A (ja) | 2014-03-06 |
| CA2670841C (en) | 2016-01-12 |
| JP5420420B2 (ja) | 2014-02-19 |
| KR20090097198A (ko) | 2009-09-15 |
| EP2127170A4 (en) | 2013-08-21 |
| KR101129779B1 (ko) | 2012-06-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0720581A2 (pt) | Transferir programaticamente aplicativos entre aparelhos telefônicos com base em informações de licença | |
| JP5778865B2 (ja) | アプリケーションに機能性を追加するためのサービス | |
| US10158635B2 (en) | System and method for linking pre-installed software to a user account on an online store | |
| CN103207793B (zh) | 链接预安装的软件与在线商店的用户帐户的系统和方法 | |
| US20100235889A1 (en) | Application products with in-application subsequent feature access using network-based distribution system | |
| WO2010121273A2 (en) | Revocation of application on mobile device | |
| TW201145168A (en) | Approaches for installing software using BIOS | |
| AU2010200963A1 (en) | Application products with in-application subsequent feature access using network-based distribution system | |
| CN101855648A (zh) | 开放市场内容分发 | |
| WO2012166640A1 (en) | Apparatus and method of in-application licensing | |
| US20130124696A1 (en) | Application products with in-application subsequent feature access using network-based distribution system | |
| JP2009507270A (ja) | パーソナルインターネットコミュニケータのための検証されたコンピューティング環境 | |
| AU2012258433B2 (en) | Application products with in-application subsequent feature access using network-based distribution system | |
| WO2013188244A2 (en) | Application products with in-application subsequent feature access using network-based distribution system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
| B06T | Formal requirements before examination [chapter 6.20 patent gazette] | ||
| B15K | Others concerning applications: alteration of classification |
Free format text: A CLASSIFICACAO ANTERIOR ERA: H04K 1/00 Ipc: H04W 8/24 (2009.01), H04W 4/24 (2009.01), G06F 21/ |
|
| B11T | Dismissal of application maintained [chapter 11.20 patent gazette] |