Requisitos

Conhecimento necessário

  • Noções básicas sobre o AEM Mobile
  • Conhecimento sobre criação e publicação de conteúdo por meio do portal sob demanda
  • Conhecimento sobre JavaScript 

Produtos necessários

  • AEM Mobile

Introdução

Os plug-ins habilitados do Cordova específicos para o Experience Manager Mobile são um conjunto de APIs JavaScript que fornecem acesso a dados específicos relacionados ao aplicativo e ao artigo atual que está sendo exibido. Para utilizar os plug-ins do Cordova para AEM Mobile, os artigos devem ter a opção “Ativar recursos de extensibilidade” nas propriedades do artigo selecionadas no portal de serviços sob demanda ou defina o parâmetro isTrustedContent nos metadados da entidade do artigo para verdadeiro por meio da On-Demand Services API.

Os plug-ins habilitados do Cordova específicos para o AEM Mobile usam o namespace cq.mobile para evitar conflitos com outros plug-ins da tecnologia Cordova. A API consiste em vários módulos, com cada módulo sendo um singleton com qualquer número de métodos e propriedades.

Para obter informações sobre como usar as principais APIs do Cordova, consulte Usar plug-ins do Cordova no AEM Mobile.

Os plug-ins do Cordova são divididos nas categorias Contexto, Dispositivo, Aplicativo e Usuário.

 

Exemplos do Cordova

Vídeo sobre a GetEntity API

Vídeo sobre a GetEntity API

APIs de contexto

Propriedades – contexto

O módulo de contexto fornece acesso às informações de entidade dentro do contexto fornecido.

Disponibilidade

Esse plug-in define o objeto cq.mobile.context global. Ele não estará disponível até depois do evento deviceready.

Nome Tipo Temporário Comentários
cq.mobile.context.collection Entidade1 Não Pode estar vazio (nulo) se o contexto atual for um contexto órfão.
cq.mobile.context.entity Entidade1 Não

Retorna a entidade no escopo.

Escopos:

  • WebView de conteúdo – o conteúdo exibido na página da Web.
  • WebView de sobreposição – o conteúdo ao qual a sobreposição pertence.
  • WebView de banner dinâmico – o banner dinâmico ao qual a página da Web pertence.
cq.mobile.context.nextEntity Entidade1 Não

Pode estar vazio (nulo) se essa for a última entidade.

Observação: a próxima entidade para um banner dinâmico é a entidade que segue o banner dinâmico em uma exibição de navegação, que pode ser diferente da próxima entidade na matriz de elementos para a coleção pai. Isso é diferente do que acontece quando a nextEntity é chamada em um artigo (o qual retornará a ordem da matriz dos elementos filhos de uma coleção pai).

cq.mobile.context.previousEntity Entidade1 Não

Pode estar vazio (nulo) se essa for a primeira entidade.

Para banners dinâmicos, consulte a nota acima para nextEntity.

cq.mobile.context.type String Não Valores possíveis: “article”, “overlay”, “dynamicBanner”

1 A entidade contém os seguintes campos, conforme descrito na próxima seção: id, metadata, rootPathtype

Propriedades – entidade

Nome Tipo Comentários
id String  
metadata Objeto2 Metadados específicos para o tipo de entidade
rootPath String Aplica-se somente a artigos e banners dinâmicos. Representa o caminho raiz da entidade que está em execução no contexto atual. Pode ser usada como uma referência a outros plug-ins para criar um caminho para um recurso contido na entidade. (iOS e Android apenas)
type String Valores possíveis: “collection”, “article”, “banner”, “dynamicBanner”

2 O objeto Metadata conterá um conjunto diferente de campos, dependendo do tipo de entidade, conforme descrito na próxima seção.

Propriedades – metadados

Nome Tipo Suporte para a entidade Comentários
abstract
String Artigo, coleção, banner, banner dinâmico  
accessState String Artigo
Valores possíveis: “free”, “metered” e “protected”
adCategory String Artigo, banner dinâmico
 
adType String Artigo, banner dinâmico
Valores possíveis: “static”, “EFT”
allowDownload Booliano Coleção  
articleText String Artigo
 
author String Artigo
 
authorURL String Artigo
 
availabilityDate String Artigo, coleção, banner, banner dinâmico  
advertiser String Artigo, banner dinâmico
 
