PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Documentos relacionados
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Programação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage

Programação para Android. Aula 06: Activity, menus e action bar

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

AULA 06 CRIAÇÃO DE USUÁRIOS

Manual de Utilização do Zimbra

Procedimento para Configurar ActiveSync Nokia

ADOBE FLASH PLAYER 10.3 Gerenciador de configurações locais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Índice: CMS 3 O que é Content Management System? Clientes 4 O que é o Cliente? 4 Configurando o i-menu/i-view para trabalhar. com o CMS.

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR

MANUAL DO USUÁRIO. para tv TV101

Análise de Dados do Financeiro

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Apostila de Windows Movie Maker

Manual do Usuário Android Neocontrol

Portal Sindical. Manual Operacional Empresas/Escritórios

Tutorial Plone 4. Manutenção de Sites. Universidade Federal de São Carlos Departamento de Sistemas Web Todos os direitos reservados

Manual do Visualizador NF e KEY BEST

5 Mecanismo de seleção de componentes

CAPA Área de utilização para ilustração MANUAL w-vpn

Versão Liberada. Gerpos Sistemas Ltda. Av. Jones dos Santos Neves, nº 160/174

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Guia de início rápido do Powersuite

ANDROID APPLICATION PROJECT

MANUAL DO INSTAR-MAIL 1.0. Pagina de login e senha do Instar-Mail

Procedimentos para Reinstalação do Sisloc

ÍNDICE 1 INTRODUÇÃO ACESSO AOS SISTEMAS DOCUMENTOS MANUTENÇÃO OCR REGISTRO DE DOCUMENTOS GERANDO DOCUMENTOS

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Autoridade Certificadora Notarial CONFIGURAÇÃO DA MÁQUINA DA AR COM WINDOWS VISTA E WINDOWS 7 AC NOTARIAL. Página 1 de 14

Configuração do Ambiente de Trabalho

ArcSoft MediaConverter

TUTORIAL DE UTILIZAÇÃO. Rua Maestro Cardim, cj. 121 CEP São Paulo - SP (11)

Config. do módulo MSA com dispositivos REP.

1- Requisitos mínimos. 2- Instalando o Acesso Full. 3- Iniciando o Acesso Full pela primeira vez

Manual de utilização do Sistema de gerenciamento de inspeção de equipamentos (SGIE) Conteúdo

CERTIFICADO DIGITAL ARMAZENADO NO COMPUTADOR (A1) Manual do Usuário

Professor: Macêdo Firmino Disciplina: Redes de Computadores II

Google Drive. Passos. Configurando o Google Drive

Interfaces Gráficas parte 3

Gerenciador do Token PROTOKEN PRO. Guia de Instalação

MicrovixPOS Requisitos, Instalação e Execução

USB Creator. USBCreator. 1. Requerimentos. Página Imutável Informação Anexos Mais Acções. Ubuntu Brazil Entrar Help

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

Fazer backup de arquivos em um arquivo ou fita

AVG Admin 2012 SQL Server 2005 Express

Aula 03 PowerPoint 2007

Procedimentos para Instalação do SISLOC

Aula 1: Noção Básica e Criação de Tabelas.

Software. Módulo do GDM que funciona em plataforma Web Gerenciamento de Manutenção

Procedimentos para Instalação do Sisloc

Procedimento para Habilitação do e-fisco em Dispositivos Móveis

MANUAL DE UTILIZAÇÃO. Instalação do MV Portaria

Manual SAGe Versão 1.2 (a partir da versão )

2.0.0.X. Storage Client. TecnoSpeed. Tecnologia da Informação. Manual do Storage Client

Programação para Dispositivos Móveis

Manual Administrador - Mídia System

MANUAL DE INSTALAÇÂO E OPERAÇÃO DO SOFTWARE

Programação para Dispositivos Móveis

Guia de atualização. Guia de atualização do SonicOS 6.2

Tecnologia e Informática

2 de maio de Remote Scan

Banco de Dados BrOffice Base

Para que o Educa Mobile seja disponibilizado para os alunos, responsáveis por alunos e/ou professores os passos abaixo devem ser seguidos:

1. NOVIDADES DO NÚMERO ÚNICO DE PROCESSO. 1.1 Resolução nº 65 do CNJ. 1.2 Conversão do Número do Processo. 1.3 Novos ícones

O Windows 7 é um sistema operacional desenvolvido pela Microsoft.

MANUAL DE INSTALAÇÃO DO GERENCIADOR DO TOKEN

Considerações a serem feitas antes da implantação.

Renovação Online de Certificados Digitais A3 (Com Boleto Bancário)

UM NOVO CONCEITO EM HOSPEDAGEM DE DOMÍNIO

Obs: É necessário utilizar um computador com sistema operacional Windows 7.

