Couchbase Mobile

Criação de um aplicativo móvel com o Couchbase - Parte 2

Este blog com várias partes o ajudará a criar um aplicativo móvel de ponta a ponta usando os recursos líderes do setor do Couchbase Lite. Os aplicativos de ponta a ponta, escalonáveis e de nível de produção incluem os seguintes recursos:

    1. Um banco de dados incorporado - o armazenamento de dados localmente reduz as viagens de rede para um banco de dados centralizado para cada atividade no dispositivo. Isso contribui muito para melhorar a experiência do usuário.
    2. Sincronização com outros dispositivos móveis pares e com um servidor centralizado. 
    3. Recursos analíticos avançados, pesquisa de texto completo e aprendizado de máquina no dispositivo.

Como há muito a ser abordado, dividimos este projeto em três partes. A Parte 1 apresenta o processo de criação de um aplicativo móvel que aproveita o Couchbase Lite e o utiliza como um banco de dados incorporado para armazenar dados. A Parte 2 (esta postagem) mostra como executar o Full-Text Search (FTS) no dispositivo. E a parte 3 mostrará o processo de sincronização dos dados com pares e um servidor Couchbase centralizado.

O que é o Couchbase Mobile? 

O Couchbase é um banco de dados em nuvem NoSQL distribuído e premiado. Ele oferece versatilidade, desempenho, escalabilidade e valor financeiro inigualáveis em implantações na nuvem, no local, híbridas, distribuídas e de computação de borda.

As implantações móveis/edge são uma parte essencial do ecossistema digital que o Couchbase Mobile atende. Couchbase Mobile Inclui:

    1. Banco de dados Couchbase Lite incorporado para dispositivos de borda
    2. Sync Gateway de alto desempenho para sincronização ponto a ponto e sincronização centralizada de servidores
    3. Os data centers de borda alimentados pelo Couchbase Server podem ser implantados na nuvem, no local ou em data centers de borda locais.
Couchbase Mobile architectural diagramVisão geral do aplicativo móvel

O código para esse aplicativo de demonstração está disponível em meu Repositório do GitHub do Couchbase Mobile. Faça o download do arquivo Rateit.zip e extraia os arquivos para sua pasta local.

Como alternativa, você pode seguir as instruções deste blog para criar o aplicativo do zero.

A funcionalidade do aplicativo é dividida em três partes 

    1. Enviar solicitações de classificação
    2. Receber solicitações de classificação de outras pessoas
    3. Visualizar a solicitação classificada retornada por outros

Para obter uma compreensão mais profunda dos vários componentes do aplicativo, consulte Parte 1, onde enviamos/recebemos solicitações de classificação.

Adição de pesquisa de texto completo

Neste exemplo, adicionamos um simples pesquisa e o código para adicionar um índice invertido (usado por sistemas de pesquisa) que recebe a entrada do usuário e exibe resultados relevantes.

Building a mobile NoSQL app - screenshot with full-text search added

Primeiros passos: Revisar a documentação do CBLite

Consulte o documentação para entender os vários componentes de um aplicativo de banco de dados Couchbase Lite. Eu crio um banco de dados totalmente novo para esse aplicativo quando ele é chamado pela primeira vez. Como alternativa, o aplicativo também pode usar um banco de dados pré-criado.

As etapas para incorporar o banco de dados podem ser encontradas na seção Documentação do Couchbase Lite. Revise cada uma das seções para aprender a:

    • criar e abrir um banco de dados
    • gravar um documento no banco de dados incorporado
    • escrever consultas para recuperar o documento
    • expirar ou excluir um documento
    • criar índices de pesquisa de texto completo 
    • criar uma expressão de pesquisa FTS
    • criar uma consulta que incorpore a expressão de pesquisa
Pré-requisitos para a criação de aplicativos

Este aplicativo foi desenvolvido para dispositivos Android usando os seguintes pré-requisitos de software e hardware que você precisa conhecer:

    1. Você precisa entender os fundamentos da criação de aplicativos com o Android Studio e da programação em Java.
    2. Este aplicativo de demonstração e as capturas de tela relacionadas são provenientes da criação do aplicativo em um computador macOS.
    3. Usamos (disponível gratuitamente) Android Studio 2020.3 para criar aplicativos móveis para dispositivos Android. 
    4. É usada a versão 3.0.0-beta02 do Couchbase Lite. As bibliotecas necessárias serão incorporadas ao código e não há necessidade de fazer download do software manualmente em seu desktop.