category String Artigo, coleção, banner, banner dinâmico  
created String Artigo, coleção, banner, banner dinâmico  
department String Artigo, coleção, banner, banner dinâmico  
entityName String Artigo, coleção, banner, banner dinâmico  
hideFromBrowsePage Booliano Artigo
 
importance String Artigo, coleção, banner, banner dinâmico Valores possíveis: “low”, “normal”, “high”
isAd Booliano Artigo, banner dinâmico
 
isIssue Booliano Artigo
 
keywords Matriz de cadeia de caracteres Artigo, coleção, banner, banner dinâmico  
lateralNavigation Booliano Coleção  
modified String Artigo, coleção, banner, banner dinâmico  
openTo String Coleção Valores possíveis: “browsePage”, “contentView”
productIds Matriz de cadeia de caracteres Coleção  
published String Artigo, coleção, banner, banner dinâmico  
readingPosition String Coleção Valores possíveis: “reset”, “retain”
shortAbstract String Artigo, coleção, banner, banner dinâmico  
shortTitle String Artigo, coleção, banner, banner dinâmico  
socialShareUrl String Artigo, coleção, banner, banner dinâmico  
tapAction String Banner  
title String Artigo, coleção, banner, banner dinâmico  
url String Artigo, coleção, banner, banner dinâmico  
version String Artigo, coleção, banner, banner dinâmico  

Métodos

Nome Argumentos Resposta Comentários
getEntity
(entityName,
entityType, forceUpdate,
success, error)

entityName:
String – o nome da entidade

entityType:
String – o tipo da entidade

forceUpdate:
Booliano– se “verdadeiro”, sempre perguntar ao servidor sobre a versão mais recente

success:
função – o retorno de sucesso

error:
função – o retorno do erro

quando bem-sucedido: um objeto da Entidade

Observação: vazio é um valor de retorno permitido para banners dinâmicos (já que esta não é uma propriedade obrigatória para este tipo de entidade)

falha: objeto cq.mobile.contextError com a propriedade do código preenchida

Suporta artigo, banner, coleção e banner dinâmico

entityName deve corresponder ao nome (não ao título) encontrado nos serviços sob demanda.

entityType deve corresponder aos valores encontrados em Entity.type

Se forceUpdate for falso e a entidade estiver armazenada em cache, essa entidade será retornada. Nem sempre será a versão mais recente dessa entidade.

Se forceUpdate for verdadeiro, mas não for possível se conectar ao servidor, a entidade existente será retornada se disponível no cache. Se nada existir no cache, um erro de rede será retornado.

Se não for possível conectar-se ao servidor e a entidade solicitada não for encontrada (ou ela é restrita e o usuário não está autorizado), a mensagem de erro “Entidade não encontrada” será retornada.

getEntitlementInfo
(entityOrEntityList,
success, error)

entityOrEntityList:
objeto Entity ou EntityList – a entidade ou entidades para recuperar as informações de direito

success:
função – o retorno de sucesso

error:
função – o retorno do erro

quando bem-sucedido:

[
{
“entityName” : <entityName1>,
“isEntitled” : verdadeiro ou falso
},
{
“entityName” : <entityName2>,
“isEntitled” : verdadeiro ou falso
},
]

falha: objeto cq.mobile.contextError com a propriedade preenchida do código

Suporte a coleção

O getEntitlementInfo() retornará apenas informações de direito para coleções. Se um objeto Entity que não faz parte da coleção for transmitido, o erro “Tipo errado de entidade” é retornado.

Se um objeto EntityList for transmitido, apenas o entitlementInfo para objetos da coleção será retornado. Se não houver coleções, a matriz de retorno estará em branco.

A 26ª solicitação (e qualquer solicitação subsequente) a essa API dentro de um período de um minuto retornará o erro “Limite de rede excedido”.

Se o dispositivo estiver offline, todas as informações de direito armazenadas em cache serão retornadas.

Se o dispositivo estiver online e não for possível contatar o serviço de direito, um erro de rede será retornado.

getEntityStatus
(entity, success, error),

entity: O status de download da coleção.

success: função - o retorno de sucesso

error: função - o retorno do erro

sucesso:
{ "entityName" : "isSavable" : "progressPercent" :  "downloadState" : }