Aplicativo da Manifestação do Destinatário. Manual

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

ISO/IEC 12207: Gerência de Configuração

OneDrive: saiba como usar a nuvem da Microsoft

Guia Rápido do Usuário - Assinatura Digital

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Google Drive: Acesse e organize seus arquivos

Cia de Tecidos Cedro Cachoeira, Pedido de Compra pela

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

LINX POSTOS AUTOSYSTEM

Orientação a Objetos

Personata Recorder. Manual de Instalação e Configuração

CONFIGURAÇÃO Cobian Backup Programa gratuito e de qualidade para realizar seus backups automáticos

MANUAL DE CONFIGURAÇÃO DO COMPUTADOR PARA ACESSAR O SISTEMA PJE-JT

Manual Comunica S_Line

Utilização do Webmail da UFS

Introdução Instalação... 2

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

1. Desativar o Firewall do computador. Clique em Iniciar Clique em Painel de Controle, como mostra a figura a seguir.

Inicialização Rápida do Novell Vibe Mobile

W o r d p r e s s 1- TELA DE LOGIN

Como configurar s nos celulares. Ebook. Como configurar s no seu celular. W3alpha - Desenvolvimento e hospedagem na internet

Transcrição:

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Persistência de dados com Android Professor: Danilo Giacobo

OBJETIVOS DA AULA Apresentar novas técnicas de persistência em Android. Utilizar a classe SharedPreferences. Conhecer o modelo de persistência PreferenceActivity. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 2

INTRODUÇÃO Hoje é muito difícil pensar na concepção de uma aplicativo, seja ele para a plataforma Web, desktop ou mobile, sem antes imaginar os procedimentos necessários para a persistência de seus dados. Persistência simples: pontuação de um jogo, configurações do aplicativo, volume do jogo, nível de dificuldade, etc. Persistência sofisticada: múltiplas tabelas relacionadas entre si, integração de diferentes fontes de informação, repositório remoto de dados, etc. O armazenamento de dados é um dos pontos principais a ser considerado no desenvolvimento de uma aplicação. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 3

INTRODUÇÃO O surgimento de novas plataformas para o desenvolvimento de aplicativos para a plataforma móvel já concebeu modelos mais sofisticados de persistência. Essas ferramentas facilitam o processo de persistência, dão várias opções ao usuário e podem ser adaptadas a um problema específico. O SQLite é muitas vezes utilizado para armazenar dados simples, como o conteúdo de campos, configurações do aplicativo e pequenas quantidades de dados, o que não é a situação ideal. Por este e outros motivos, o objetivo desta aula é apresentar novas técnicas de persistência, simples e ágeis, que permitem a persistência de pequenas quantidades de dados. São elas: SharedPreferences, PreferenceActivity, Internal Storage, Armazenamento em cache e External Storage. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 4

UTILIZANDO SHARED PREFERENCES O Shared Preferences é um framework Android que permite armazenar dados do tipo primitivo utilizando o formato chave-valor. Ele é recomendado para armazenar as preferências e as configurações de uma aplicação. Para exemplificar o uso desse framework, será desenvolvido um aplicativo simples, onde uma única informação booleana, que corresponde a uma configuração do aplicativo, será armazenada. O código XML da interface gráfica do aplicativo é mostrada no próximo slide. O código Java da Activity que trata esta tela também será mostrada nos próximos slides. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 5

UTILIZANDO SHARED PREFERENCES 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 6

UTILIZANDO SHARED PREFERENCES 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 7

UTILIZANDO SHARED PREFERENCES O código anterior está salvando a informação, mas ainda não está a recuperando. Para mudar tal comportamento, insira o código abaixo ao final do método oncreate(); 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 8

UTILIZANDO PREFERENCE ACTIVITY PreferenceActivity é um sistema de persistência bastante interessante, utilizando principalmente nas telas de configurações dos aplicativos Android. Ela é uma especialização da classe Activity e pode ser utilizada para montar um grupo de configurações, como, por exemplo, o ringtone de um aplicativo, se o aplicativo deve executar o áudio ou não, o grau de dificuldade de um jogo, armazenamento local de usuário e senha, entre outros. A grande vantagem de PreferenceActivity está na facilidade de montar a tela de configuração e a persistência automática dos dados dessa tela, utilizando a SharedPreferences mostrada anteriormente. A classe PreferenceActivity permite mostrar uma hierarquia de Preferences definidas em um arquivo XML, ou ainda, por classes que herdem a referida classe. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 9

