Armazenamento Persistente de Dados
|
|
|
- Anna Alana Brunelli Braga
- 10 Há anos
- Visualizações:
Transcrição
1 Programação para a Plataforma Android Aula 10 Armazenamento Persistente de Dados Como armazenar as opções de preferência de uma aplicação? Como tocar músicas em uma a@vidade Android? Como armazenar dados usando Bundles? Como usar o sistema de arquivos do aparelho celular? Como manipular arquivos de texto em Java? Como armazenar objetos diretamente em arquivos?
2 Armazenamento Permante Dados armazenados permanentemente não desaparecem quando a aplicação termina sua execução. Em que situações precisamos de armazenamento persistente? Pense em aplicações Android que usam persistência.
3 Armazenamento Permante Dados armazenados permanentemente não desaparecem quando a aplicação termina sua execução. Guardar a lista de compras; Armazenar a lista de endereços; Lembrar a posição das peças de xadrez no tabuleiro; Armazenar as opções escolhidas para uma aplicação; etc
4 Muitas formas de Armazenamento A API de preferências Estados de Bundles Arquivos de armazenamento em memória flesh Etc
5 Preferências Nosso Sudoku possui um menu de opções. Você lembra como isso foi implementado?
6 Sudoku.java Preferências public boolean item) { switch (item.getitemid()) { case R.id.se^ngs: startac@vity(new Intent(this, Prefs.class)); return true; return false; O que esse método está fazendo? Modifique a classe Prefs para que ela armazene e retorne as preferências escolhidas pelo usuário. public class Prefs extends PreferenceAc@vity protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); addpreferencesfromresource(r.layout.se^ngs); Prefs.java
7 se^ngs.java Preferências <?xml version="1.0" encoding="uf 8"?> <PreferenceScreen xmlns:android="hjp://schemas.android.com/apk/res/android"> <CheckBoxPreference android:key="music" android:defaultvalue="true" /> <CheckBoxPreference android:key="hints" android:defaultvalue="true" /> </PreferenceScreen> public class Prefs extends protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); addpreferencesfromresource(r.layout.se^ngs); Prefs.java
8 Armazenamento de Preferências public class Prefs extends { private final String OPT_MUSIC = "music"; private sta@c final boolean OPT_MUSIC_DEF = true; private sta@c final String OPT_HINTS = "hints"; private sta@c final boolean OPT_HINTS_DEF = true;... public sta@c boolean getmusic(context context) { return PreferenceManager.getDefaultSharedPreferences (context).getboolean(opt_music, OPT_MUSIC_DEF); public sta@c boolean gethints(context context) { return PreferenceManager.getDefaultSharedPreferences (context).getboolean(opt_hints, OPT_HINTS_DEF); Como dá-se a comunicação entre o que entra nesse banco de dados e o que sai dele? Como aplicar essas preferências? Prefs.java
9 Music.java Tocar ou não tocar uma música? public void play(context context, int resource) { stop(context); mp = MediaPlayer.create(context, resource); mp.setlooping(true); mp.start(); public sta@c void play(context context, int resource) { stop(context); if (Prefs.getMusic(context)) { mp = MediaPlayer.create(context, resource); mp.setlooping(true); mp.start(); A class Prefs comporta-se como um singleton. E como habilitar ou desabilitar as dicas?
10 PuzzleView.java Removendo as dicas if (Prefs.getHints(getContext())) { Paint hint = new Paint(); int c[] = { getresources().getcolor(r.color.puzzle_hint_0), getresources().getcolor(r.color.puzzle_hint_1), getresources().getcolor(r.color.puzzle_hint_2), }; Rect r = new Rect(); for (int i = 0; i < 9; i++) { for (int j = 0; j < 9; j++) { int moveslew = 9 game.getusedtiles(i, j).length; if (moveslew < c.length) { getrect(i, j, r); hint.setcolor(c[moveslew]); canvas.drawrect(r, hint);
11 um Jogo A opção continue Modifique a nossa implementação de Sudoku para que seja possível interromper e continuar um jogo interrompido. Seria possível usar a API de preferências? No fundo, tratase de uma tabela hash persistente!
12 Game.java Como um jogo novo é private int[] getpuzzle(int diff) { String puz; switch (diff) { case DIFFICULTY_HARD: puz = hardpuzzle; break; case DIFFICULTY_MEDIUM: puz = mediumpuzzle; break; case DIFFICULTY_EASY: default: puz = easypuzzle; break; return frompuzzlestring(puz); Podemos adicionar uma nova opção, para que seja possível escolhermos o puzzle a partir da tabela de preferências! Como fazer isso?
13 private int[] getpuzzle(int diff) { String puz; switch (diff) { case DIFFICULTY_CONTINUE: puz = getpreferences(mode_private).getstring(pref_puzzle, easypuzzle); break; case DIFFICULTY_HARD: puz = hardpuzzle; break; Game.java case DIFFICULTY_MEDIUM: puz = mediumpuzzle; break; case DIFFICULTY_EASY: default: puz = easypuzzle; break; return frompuzzlestring(puz); Que constante é essa? E como colocar o estado do tabuleiro na tabela de preferências? Procure pensar nos eventos necessários para essa tarefa Quando o puzzle deve ser salvo?
14 Game.java onpause public class Game extends { private final String PREF_PUZZLE = "puzzle" protected void onpause() { super.onpause(); Log.d(TAG, "onpause"); Music.stop(this); Vocês lembram-se dessa função? getpreferences(mode_private).edit().putstring(pref_puzzle, topuzzlestring(puzzle)).commit();
15 Game.java topuzzlestring private String topuzzlestring(int[] puz) { StringBuilder buf = new StringBuilder(); for (int element : puz) { buf.append(element); return buf.tostring(); E como podemos começar um jogo que havia sido interrompido? Em outras palavras, como tratar o botão continue? Onde está o código que lida com eventos de clique dessa atividade?
16 Eventos de Clique Sudoku.java public void onclick(view v) { switch (v.getid()) { case R.id.about_bujon: Intent i = new Intent(this, About.class); startac@vity(i); break; case R.id.new_bujon: opennewgamedialog(); break; case R.id.exit_bujon: finish(); break; E como alterar essa classe para que o botão continue possa funcionar?
17 Eventos de Clique Sudoku.java public void onclick(view v) { switch (v.getid()) { case R.id.conRnue_buSon: startgame(game.difficulty_continue); break; case R.id.about_bujon: Intent i = new Intent(this, About.class); startac@vity(i); break; case R.id.new_bujon: opennewgamedialog(); break; case R.id.exit_bujon: finish(); break; Ei, mas está faltando associar o evento ao botão!
18 Botões e public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); View aboutbujon = findviewbyid(r.id.about_bujon); aboutbujon.setonclicklistener(this); View newbujon = findviewbyid(r.id.new_bujon); newbujon.setonclicklistener(this); View exitbujon = findviewbyid(r.id.exit_bujon); exitbujon.setonclicklistener(this); View conrnuebuson = findviewbyid(r.id.conrnue_buson); conrnuebuson.setonclicklistener(this);
19 Orientação da Tela Se virarmos a tela em modo paisagem, nossa aplicação perde a informação sobre onde estava o cursor: Como resolver esse problema?
20 Estado da Visão Toda visão possui um estado: posição do cursor, números, etc. Quando trocamos a visão, o método ondraw da visão é invocado. Por que a posição dos números é salva entre modo retrato e paisagem? E como podemos agora salvar a posição do cursor?
21 Bundles Bundles são tabelas usadas para passar dados entre Podem ser diferentes Ou a mesma a@vidade, no passado e no futuro. Nesse caso, toda a@vidade usa dois métodos: protected Parcelable onsaveinstancestate() protected void onrestoreinstancestate (Parcelable state)
22 Salvando Estados protected Parcelable onsaveinstancestate() { Parcelable p = super.onsaveinstancestate(); Bundle bundle = new Bundle(); bundle.putint(selx, selx); bundle.putint(sely, sely); bundle.putparcelable(view_state, p); return bundle; É claro: convém não esquecer as constantes E como seria o método que restaura o estado da atividade?
23 Restaurando Estados protected void onrestoreinstancestate(parcelable state) { Log.d(TAG, "onrestoreinstancestate"); Bundle bundle = (Bundle) state; select(bundle.getint(selx), bundle.getint(sely)); super.onrestoreinstancestate(bundle.getparcelable(view_state)); return; Como foi amarrada essa ligação entre o estado salvo e o estado restaurado? Falta, agora, encontrar um identificador para a visão.
24 public class PuzzleView extends View { private starc final int ID = 42;... public PuzzleView(Context context) { super(context); this.game = (Game) context; setfocusable(true); setid(id); setfocusableintouchmode(true);... E porque não colocamos o identificador de PuzzleView em um arquivo XML?
25 Preservando o Estado da A@vidade Notem que apenas a posição do cursor está sendo salva. Os números no tabuleiro não estão sendo salvos. Consertar essa lacuna fica como um exercício. Mas isso não é fácil: a visão não manipula puzzles!
26 O Sistema de Arquivos Android OS é Linux. E portanto, possui um sistema de arquivos. Arquivos podem ser manipulados pelas classes na biblioteca java.io. Cada aplicação possui seu próprio espaço. Normalmente data/data/nome_pacote E a classe Context possui métodos para manipular os arquivos armazenados nesse espaço.
27 Manipulação de Arquivos A classe Context possui diversos métodos para manipular arquivos: deletefile: apaga um arquivo e retorna verdadeiro caso a deleção tenha acontecido. filelist: retorna um arranjo de strings com o nome dos arquivos no espaço da aplicação. openfileinput: abre um arquivo para leitura. openfileoutput: abre um arquivo para escrita.
28 Arquivos de Texto Podemos armazenar de arquivo como recursos crus, em res/raw/ Exibição de texto Implemente uma classe que abra, leia e exiba o conteúdo de um arquivo de texto armazenado em res/raw/file1.txt Como fazer isso em Java, versão desktop? E haveria alguma diferença em Android? Como deveria ser o layout dessa aplicação?
29 ScrollLayout Como ler o conteúdo do arquivo? <?xml version="1.0" encoding="u5 8"?> <LinearLayout xmlns:android="h9p://schemas.android.com/apk/res/android" android:orienta@on="verbcal" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ScrollView xmlns:android= "h9p://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dip"> <TextView android:id="@+id/textview" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </ScrollView> </LinearLayout>
30 private String readtext() { InputStream inputstream = getresources().openrawresource(r.raw.file1); ByteArrayOutputStream bytearrayoutputstream = new ByteArrayOutputStream(); int i; try { i = inputstream.read(); while (i!= 1) { bytearrayoutputstream.write(i); i = inputstream.read(); inputstream.close(); catch (IOExcep@on e) { e.printstacktrace(); return bytearrayoutputstream.tostring(); Lendo um Arquivo Algum problema com esse método?
31 Bufferização private String gettextfromfile() { StringBuffer contents = new StringBuffer(); try { InputStream rawres = getresources().openrawresource(r.raw.file1); BufferedReader input = new BufferedReader(new InputStreamReader(rawRes)); String line = null; while ((line = input.readline())!= null) { contents.append(line + '\n'); catch (IOExcep@on ex) { ex.printstacktrace(); return contents.tostring(); Arquivos podem ser lidos ou escritos de várias formas diferentes. Como usar esse método?
32 Decoradores private String gettextfromfile() { StringBuffer contents = new StringBuffer(); try { InputStream rawres = getresources().openrawresource(r.raw.file1); BufferedReader input = new BufferedReader(new InputStreamReader(rawRes)); String line = null; while ((line = input.readline())!= null) { BufferedReader intercepta todos os métodos de contents.append(line + '\n'); InputStream, impondo sobre esses métodos novos comportamentos. Esse padrão de projetos catch (IOExcep@on ex) { ex.printstacktrace(); chama se decorador. return contents.tostring(); Em que outras situações Decoradores são usados?
33 Lendo e exibindo arquivos public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); TextView text = (TextView) findviewbyid(r.id.textview); text.settext(gettextfromfile());
34 Exercícios: Contraste Modifique a aplicação Sudoku, para que a visão do jogo tenha dois modos: contraste e sem contraste. A visão com contraste deve usar um fundo branco, e linhas maiores negras. Essa opção também deve ser definida no layout de preferências, via um botão de seleção.
35 Exercícios: Contraste Modifique a aplicação Sudoku, para que a visão do jogo tenha dois modos: contraste e sem contraste. A visão com contraste deve usar um fundo branco, e linhas maiores negras. Essa opção também deve ser definida no layout de preferências, via um botão de seleção. Como deve ser o novo layout de preferências?
36 se^ngs.xml <?xml version="1.0" encoding="uf 8"?> <PreferenceScreen xmlns:android="hjp://schemas.android.com/apk/res/android"> <CheckBoxPreference android:key="music" android:defaultvalue="true" /> <CheckBoxPreference android:key="hints" android:defaultvalue="true" /> <CheckBoxPreference android:key="contrast" android:defaultvalue="true" /> </PreferenceScreen> Precisamos alterar strings.xml
37 strings.xml <?xml version="1.0" encoding="uf 8"?> <resources>... <string <string name="contrast_summary"> Aumentar o contraste da tela </string>... </resources> E como fica a classe Prefs.java?
38 Prefs.java public class Prefs extends { // names and default values private final String OPT_CONTRAST = "contrast"; private sta@c final boolean OPT_CONTRAST_DEF = true;... Precisamos agora aplicar o protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); addpreferencesfromresource(r.layout.se^ngs); public sta@c boolean getcontrast(context context) { return PreferenceManager.getDefaultSharedPreferences(context).getBoolean( OPT_CONTRAST, OPT_CONTRAST_DEF);
39 Escolhendo novas cores O modo de contraste deve usar linhas grandes negras, e fundo branco:
40 Escolhendo novas cores O modo de contraste deve usar linhas grandes negras, e fundo branco: <?xml version="1.0" encoding="uf 8"?> <resources>... <color name="puzzle_big_lines">#ff000000</color> <color name="puzzle_light_background">#ffffffff</color> </resources> E como, agora, usar as preferências?
41 PuzzleView.java if (Prefs.getContrast(getContext())) { background.setcolor(getresources().getcolor(r.color.puzzle_light_background)); else { background.setcolor(getresources().getcolor(r.color.puzzle_background)); if (Prefs.getContrast(getContext())) { dark.setcolor(getresources().getcolor(r.color.puzzle_big_lines)); else { dark.setcolor(getresources().getcolor(r.color.puzzle_dark));
Programação para a Plataforma Android Aula 7. Mul$mídia
Programação para a Plataforma Android Aula 7 Mul$mídia Como executar aplicações que contêm músicas? Como abrir vídeos em Android? Quais formatos de músicas são aceitos? Quais formatos de vídeo? Como o$mizar
Comunicação entre A0vidades
Programação para a Plataforma Android Aula 8 Comunicação entre A0vidades Como invocar uma a0vidade a par0r de outra? Como descrever um serviço em Android? Como duas a0vidades se comunicam? Como abrir uma
Programação para a Plataforma Android Aula 11. Banco de Dados
Programação para a Plataforma Android Aula 11 Banco de Dados Introdução a linguagem SQL O banco de dados SQLite Como criar e manipular um banco de dados em Android Como apresentar dados na tela do aparelho
Provedores de Conteúdo
Programação para a Plataforma Android Aula 12 Provedores de Conteúdo O que são provedores de conteúdo? Como ler dados de outras aplicações? Como iden@ficar recursos de forma única? Como deixar dados disponíveis
Programação para Dispositivos Móveis
Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 05 Programando formularios, activities e intents. Dalton Martins [email protected] São Paulo, Março, 2012
Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android. Realização de Dinâmica Hands- On para Construção de uma App Android
Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android Realização de Dinâmica Hands- On para Construção de uma App Android Dr. Eduardo Manuel de Freitas Jorge, PMP Realização de Dinâmica
Programação para Android. Aula 06: Activity, menus e action bar
Programação para Android Aula 06: Activity, menus e action bar Activity A classe Activity é quem gerencia a interface com o usuário. Ela quem recebe as requisições, as trata e processa. Na programação
Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ
Introdução ao Android SECAP 2014 Prof. Rone Ilídio - UFSJ O que é o Android? Sistema operacional móvel, baseado numa versão modificada do Linux. Código aberto: qualquer pessoa pode baixar e modificar Máquina
Programa de Dispositivos Móveis
Aula 02 - Exercício Programa de Dispositivos Móveis PDM - Aula02 - Exercício- Ver 02-04/06/2014 08:56 Criando Aplicação Android (BasicView) Vamos continuar a criar interfaces gráficas (UI) básicas com
Módulo 4 - Interface Gráfica Gerenciadores de Layout. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ
Módulo 4 - Interface Gráfica Gerenciadores de Layout Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Classe View Todos os componente gráficos são filhos de View Para se criar um novo componente
Android Banco de Dados. Ivan Nicoli
Android Banco de Dados Ivan Nicoli SQLite O Android tem suporte ao SQLite (http://www.sqlite.org), um leve e poderoso banco de dados. Cada aplicação pode criar um ou mais banco de dados, que ficam localizados
Programação para a Plataforma Android Aula 16. Fragmentos
Programação para a Plataforma Android Aula 16 Fragmentos O que são fragmentos Como combinar múl?plas visões em uma única tela? Como lidar com telas de tamanhos variados? Como modificar a visão de uma a?vidade
Programação para Dispositivos Móveis
Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 06 Controlando o fluxo de eventos e passando parametro para Activities. Dalton Martins [email protected]
Programação para Android. Aula 08: Persistência de dados SQL
Programação para Android Aula 08: Persistência de dados SQL Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados. Para guardar informações de forma persistente
Log, Ciclo de Vida e Diálogos. Prof. Fellipe Aleixo ([email protected])
Log, Ciclo de Vida e Diálogos Prof. Fellipe Aleixo ([email protected]) Conteúdo Log Classe android.u:l.log LogCat Ciclo de Vida Pilha de a:vidades Métodos e estados da a:vidade Instance State
Comunicação via Sockets
Programação para a Plataforma Android Aula 9 Comunicação via Sockets O que são sockets? O que são data access objects? Como criar servidores de serviços distribuídos? Aplicações mulb threading simples
Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler
Desenvolvimento para Android Prá9ca 2 Prof. Markus Endler Criando o primeiro projeto Android Com o ambiente de desenvolvimento preparado, vá em File - > New - > Project... Na janela que abrir, selecione
Programação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage
Programação para Android Aula 07: Persistência de dados Shared Preferences, Internal e External Storage Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados.
Módulo 2 - Novas Activities Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ
Módulo 2 - Novas Activities Android Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Inserindo a segunda activity Para inserir uma nova activity basta clicar com o botão direito sobre o pacote,
Programação de Dispositivos Móveis
Aula 07 Programação de Dispositivos Móveis Interface Gráfica ListView com ArrayAdapter Um elemento muito utilizado em aplicativos é a ListView, com ela pode-se criar uma lista de objetos. A partir dos
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
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.
Android Layout Manager. Ivan Nicoli
Android Layout Manager Ivan Nicoli Classe View A classe android.view.view é a classe mãe de todos os componentes visuais do Android. Qualquer desenvolvedor pode criar seu próprio componente herdando a
Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho
Programação para Android Aula 10: Acesso a câmera, sms e recursos do aparelho Objetivos Nesta aula iremos aprender como invocar os recursos do aparelho: Fazer chamadas telefônicas Enviar SMS Utilizar a
Introdução ao Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ
Introdução ao Android Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ O que é o Android? Sistema operacional móvel, baseado numa versão modificada do Linux. Código aberto: qualquer pessoa pode
Desenvolvimento com Android Studio. Aula 02 Widgets, Manipulação de Dados e Programação de Eventos
Desenvolvimento com Android Studio Aula 02 Widgets, Manipulação de Dados e Programação de Eventos Widgets TextView O Widget TextView é utilizado para apresentar um texto não editável na tela. Qualquer
Analisar os sistemas operacionais apresentados na figura e responder as questões abaixo: Identificar
Projeto Integrador Sistemas Operacionais Prof.ª Lucilia Ribeiro GTI 3 Noturno Grupo: Anderson Alves da Mota. André Luiz Silva. Misael bezerra dos santos. Sandro de almeida silva. Analisar os sistemas operacionais
Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
Programação para Android. Aula 05: Estilos e temas; galeria de imagens
Programação para Android Aula 05: Estilos e temas; galeria de imagens Objetivos Aplicar estilos e temas Criar uma galeria de imagens com o widget Gallery Parte 01: Estilos e temas Interface de Usuários
Android: Ciclo de vida da Activity
Se sua aplicação estiver em execução e o celular receber uma ligação? O que acontecerá com seu aplicativo? Quais métodos serão executados e em qual ordem? Para respondermos essas perguntas e entendermos
Desenvolvimento Android. http://www.larback.com.br
Desenvolvimento Android http://www.larback.com.br Introdução ao Android O Android é a resposta da Google ao mercado crescente de dispositivos móveis. É uma nova plataforma de desenvolvimento baseado no
Desenvolvimento para Android Prá3ca 3. Prof. Markus Endler
Desenvolvimento para Android Prá3ca 3 Prof. Markus Endler Exercício 3.1 Solicitando permissão para abrir uma página Web ü Criaremos uma Ac.vity com um EditText (para entrada de uma URL), um Bu?on e uma
Programação em Java para a Plataforma Android AULA 1. Primeiros Passos
Programação em Java para a Plataforma Android AULA 1 Primeiros Passos O que é Android Como é o desenvolvimento de aplicações para esse ambiente O que é preciso para começar a programar ABvidades, o início
Programação de Dispositivos Móveis
Aula 04 Programação de Dispositivos Móveis A Classe Activity É obrigatório que cada activity do projeto esteja declarada no arquivo AndroidManisfest.xml, caso contrário não é possível utilizá-la. Para
Programação para Dispositivos Móveis
Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 04 Anatomia de uma aplicação Android Dalton Martins [email protected] São Paulo, Fevereiro, 2012 24/02/12
Prof. Jhonatan Fernando
Prof. Jhonatan Fernando É uma classe gerenciadora de UI. É possível informar qual layout (arquivo xml) que será carregado para uma determinada activity. O método responsável por informar qual layout será
Android Core. Felipe Silveira felipesilveira.com.br. Aula 6
Android Core Felipe Silveira felipesilveira.com.br Aula 6 Aplicações I Desenvolvimento de Aplicações Android SDK SDK https://developer.android.com/sdk Android SDK Android SDK: Eclipse + ADT plugin + Android
Programa de Dispositivos Móveis
Aula 02 Programa de Dispositivos Móveis A Classe Activity A classe Actvity é similar a classe JFrame do Swing representa basicamente uma tela. Quase todas as atividades interagem com o usuário, então ela
PROPOSTA DE UM PADRÃO DE PROJETO PARA ANDROID UTILIZANDO A WEB
PROPOSTA DE UM PADRÃO DE PROJETO PARA ANDROID UTILIZANDO A WEB Aluno: Pedro Paulo S. Freitas Orientador: Ricardo Augusto Rabelo Sumário Introdução Motivação e Justificativa Trabalhos relacionados Plataforma
Programação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
Capítulo 07: Câmera e Arquivos
Capítulo 07: Câmera e Arquivos Instrutor Programador desde 2000 Aluno de doutorado Mestre em informática pelo ICOMP/UFAM Especialista em aplicações WEB FUCAPI [email protected] sites.google.com/site/marcio
Login. Criar uma nova Activity. Login. Luiz Eduardo Guarino de Vasconcelos
Criar uma nova Activity Observe no AndroidManifest.xml que foi criada a segunda Activity. Nesse arquivo: - defini-la como a primeira a ser executada (recortar o intent-filter da MainActivity para a Activity)
JSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
ANDROID APPLICATION PROJECT
Criando um programa Abrindo o programa Eclipse, clique na opção [FILE], depois em [NEW], selecione a opção [PROJECT], uma janela de opção do tipo de projeto irá se abrir, escolha [ANDROID] logo depois
AULA 2. Minicurso PET-EE UFRN
AULA 2 Minicurso PET-EE UFRN Agora iremos mostrar o passo-a-passo de como criar um projeto no Android Studio. 1. No Android Studio, crie um New Project. 2. Em Configure your new project, você deve preencher
Seu App na TV: Desenvolvimento para ChromeCast
Seu App na TV: Desenvolvimento para ChromeCast Ivan de Aguirre! [email protected]! Twitter: IvAguirre! G+: plus.google.com/+ivanaguirrebr Sender App: Sender App: Android Sender App: Android ios Sender
Interfaces Gráficas parte 3
parte 3 (Listview, AlertDialog e ActionBar) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação
insfcanceof new public switch transient while byte continue extends for int null
Palavras -chave de JAV A abstract catch do final implements long private static throw void boolean char double finally import native protected super throws volatile break class float insfcanceof new public
Repeater no GASweb. Regiões
Repeater no GASweb Por: Rodrigo Silva O controle de servidor Repeater é um container básico que permite a você criar uma lista de qualquer informação que deseja em uma página Web. Ele não tem uma aparência
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Componentes Visuais Gerenciadores de Layouts Professor: Danilo Giacobo OBJETIVOS DA AULA Apresentar os conceitos básicos da programação de interfaces visuais para Android
Permissão de Usuários
Permissão de Usuários 1 Conteúdo 1. Propósito 3 2. Permissão de Usuários PrefGest 4 3. Permissão de Usuário para PrefCad 10 2 1. Propósito Este documento destina-se a explicar a ação para liberar permissões
INTRODUÇÃO À PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS. ADS 6º Período
INTRODUÇÃO À PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ADS 6º Período Activity INTRODUÇÃO À PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS INTRODUÇÃO À PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Activity A classe activity
Persistência de Classes em Tabelas de Banco de Dados
UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos
Programação Orientada a Objetos II
Programação Orientada a Objetos II AULA Banco de Dados (Exemplo) Prof. Rodrigo Rocha [email protected] (Modo Texto) Conectando ao Banco de Dados Entre no Diretório do Mysql mysql u root p criando
( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO
Serviço Nacional de Aprendizagem Comercial E.E.P. Senac Pelotas Centro Histórico Programa Nacional de Acesso ao Ensino Técnico e Emprego Curso Técnico em Informática ( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO
Chromecast. Seu aplicativo na TV. Ivan de Aguirre @IvAguirre [email protected]
Chromecast Seu aplicativo na TV Ivan de Aguirre @IvAguirre [email protected] Cast Sender: Sender: Android, ios, Chrome App Sender: Android, ios, Chrome App Receiver: Sender: Android, ios, Chrome
CAPA Área de utilização para ilustração MANUAL w-vpn
...6 CAPA Área de utilização para ilustração MANUAL w-vpn 20/01/2012 Versão 1.4 Sumário 1.0 Pré Requisitos de instalação do w-vpn...2 2.0 Instalação do Serviço...2 3.0 Dicas...8 4.0 Suporte...11 1 1.0
itec h- ON & E ngenharia de S oftware Joel Carvalho - 05/05/2011 Novas Tecnologias Aplicadas à Eng. de So5.
itec h- ON & E ngenharia de S oftware Novas Tecnologias Aplicadas à Eng. de So5. Tecnologias Pág. 2 Microso5 Visual Studio 2010 Express l Visual C# Express + Visual Web Developer l h6p://www.microso=.com/express/downloads/#2010-
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Internacionalização e Literais Professor: Danilo Giacobo OBJETIVOS DA AULA Aprender as vantagens do uso de literais e da internacionalização em aplicativos Android.
Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos
TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br [email protected]
Android Básico Hello World!
Android Básico Hello World! Instrutor Programador desde 2000 Aluno de doutorado Mestre em informática pelo ICOMP/UFAM Especialista em aplicações WEB FUCAPI [email protected] sites.google.com/site/marcio
2 Orientação a objetos na prática
2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos
Programação para Dispositivos Móveis
Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 03 Introdução ao ambiente de desenvolvimento: Eclipse e Android SDK Dalton Martins [email protected] São
Coleções. Conceitos e Utilização Básica. c Professores de ALPRO I 05/2012. Faculdade de Informática PUCRS
Coleções Conceitos e Utilização Básica c Professores de ALPRO I Faculdade de Informática PUCRS 05/2012 ALPRO I (FACIN) Coleções: Básico 05/2012 1 / 41 Nota Este material não pode ser reproduzido ou utilizado
Google Android. Uma abordagem prática e didática. Rafael Guimarães Sakurai, Diogo Carleto, erodrigo Cascarrolho
Google Android Uma abordagem prática e didática Rafael Guimarães Sakurai, Diogo Carleto, erodrigo Cascarrolho Esse livro está à venda em http://leanpub.com/google-android Essa versão foi publicada em 2015-08-03
Olá, esse é o manual feito para ajudar você a conhecer ainda mais o Painel Web que acompanha* App Kontrole.
Obrigado por baixar o App Kontrole!! Olá, esse é o manual feito para ajudar você a conhecer ainda mais o Painel Web que acompanha* App Kontrole. Aproveite para descobrir todo o potencial desse seu novo
Capítulo 04: Persistência com SQLite
Capítulo 04: Persistência com SQLite Instrutor Programador desde 2000 Aluno de doutorado Mestre em informática pelo ICOMP/UFAM Especialista em aplicações WEB FUCAPI [email protected] sites.google.com/site/marcio
Retrofit. Criar um novo projeto. Selecionar a API. Retrofit para consumir Web Service Luiz Eduardo Guarino de Vasconcelos
Retrofit Criar um novo projeto Selecionar a API Empty Activity MainActivity Finish. Adicionar Novas Dependências Menu File > Project Structure Modulo app > Aba Dependencies Clique em adicionar (+) no canto
Aula 30 - Sockets em Java
Aula 30 - Sockets em Java Sockets Sockets são estruturas que permitem que funções de software se interconectem. O conceito é o mesmo de um soquete (elétrico, telefônico, etc...), que serve para interconectar
Definições de Projeto
App Alunos Definições de Projeto Implementação de uma app para Manipulação de Dados de Alunos Em linhas gerais, a app consiste em: Manter dados de alunos; Entrar em contato com alunos; Trocar dados com
Adicionando Caixas de Verificação no seu Programa Java
Adicionando Caixas de Verificação no seu Programa Java Priscila Gomes Neste tutorial iremos falar sobre os aspectos básicos de uma caixa de verificação: quais os tipos, quando e como utiliza-las, como
Introdução ao Android
Introdução ao Android André Gustavo Duarte de Almeida docente.ifrn.edu.br/andrealmeida Parte 1 Conhecendo o Sistema e Primeiro Programa Roteiro Pré-requisitos Conceitos Básicos Configurando o Ambiente
Tutorial Android Speech
Tutorial Android Speech O sistema operacional Android já dispõe de uma funcionalidade interna para síntese e reconhecimento de voz que pode ser incorporado a qualquer aplicação. Essa funcionalidade utiliza
WEBDESIGN. Professor: Paulo Marcos Trentin - [email protected] http://www.paulotrentin.com.br Escola CDI de Videira
WEBDESIGN Professor: Paulo Marcos Trentin - [email protected] http://www.paulotrentin.com.br Escola CDI de Videira Formulários e JavaScript Como visto anteriormente, JavaScript pode ser usada para
Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7
Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7 Para criar um grupo doméstico e compartilhar arquivos é necessário que tenhamos pelo menos dois computadores ligados entre si (em
HCI Summer Workshop. Android #1. Tiago Guerreiro. [email protected]
HCI Summer Workshop Android #1 Tiago Guerreiro [email protected] Introdução Equipa Luis Carriço Tiago Guerreiro Luis Duarte Diogo Marques Gonçalo Gomes Eduardo Matos Nikolay Stanchenko Rafael Nunes Filipe
9 Comandos condicionais
9 Comandos condicionais Um comando condicional é uma instrução empregada quando se deseja criar um desvio, isto é, a opção de executar-se ou não um determinado trecho de código, segundo uma condição. Em
Exercícios de Revisão Java Básico
Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1
POO Programação Orientada a Objetos. Classes em Java
+ POO Programação Orientada a Objetos Classes em Java + Classes 2 Para que a JVM crie objetos: Ela precisa saber qual classe o objeto pertence Na classe estão definidos os atributos e métodos Programamos
INTRODUÇÃO AO JAVA PARA PROGRAMADORES C
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO AO JAVA PARA PROGRAMADORES C Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar a grande semelhança entre Java e C Apresentar a organização diferenciada
Como construir um compilador utilizando ferramentas Java
Como construir um compilador utilizando ferramentas Java p. 1/3 Como construir um compilador utilizando ferramentas Java Aula 5 Análise Léxica com JavaCC Prof. Márcio Delamaro [email protected] Como
Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Manual de Utilização do Zimbra
Manual de Utilização do Zimbra Compatível com os principais navegadores web (Firefox, Chrome e Internet Explorer) o Zimbra Webmail é uma suíte completa de ferramentas para gerir e-mails, calendário, tarefas
É o UniNorte facilitando a vida de nossos docentes e discentes.
ACESSO REMOTO Através do Acesso Remoto o aluno ou professor poderá utilizar em qualquer computador que tenha acesso a internet todos os programas, recursos de rede e arquivos acadêmicos utilizados nos
Computação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Introdução Esse não é um curso de Java! O objetivo é aprender os conceitos da programação orientada a objetos,
Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos
Este procedimento corresponde ao fluxo de trabalho de Indexação de código de barras e de separação de documentos no programa de treinamento do Capture Pro Software. As etapas do procedimento encontram-se
Técnicas de Programação II
Técnicas de Programação II Aula 03 GUI e Swing Edirlei Soares de Lima GUI Graphical User Interface A API Java fornece diversas classes destinadas a criação de interfaces gráficas.
Ler e escrever bytes, caracteres e Strings de/para a entrada e saída padrão. Ler e escrever bytes, caracteres e Strings de/para arquivos
O pacote java.io Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/ 1 Objetivos Ler e escrever
A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente
Java RMI - Remote Method Invocation Callbacks Folha 9-1 Vimos, na folha prática anterior, um exemplo muito simples de uma aplicação cliente/ servidor em que o cliente acede à referência remota de um objecto
Android Activity. Ivan Nicoli
Android Activity Ivan Nicoli Activity Representa a tela de uma aplicação Classe filha da classe android.app.activity Deve ser declarada sempre no AndroidManifest.xml Obrigatória a implementação do método