falha: objeto cq.mobile.contextError com a propriedade do código preenchida

Suporte a coleção

O getEntityStatus() recupera as informações de status do download para a entidade da coleção.

Informações sobre status:

"entityName": o nome da entidade da coleção.

"isSavable": a coleção deve ser marcada como baixar (salvar) permitido em propriedades de coleção, e deve ter direitos suficientes para retornar um valor verdadeiro.

"progressPercent" : quantidade da coleção atualmente sendo baixada de 0 a 100 por cento. Observação: este valor pode não ser sempre preciso se a informação foi apagada da memória. Consulte os estados de download posteriormente neste documento.

Erro: o getEntityStatus() retornará apenas informações de status de direito para coleções. Se um objeto entidade que não faz parte da coleção for transmitido, não encontrado ou não tiver sido inicializado, um erro é retornado. Consulte a lista de erros posteriormente neste documento.

saveEntity (entity, isSilent, success, error)

entity: A coleção para baixar e salvar.

isSilent: BOOL - (Apenas para Android) se verdadeiro, a entidade é salva no fundo sem nenhuma notificação.

success: função - o retorno de sucesso.

error: função - o retorno do erro.

sucesso: { "rawEntity" : "downloadPercent" : "downloadState" }

falha: erro com a propriedade do código preenchida

Suporte a coleção

O saveEntity() baixará e salvará a entidade de tal coleção. É o equivalente a clicar no botão de download na UI.

Retorno de sucesso: O retorno de sucesso retorna o objeto da entidade sendo salva. Além disso, o retorno de sucesso será chamado toda vez que houver uma atualização de progresso do download. O progresso pode ser acompanhado por meio dos valores de retorno "downloadPercent" e "downloadState". Quando o salvar/baixar for iniciado, o download da coleção deve se tornar o download ativo atual. Se outro download de coleção for iniciado, essa coleção se tornará o download ativo, e a primeira coleção será pausada. A primeira coleção voltará a ser baixada e o estado ficará ativo quando a segunda coleção terminar de baixar.

Erro: o saveEntity() baixará apenas coleções. Se um objeto entidade que não faz parte da coleção for transmitido, se a coleção não for encontrada ou se o download for cancelado, um erro é retornado. Consulte a lista de erros posteriormente neste documento.

archiveEntity (entity, success, error)

entity: Objeto de entidade – a entidade a ser arquivada (deixar de salvar)

success: função - o retorno de sucesso

error: função - o retorno do erro

sucesso: um objeto da entidade

falha: um erro com a propriedade do código preenchida

Suporte a coleção

O archiveEntity() arquivará (o oposto do saveEntity()) a entidade de tal coleção. É o equivalente a clicar no botão de marca de seleção na UI. Se a coleção for completamente baixada e salva, o archiveEntity marcará a coleção como não persistente e passiva de remoção. Caso a coleção esteja baixando ativamente ou esteja na fila para baixar, o download será cancelado e o conteúdo que foi baixado será marcado como removível.

Sucesso: o objeto da entidade arquivado é retornado.

Erro: o archiveEntity() arquivará apenas coleções. Se um objeto entidade que não faz parte da coleção for transmitido ou se a coleção não for encontrada, um erro é retornado.

getSavedEntities (success, error)

success: função - o retorno de sucesso

error: função - o retorno do erro

sucesso: gama de objetos da Entidade

falha: erro com a propriedade do código preenchida

Suporte a coleção

getSavedEntities() retornará uma gama de objetos entidade que estão completamente baixados ou na fila para serem baixados, e serão salvos.

getBackgroundImage
(width, height, success, error)

width: número - a largura solicitada

height: número - a altura solicitada

success: função - o retorno de sucesso

error: função - o retorno do erro

quando bem-sucedido: um URL de arquivo para a imagem de fundo como argumento do retorno success

falha: objeto cq.mobile.contextError com a propriedade preenchida do código

Suporte a coleção

O visualizador do tempo de execução não dimensiona a imagem, em vez disso, ele retornará o tamanho da imagem que estiver mais próximo ao tamanho especificado.

Solicitará a imagem de fundo do serviços sob demanda, se a imagem não for armazenada em cache no dispositivo. Na maioria dos casos, a imagem permanecerá no cache para futuro imediato.

Se houver tentativa de chamada em entidades de tipo diferente de Coleção, o retorno de erro será chamado.