UTILIZANDO PREFERENCE ACTIVITY Dentro da hierarquia de classes de Preference, podemos utilizar uma das seguintes classes que correspondem aos componentes visuais de configuração: CheckBoxPreference: é uma caixa de seleção simples, que pode retornar true ou false; ListPreference: mostra uma caixa de seleção popup, onde apenas um item pode ser selecionado. A persistência é realizada utilizando o elemento selecionado na lista; EditTextPreference: mostra uma caixa de diálogo para a digitação de um texto. Retorna uma string; RingtonePreference: mostra um popup com todos os ringtones existentes no dispositivo; PreferenceScreen: conduz o usuário para uma nova tela de preferências; PreferenceCategory: categoria as preferências. Para o exemplo, iremos desenvolver uma tela de configuração, conforme apresentado no próximo slide. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 10

UTILIZANDO PREFERENCE ACTIVITY 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 11

UTILIZANDO PREFERENCE ACTIVITY 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 12

UTILIZANDO PREFERENCE ACTIVITY Para preencher os valores do campo Plataforma um arquivo XML de recurso é utilizado. O seu conteúdo é exibido abaixo: arrays.xml 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 13

UTILIZANDO PREFERENCE ACTIVITY Após o desenvolvimento do XML que representa a interface da tela de configuração, é necessário codificar a classe Java que apresenta essa interface na tela. Seu código poderia ser simplificado da maneira como é apresentado abaixo: 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 14

UTILIZANDO PREFERENCE ACTIVITY Realize as alterações abaixo para que a tela de preferências seja compatível com todas as versões do Android. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 15

UTILIZANDO O ARMAZENAMENTO INTERNO Uma alternativa para o armazenamento de dados na plataforma é o uso do Internal Storage (armazenamento interno), que permite armazenar os dados no sistema de arquivos da memória interna do Android. Para exemplificar seu uso, iremos desenvolver uma interface gráfica simples, composta de uma caixa de texto e um botão Gravar. O objetivo dessa interface é gravar o texto digitado na caixa de texto em um arquivo e, ao iniciar o aplicativo, recuperar o conteúdo e apresentar na própria caixa de texto. O código dessa interface gráfica é apresentado no próximo slide. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 16

UTILIZANDO O ARMAZENAMENTO INTERNO 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 17

UTILIZANDO O ARMAZENAMENTO INTERNO 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 18

ARMAZENANDO DADOS TEMPORÁRIOS Em algumas situações, o programador necessita guardar os dados de forma temporária em um aplicativo. A forma mostrada anteriormente armazena os arquivos de forma permanente no dispositivo. Para utilizar o armazenamento temporário, deve-se utilizar o caminho referenciado pelo método getcachedir(). Esse método de persistência tem uma propriedade muito interessante. Quando dispositivo está com pouco espaço de armazenamento interno livre, o Android pode excluir automaticamente esses arquivos de cache para liberar mais espaço. No entanto não podemos confiar no sistema para limpar arquivos automaticamente. É aconselhável manter uma política de pouca utilização do cache (entre 512 KB e 1MB). 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 19

ARMAZENANDO DADOS TEMPORÁRIOS 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 20

ARMAZENANDO DADOS TEMPORÁRIOS 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 21

ARMAZENANDO DADOS TEMPORÁRIOS 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 22

ARMAZENANDO DADOS TEMPORÁRIOS 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 23

UTILIZANDO O ARMAZENAMENTO EXTERNO Do ponto de vista da programação, o uso do armazenamento externo é muito parecido com o armazenamento interno, porém, tecnicamente esses dois modos de armazenamento são bastante diferentes. Enquanto o primeiro armazena informações internamente, usando os recursos de persistência interno do aparelho, o segundo grava informações nos dispositivos externos de persistência, como cartões SD, MMC, repositórios USB, entre outros. Como se trata de um armazenamento externo, alguns cuidados devem ser tomados na utilização deste recurso: Os arquivos salvos em dispositivos de armazenamento externo não são de propriedade exclusiva da aplicação, ou seja, a segurança desses dados deve ser levada em consideração na gora de sua utilização. Nessa situação, é sempre necessário verificar se a mídia de armazenamento externo está disponível antes de tentarmos utilizá-la. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 24

UTILIZANDO O ARMAZENAMENTO EXTERNO Para apresentar a utilização de External Storage, utilizaremos a mesma interface gráfica apresentada no slide 17, porém, modificando o código da Activity. O código deste exemplo (apresentado no slide seguinte) é muito parecido com a utilização de Internal Storage, diferenciando apenas no código para a escrita e a leitura dos arquivos. Para ler/escrever arquivos em um armazenamento externo, sua aplicação deve possuir permissão para realizar estas operações. Exemplo: 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 25

UTILIZANDO O ARMAZENAMENTO EXTERNO Será necessário também verificar se a mídia externa está disponível. Como exemplo, usaremos os métodos abaixo para verificar a disponibilidade da mídia externa. 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 26

UTILIZANDO O ARMAZENAMENTO EXTERNO 06/10/2015 PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS - PROF. DANILO GIACOBO 27