Compreensão do layout

Os arquivos de layout são arquivos XML que descrevem a tela do aplicativo móvel. Por exemplo, activity_main.xml tem o ENVIAR PARA, MENSAGEM, ASSUNTO além das duas visualizações de lista que mostram as solicitações recebidas e as recebidas. 

Ele também define a função a ser invocada quando o CLIQUE PARA ENVIAR SOLICITAÇÃO DE CLASSIFICAÇÃO, SOLICITAÇÕES DE CLASSIFICAÇÃO RECEBIDAS e SOLICITAÇÕES DE CLASSIFICAÇÃO RECEBIDAS são pressionados. O código XML pode ser escrito manualmente ou gerado automaticamente, definindo os atributos na variável atributos seção do designer. Aqui, adicionamos uma entrada de pesquisa ao centro do layout:

Building an app with Couchbase Lite on Android with text search

Revisão do código 

Há um arquivo de código que atualizamos para adicionar a lógica de pesquisa ao aplicativo, Mainactivity.java.

Localizar Mainactivity.java sob o java -> com.example.rateit e cole o seguinte código dentro da classe Atividade principal. O novo código é adicionado ao exemplo anterior na parte 1 - ele é encontrado na linha 8 e nas linhas 12-27 abaixo:

O dados recebidos As funções são ativadas quando SOLICITAÇÕES DE CLASSIFICAÇÃO RECEBIDAS é clicado. Ele exibe todas as solicitações de classificação recebidas, executando uma consulta no banco de dados local para obter os registros. 

Ele permite que você insira uma classificação e cria um registro JSON com a classificação. Quando o registro TAXA é clicado, ele grava a solicitação de volta no banco de dados com um tipo de documento de classificado. Se o DELETE é clicado, o registro é excluído definindo-se o tempo de vida do documento (TTL) para expirar.

As novas seções de código funcionam da seguinte forma:

    1. Primeiro adicionamos um índice FTS se o arquivo de banco de dados não existir, indicando a primeira entrada no aplicativo.
    2. Crie a expressão de pesquisa se o usuário inserir uma string de pesquisa
    3. Crie a consulta usando a expressão de pesquisa e execute-a

Instalação da fiação do layout

O código a seguir precisa ser adicionado a activity_main.xml. Ele adiciona o botão de pesquisa e seu rótulo:

Compilação do código 

Quando todo o código tiver sido atualizado, clique em Build → ReBuild Project. Quando isso for bem-sucedido, clique em Criar → Executar.

Você será solicitado a escolher o emulador na primeira vez que executar o aplicativo, por exemplo, selecione o NEXUS 5X API 25, como eu fiz. Quando a execução estiver concluída, a página principal terá a seguinte aparência:

Building a mobile NoSQL app - screenshot with full-text search added

Agora você implantou com êxito o código no emulador de sua escolha. Quando o usuário digita uma parte da string de URL, os resultados relevantes são exibidos.

Próximas etapas

Esta é a segunda parte da série de blogs, Criação de um aplicativo móvel com o Couchbaseque se concentra em uma solução móvel completa de ponta a ponta. A primeira parte mostrou como criar um aplicativo que usa um banco de dados Couchbase Lite incorporado para armazenar, recuperar e excluir documentos armazenados localmente no dispositivo. 

A Parte 2 adicionou a capacidade de fazer pesquisas baseadas em texto, e a terceira e última parte desta série adicionará a sincronização ponto a ponto e a sincronização com um banco de dados centralizado.

Os principais recursos mencionados nesta postagem incluem:

 

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Sandhya Krishnamurthy, engenheira de soluções sênior, Couchbase

Sandhya Krishnamurthy é tecnóloga com sólida formação em desenvolvimento de banco de dados e experiência em pré-vendas. Ela é artista em tempo parcial, cantora em tempo parcial e mãe em tempo integral.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.