getThumbnailImage
(width, height, success, error)

width: número - a largura solicitada

height: número - a altura solicitada

success: função - o retorno de sucesso

error: função - o retorno do erro

quando bem-sucedido: um URL de arquivo para a imagem em miniatura como argumento do retorno success

falha: objeto cq.mobile.contextError com a propriedade do código preenchida

Suporta artigo, banner, coleção e banner dinâmico

O visualizador do tempo de execução não dimensiona a imagem, em vez disso, ele retornará o tamanho da imagem que estiver mais próximo ao tamanho especificado.

Solicitará a imagem em miniatura do serviços sob demanda, se a imagem não for armazenada em cache no dispositivo. Na maioria dos casos, a imagem permanecerá no cache para futuro imediato.

 

getSocialSharingImage
(width, height, success, error)

width: número - a largura solicitada

height: número - a altura solicitada

success: função - o retorno de sucesso

error: função - o retorno do erro

quando bem-sucedido: um URL de arquivo para a imagem de compartilhamento em redes sociais como argumento do retorno success

falha: objeto cq.mobile.contextError com a propriedade preenchida do código

Suporte a artigos

O visualizador do tempo de execução não dimensiona a imagem, em vez disso, ele retornará o tamanho da imagem que estiver mais próximo ao tamanho especificado.

Solicitará a imagem de compartilhamento em redes sociais dos serviços sob demanda, se a imagem não for armazenada em cache no dispositivo. Na maioria dos casos, a imagem permanecerá no cache para futuro imediato.

Se houver tentativa de chamada em entidades de tipo diferente de Coleção, o retorno de erro será chamado.

getChildren(success, error)

success:
função - o retorno de sucesso

error:
função - o retorno do erro

quando bem-sucedido: um objeto EntityList

falha: objeto cq.mobile.contextError com a propriedade preenchida do código

Suporte a coleção

EntityList conterá todas as entidades-filha não restritas para esta coleção que estão no cache. Se não houver nenhuma, há a tentativa de baixar a primeira página do servidor das filhas.

getContentLocation(success, error)

success: função - o retorno de sucesso

error: função - o retorno do erro

quando bem-sucedido: retorna o objeto ContentLocation

Suporte a artigos

O objeto ContentLocation inclui pageNumber e totalPageCount.
O pageNumber tem base zero, portanto, 0 é a primeira página do artigo. Esses valores refletem a localização física do conteúdo no artigo. Em artigos HTML, totalPageCount é 1 e pageNumber será 0.

Para obter detalhes adicionais sobre essas propriedades de metadados, consulte Integrar sistemas de terceiros ao AEM Mobile.

Propriedades – EntityList

Nome Tipo Comentários
entities Matriz Lista de entidades. Entidades possíveis: “artigo”, “coleção”, “banner”.
hasNextPage Booliano Se “verdadeiro”, há mais entidades na lista. Use o método getNextPage() para recuperar a próxima página de entidades da lista.

Métodos

Nome Argumentos Resposta Suporte para a entidade Comentários
getNextPage
(success, error)

success:
função – o retorno de sucesso

error:
função – o retorno do erro

quando bem-sucedido: a propriedade das entidades conterão itens Entity adicionais e a propriedade do hasNextPage será atualizada

falha: objeto cq.mobile.contextError com a propriedade preenchida do código

Coleção

Se o getNextPage() for chamado quando o hasNextPage for falso, o erro “Não há mais páginas de entidade” será retornado.

As entidades retornadas não poderão ser restritas. Informações restritas podem ter sido alteradas desde a última vez que o getNextPage() foi chamado. Em caso afirmativo, o erro “Página de entidade desatualizada” será retornado. Você precisará chamar o getEntity() na coleção para obter a coleção atualizada e chamar o getChildren() com esta coleção atualizada.

Propriedades – erro de contexto

O cq.mobile.contextError é um objeto de enumeração que define todos os códigos de erro compatíveis com métodos de contexto.

Nome Valor
cq.mobile.contextError.UNKNOWN_ERROR
0
cq.mobile.contextError.INVALID_ARGUMENT_ERROR
10
cq.mobile.contextError.ENTITY_IMAGE_TYPE_NOT_SUPPORTED_FOR_ENTITY_ERROR
11
cq.mobile.contextError.NETWORK_ERROR
20
cq.mobile.contextError.NETWORK_RATE_LIMIT_EXCEEDED_ERROR
21
cq.mobile.contextError.ENTITY_IMAGE_ENTITY_NOT_FOUND_ERROR
40
cq.mobile.contextError.ENTITY_IMAGE_NETWORK_ERROR
41
cq.mobile.contextError.ENTITY_IMAGE_NOT_FOUND_ERROR
50
cq.mobile.contextError.ENTITY_NOT_FOUND_ERROR
61
cq.mobile.contextError.WRONG_ENTITY_TYPE_ERROR
71
cq.mobile.contextError.NO_MORE_ENTITY_PAGES_ERROR
72
cq.mobile.contextError.ENTITY_PAGE_OUT_OF_DATE_ERROR
73
cq.mobile.contextError.ENTITY_OUT_OF_DATE_ERROR 74
cq.mobile.contextError.ENTITY_SAVE_FAILURE 80
cq.mobile.contextError.ENTITY_SAVE_CANCELLED 80

 

Propriedades - Estado de download

O cq.mobile.downloadState é um objeto de enumeração que define todos os códigos de erro compatíveis com métodos de download de coleção.

Nome Valor
cq.mobile.downloadState.NONE
0
cq.mobile.downloadState.DOWNLOAD_PAUSED
1
cq.mobile.downloadState.DOWNLOAD_ACTIVE
2
cq.mobile.downloadState.DOWNLOAD_COMPLETE
3

 

APIs de dispositivo

O módulo do dispositivo fornece o valor do código nativo. Observe que essas propriedades residem em um namespace diferente do plug-in do dispositivo do Cordova (window.cq.mobile.device e window.device).

Disponibilidade

As seguintes propriedades serão adicionadas além dos plug-ins do dispositivo do Cordova.

Propriedades – dispositivo

Nome Tipo Temporário
Comentários
cq.mobile.device.class String Não Valores possíveis: Phone, Tablet (o Windows retorna apenas Tablet, pois telefones não são suportados)
cq.mobile.device.vendorId String Não Somente iOS (consulte IdentifierForVendor no guia do desenvolvedor do iOS)

APIs de aplicativo

Disponibilidade

Esse plug-in define o objeto cq.mobile.application global. Ele não estará disponível até depois do evento deviceready.

Propriedades – aplicativo

Nome Tipo Temporário Comentários
cq.mobile.application.id String Não exemplo: com.adobe.create
cq.mobile.application.pushNotificationToken String Não Token de notificação por push para o dispositivo (o token de dispositivo no iOS, a ID de registro no Android, o visualizador do Windows não implementou a notificação por push, portanto, o valor será “indefinido” até então)
cq.mobile.application.runtimeVersion String Não exemplo: 2015.5.1
cq.mobile.application.version String Não Como a versão do aplicativo é controlada, como 1.0.4
cq.mobile.application.isAppSearchEnabled Booliano Sim
Verifique se a pesquisa está ativada
cq.mobile.application.isSocialSharingEnabled Booliano Sim Verifique se o compartilhamento em redes sociais está ativado

APIs de usuário

Disponibilidade

Esse plug-in define o objeto cq.mobile.user global. Ele não estará disponível até depois do evento deviceready.

Eventos

Nome Comentários
isauthenticatedchanged O evento é ativado quando o usuário altera o estado de autenticação. Os clientes devem consultar o objeto do usuário para o estado mais recente.
authtokenchanged O evento é acionado quando os tokens de autenticação do usuário são alterados. Os clientes devem consultar o objeto do usuário para o estado mais recente.

Propriedades – aplicativo

Nome Tipo Temporário Comentários
cq.mobile.user.authToken String Sim  
cq.mobile.user.isAuthenticated Booliano Sim  

Métodos

Nome Argumentos Resposta Comentários
setAuthToken(authToken, success, error)

authToken: string - o valor solicitado para authToken

success: função - o retorno de sucesso

error: função - o retorno do erro

quando bem-sucedido: chama o retorno do sucesso sem parâmetros

falha: chama o retorno do erro com o conjunto de código cq.mobile.userError

Esta chamada será executada com êxito somente em projetos que tiverem uma configuração de provedor de identidade genérica ou que tiverem apenas um provedor de direito direto (sem provedor de identidade). Caso contrário, um erro de suporte de autenticação será retornado quando essa API for chamada.

Se a chamada do setAuthToken falhar por algum motivo (erro 502, 503 ou 504 é retornado), idealmente, o visualizador fará mais uma tentativa. Se a nova tentativa falhar ou não houver outra tentativa, um erro de rede será retornado.
Qualquer solicitação feita para esta API enquanto uma solicitação anterior estiver a caminho retornará um erro de limite de taxa de rede excedido até que todas as solicitações anteriores retornem com sucesso ou falha.

A 11ª solicitação para esta API dentro de um período de um minuto retornará um erro de limite de taxa de rede excedido, assim como todas as solicitações subsequentes à 11ª, até que um minuto decorra desde a primeira solicitação.

launchSignInUX(error) error: função - o retorno do erro falha: chama o retorno do erro com o conjunto de código cq.mobile.userError

Se a autenticação ocorrer por meio de um servidor de direito, a caixa de diálogo nativa de logon será exibida.

Se a autenticação ocorrer por meio de um provedor de identidade, o URL de autenticação será exibido em uma exibição da Web nos visualizadores do dispositivo, ou ele redireciona para o URL de autenticação no visualizador da Web para desktop.

Se nenhuma autenticação for especificada no projeto, chamar essa API retornará um erro de suporte à autenticação.

Se o usuário já estiver autenticado, um erro de status de autenticação inválido será retornado.

Se o visualizador da Web não puder recuperar as configurações de autenticação, um erro de rede será retornado.

Os usuários ainda podem sair dos visualizadores do dispositivo quando estiverem offline.

signOut(error) error: função - o retorno do erro falha: chama o retorno do erro com o conjunto de código cq.mobile.userError

Desconecta o usuário e atualiza o estado desconectado para ser refletido na interface.

Se nenhuma autenticação for especificada no projeto, chamar essa API retornará um erro de suporte à autenticação.

Se o usuário já estiver autenticado, um erro de status de autenticação inválido será retornado.

Se não puder sair do visualizador da Web, um erro de rede será retornado.

Os visualizadores do dispositivo usarão configurações de autenticação em cache se não for possível recuperar as configurações de autenticação.

refreshSignIn(success, error)

success: função - o retorno de sucesso

error: função - o retorno do erro

quando bem-sucedido: chama o retorno do sucesso sem parâmetros

falha: chama o retorno do erro com o conjunto de código cq.mobile.userError

Use essa API para tentar atualizar o logon do usuário somente quando você determinar que a sessão atual não é mais válida. Essa API atualizará o logon somente em dois casos:

1) O projeto é configurado com um serviço de direito, mas sem autenticação personalizada. A chamada dessa API resultará na chamada do renewAuthToken no serviço de direito.

2) O projeto é configurado com um provedor de identidade OAuth, que fornece um token atualizado. A chamada dessa API tentará usar o token atualizado para atualizar a sessão de logon.

Em ambos os casos, a atualização pode não ser concluída com êxito. Se isso ocorrer, o usuário será desconectado.

Em todos os outros casos, incluindo se essa API for chamada em uma configuração do projeto com um provedor de identidade SAML ou OAuth que não dá suporte à atualização, esta atualização falhará, desconectará o usuário e retornará para a página inicial.

Se nenhuma autenticação for especificada no projeto, chamar essa API retornará um erro de suporte à autenticação.

Se o usuário não for autenticado, um erro de status de autenticação inválido será retornado.

Se os visualizadores estiverem offline e o logon não puder ser atualizado, um erro de rede será retornado.

Os visualizadores do dispositivo usarão configurações de autenticação em cache se não for possível recuperar as configurações de autenticação.

Observação:

Um código “UNKNOWN_ERROR” será retornado quando um erro inesperado ocorrer em qualquer dessas chamadas de API.

 

Propriedades – erro de usuário

O cq.mobile.userError é um objeto de enumeração que define todos os códigos de erro compatíveis com métodos de usuário.

Nome Valor
cq.mobile.userError.UNKNOWN_ERROR
0
cq.mobile.userError.INVALID_ARGUMENT_ERROR
10
cq.mobile.userError.AUTHENTICATION_SUPPORT_ERROR
11
cq.mobile.userError.INVALID_AUTHENTICATION_STATE
12
cq.mobile.userError.NETWORK_ERROR
41
cq.mobile.userError.NETWORK_RATE_LIMIT_EXCEEDED_ERROR
42
cq.mobile.userError.UNAUTHORIZED
43

APIs de direitos

Disponibilidade

Esse plug-in define o objeto de direito global, que fornece métodos relacionados ao direito e à compra. Ele não estará disponível até depois do evento deviceready.

Propriedades – Oferta

Nome Tipo Comentários
productId String A ID de assinatura/do produto que aparece na seção Produtos e assinaturas do Portal.
label String O nome do produto/assinatura que aparece na seção Produtos e assinaturas do Portal. Será nulo se não for configurado pelo usuário.
description String A descrição do produto/da assinatura que aparece na seção Produtos e assinaturas do Portal. Será nulo se não for configurado pelo usuário.
price String O preço retornado da loja correspondente. Será nulo se o produto for grátis.
offerType String Pode ser "assinatura" ou "produto".

Propriedades - Informações de assinatura

Nome Tipo Comentários
subscriptionOffers Matriz Uma gama de objetos em oferta. Será vazio se o usuário tiver uma assinatura ativa.
subscriptionState Objeto Um objeto subscriptionState.

Propriedades - Estado de assinatura

Nome Tipo Comentários
isSubscriber
Booliano Verdadeiro se o usuário foi assinante em algum momento. Observe que subscriptionState.isSubscriber é idêntico a subscriptionState.store.isSubscriber e subscriptionState.integrator.isSubscriber.
isActiveSubscriber
Booliano Verdadeiro se o usuário tem uma assinatura ativa.
store Objeto Objeto da loja que contém o estado de assinatura para a loja de produto.
integrator Objeto Objeto integrador que contém o estado de assinatura para o integrador de direito.

Propriedades – Loja

Nome Tipo Comentários
isSubscriber
Booliano Verdadeiro se o usuário foi assinante em algum momento.
isActiveSubscriber
Booliano Verdadeiro se o usuário tem uma assinatura ativa.
expirationDate Número O carimbo de data e hora em milissegundos desde a data de expiração. Este valor pode ser nulo se a assinatura (da loja ou do integrador de direito) não tiver data de expiração.
subscriptionType String Pode ser "allAccess" or "standard." Válido apenas se isSubscriber for verdadeiro.
id String ID de produto do produto de assinatura na loja.

Propriedades - Integrador

Nome Tipo Comentários
isSubscriber
Booliano Verdadeiro se o usuário foi assinante em algum momento.
isActiveSubscriber
Booliano Verdadeiro se o usuário tem uma assinatura ativa.
expirationDate Número O carimbo de data e hora em milissegundos desde a data de expiração. Este valor pode ser nulo se a assinatura (da loja ou do integrador de direito) não tiver data de expiração.
customData String customData não será definido se o irmão isSubscriber for falso. Se o isSubscriber for verdadeiro, ele poderá ou não ser definido. customData pode ser retornado pelo integrador. É destinado a conter dados que são transparentes para a Adobe e que sejam significantes apenas para o cliente.

Métodos

Nome Argumentos Resposta Comentários
getSubscriptionInfo (success, error)

success: o retorno de sucesso

error: o retorno do erro

sucesso: Um objeto SubscriptionInfo.

Este método retorna as informações de assinatura para a publicação e dispositivo atual. Após 60 solicitações de API feitas em um período de um minuto, qualquer solicitação subsequente a esta API retornará um erro, até que um minuto decorra desde a primeira solicitação.

O visualizador da Web para desktop não oferece suporte a esta API e sempre retorna um erro.

getOffers (collectionName, success, error)

collectionName: string ‑ o nome da coleção

success: função - o retorno de sucesso

error: função - o retorno do erro

sucesso: gama de objetos de oferta

falha: um erro com a propriedade do código preenchida

collectionName deve corresponder ao nome encontrado no Portal.

Se a entidade solicitada não puder ser encontrada, ou se estiver restrita e não visível, um erro é retornado.

Ofertas em cache para a entidade solicitada são retornadas se disponíveis. Caso contrário, uma solicitação de rede para o serviço de direito ocorrerá para pegar as ofertas.

Após 60 solicitações de rede feitas para o serviço de direito em um período de um minuto, qualquer solicitação subsequente a esta API resultará em um erro, até que um minuto decorra desde a primeira solicitação.

O visualizador da Web para desktop não oferece suporte a esta API e sempre retorna um erro.

purchaseOffer (productId, success, error)

ID do produto: string - A ID do produto da oferta de compra

success: função - o retorno de sucesso

error: função - o retorno do erro

sucesso: uma solicitação de compra é iniciada

falha: chama o código de erro

Este método inicia uma solicitação de compra.
restorePurchases (successCallback, errorCallback)

success: função - o retorno de sucesso

error: função - o retorno do erro

sucesso: uma solicitação de compra de restauração é iniciada

falha: chama o código de erro

Este método iniciará a restauração de compras anteriores para o usuário.

Após 5 solicitações de API serem feitas em um período de um minuto, qualquer solicitação subsequente a esta API retornará um erro, até que um minuto decorra desde a primeira solicitação.

Erros ‑ Direito

O cq.mobile.entitlementError é um objeto de enumeração que define todos os códigos de erro compatíveis com métodos de direito.

Nome Valor
cq.mobile.entitlementError.UNKNOWN_ERROR 0
cq.mobile.entitlementError.INVALID_ARGUMENT_ERROR
10
cq.mobile.entitlementError.ENTITY_IMAGE_TYPE_NOT_SUPPORTED_FOR_ENTITY_ERROR 11
cq.mobile.entitlementError.INVALID_AUTHENTICATION_STATE 12
cq.mobile.entitlementError.NETWORK_ERROR 20
cq.mobile.entitlementError.NETWORK_RATE_LIMIT_EXCEEDED_ERROR 21
cq.mobile.entitlementError.ENTITY_IMAGE_ENTITY_NOT_FOUND_ERROR
40
cq.mobile.entitlementError.ENTITY_IMAGE_NETWORK_ERROR 41
cq.mobile.entitlementError.ENTITY_IMAGE_NOT_FOUND_ERROR 50
cq.mobile.entitlementError.ENTITY_NOT_FOUND_ERROR 61
cq.mobile.entitlementError.WRONG_ENTITY_TYPE_ERROR 71
cq.mobile.entitlementError.NO_MORE_ENTITY_PAGES_ERROR 72
cq.mobile.entitlementError.ENTITY_PAGE_OUT_OF_DATE_ERROR 73
cq.mobile.entitlementError.ENTITY_OUT_OF_DATE_ERROR 74
cq.mobile.entitlementError.ENTITY_SAVE_FAILURE 80
cq.mobile.entitlementError.ENTITY_SAVE_CANCELLED 81

Log de alterações

16 de março de 2017

Informações sobre API adicionadas para o download de entidades de coleção.

Informações sobre API adicionadas para compra e direito.

10 de janeiro de 2017

Adicionados cq.mobile.application.isAppSearchEnabled e cq.mobile.application.isSocialSharingEnabled (consulte a seção Aplicativo)

9 de agosto de 2016

Adicionado getLocationContent (consulte a seção Contexto)

30 de junho de 2016

Adicionado setAuthToken (consulte a seção Usuário)

23 de junho de 2016

Adicionada a capacidade de atravessar a estrutura da coleção dos serviços sob demanda:

  • Atualizar metadados da entidade com suporte para banners (consulte a guia Contexto).
  • Adicionado o getEntity() para solicitar a entidade de artigo/banner/coleção (consulte a guia Contexto).
  • Adicionado o getEntitlementInfo() para solicitar informações de direito para a coleção (consulte a guia Contexto).
  • Adicionado o getChildren() para solicitar a lista de entidades-filha imediatas para a coleção (consulte a guia Contexto).
  • Adicionado o getNextPage() para solicitar a próxima página de entidades da lista retornada do getChildren() (consulte a guia Contexto).
  • Adicionados objetos de enumeração para definir códigos de erro para os métodos usados em cq.mobile.context e cq.mobile.user (consulte as guias Contexto e Usuário).

 

Esta obra está licenciada sob uma licença não adaptada da Creative Commons Attribution-Noncommercial-Share Alike 3.0  As publicações do Twitter™ e do Facebook não são cobertas pelos termos do Creative Commons.

Avisos legais   |   Política de privacidade online