Buscar

Revisão dispositivos Móveis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Revisão dispositivos Móveis 
Maquina Virtual 
Na ciência da computação, máquina virtual consiste em 
um software de ambiente computacional, que executa programas 
como um computador real, também chamado de processo 
de virtualização. 
Uma máquina virtual (Virtual Machine – VM) pode ser definida 
como “uma duplicata eficiente e isolada de uma máquina real”. 
A IBM define uma máquina virtual como uma cópia isolada de um 
sistema físico, e esta cópia está totalmente protegida. 
Uma máquina virtual é um arquivo de computador (normalmente 
chamado de imagem) que se comporta como um computador de 
verdade. Em outras palavras, é a criação de um computador dentro 
de um computador. Ela é executada em uma janela, assim como 
outros programas, proporcionando ao usuário final a mesma 
experiência na máquina virtual que ele teria no sistema 
operacional host. 
Uma máquina virtual é um software que funciona como um ou vários 
hardwares, todos isolados. 
SDK 
O Android SDK ou Kit de Desenvolvimento de Software para 
Android é um pacote com diversas ferramentas utilizadas pelo 
Android Studio e pelos desenvolvedores Android, incluindo 
componentes como o SDK Tools, Build Tools e o Platform Tools. 
Android Virtual Device Manager 
O AVD Manager fornece uma interface gráfica na qual você pode 
criar e gerenciar dispositivos virtuais Android (AVDs) que são 
executados no Android Emulator. 
Executando o AVD Manager: No Android Studio, selecione Tools > 
Android > AVD Manager.Ou, clique no ícone do AVD Manager na 
barra de ferramentas. 
Android Emulator 
Uma ferramenta de emulação de dispositivo baseada no QEMU que você 
pode usar para debugar e testar seus aplicativos em um ambiente 
real de execução do Android. 
 
SDK Manager 
Permite gerenciar os pacotes do SDK, como plataformas instaladas 
e imagens do sistema. 
SQlite 
Permite acessar os arquivos de dados do SQLite criados e usados 
por aplicativos do Android. 
Ambiente de Desenvolvimento 
A principal linguagem de programação utilizada para construção 
de aplicações para Plataforma Android é a linguagem Java. 
Java Runtime Environment (JRE) Java Runtime Environment 
(JRE) significa Ambiente de Tempo de Execução Java, e é 
utilizado para executar as aplicações da plataforma Java. É 
composto por bibliotecas (APIs) e pela Máquina virtual 
Java (JVM) 
Java Development Kit : Java Development Kit (JDK) significa Kit 
de Desenvolvimento Java, e é um conjunto de utilitários que 
permitem criar sistemas de software para a plataforma Java. É 
composto por compilador e bibliotecas. 
Concluída a instalação do JDK você já pode escolher o ambiente 
de desenvolvimento para começar a construir as suas primeiras 
aplicações na plataforma Android. 
O ambiente Android Studio é uma nova plataforma para 
desenvolvimento de aplicações para Android. Este ambiente 
oferece recursos adicionais em relação ao Eclipse e segundo 
recomendações do Google será o ambiente oficial para construção 
de aplicações. O Android Studio é baseado no ambiente IntelliJ 
IDEA e está disponível para as plataformas Windows, MacOS e 
Linux. Conforme observado anteriormente, nesta disciplina será 
utilizado o ambiente Android Studio 
IntelliJ IDEA - é um ambiente de desenvolvimento integrado em 
Java para o desenvolvimento de software de computador. Ele é 
desenvolvido pela JetBrains e está disponível como uma edição da 
comunidade licenciada do Apache 2 e em uma edição comercial 
proprietária. Ambos podem ser usados para desenvolvimento 
comercial. 
 
 
SQLite Componentes 
SQLite não tem um programa de servidor de banco de dados 
separado, em vez disso , torna-se parte do aplicativo que usa o 
banco de dados. Design altamente eficiente do software 
implementa a maior parte do padrão SQL-92, evitando o uso 
intenso de recursos de computação geralmente encontrado com 
software de gerenciamento de banco de dados. 
SQLite é um open-source, sistema de gerenciamento gratuito , 
banco de dados relacional que utiliza o padrão da indústria, 
Structured Query Language, ou SQL. tornando-se uma escolha 
popular para aplicações rodando em smartphones , tablets e 
outros sistemas de pequeno porte. 
O principal componente em SQLite é a sua biblioteca, um arquivo 
que torna-se parte de uma aplicação de software maior. Por 
exemplo, se um programador escreve um jogo que usa um banco de 
dados SQLite, sua biblioteca é adicionado aos arquivos de programa 
para o jogo em um processo chamado de " compilação . " O arquivo 
programa compilado contém o jogo ea biblioteca SQLite . Quando um 
jogador faz uma pontuação elevada , o programa de jogo passa as 
informações para a biblioteca , que grava o placar para o banco 
de dados. 
Banco de Dados 
lojas SQLite sua informações do banco de dados em um único arquivo 
, um arquivo por banco de dados. O arquivo contém as tabelas, 
visões e outras estruturas normalmente presentes em um banco de 
dados , bem como informações de apoio. Por exemplo, o arquivo 
contém índices usados para localizar dados em um banco de dados 
rapidamente. O tamanho máximo de um arquivo de banco de dados 
SQLite é de 140 terabytes , suficiente para quase qualquer uso 
que se possa imaginar . 
Auxiliar Arquivos 
SQLite mantém arquivos auxiliares que controlam o estado do banco 
de dados . Esses arquivos residem no mesmo diretório que o arquivo 
de banco de dados. Um arquivo, chamado um jornal rollback, salva 
as operações em andamento. Se o computador tiver uma falha de 
energia no meio de uma atualização de banco de dados, e 
posteriormente é reiniciado, SQLite usa o diário de reversão para 
desfazer graciosamente quaisquer transações semi-acabados . Outro 
arquivo, chamado log de write-ahead ou WAL , serve a um propósito 
similar. Um banco de dados pode ter um diário de reversão ou uma 
WAL , mas não ambos . 
A plataforma Android oferece suporte nativo ao armazenamento 
persistente de dados utilizando o SQLite. Este é um banco de dados 
de código fonte aberto, multiplataforma e tem sido utilizado 
principalmente em aplicativos embarcados. A arquitetura de 
funcionamento do SQLite é diferente de outros sistemas de 
gerenciamento de banco de dados tradicionais, uma vez, que todas 
as funcionalidades do sistema são oferecidas por meio de uma 
biblioteca escrita na linguagem C. Este fato torna o SQLite uma 
solução leve, e de fácil integração, pois não necessita de 
instalação, configuração e administração. O SQLite é compatível 
com um grande número de linguagens de programação, e as instruções 
SQL utilizadas no banco são baseadas no padrão SQL-92 (SQLITE, 
2014). No contexto da plataforma Android, o SQLite é encapsulado 
em um provedor de conteúdo (content provider). Dessa forma, os 
dados são manipulados de maneira abstrata e podem ser 
disponibilizados para os diversos serviços oferecidos nos 
dispositivos. As bases de dados criadas com o SQLite são privadas 
e acessíveis apenas pelo aplicativo responsável, ou, 
disponibilizada para outros aplicativos desde que atribuídas as 
devidas permissões. O armazenamento persistente dos dados ocorre 
em um caminho pré-definido do dispositivo 
Componentes das Aplicações Android 
A plataforma Android tem uma estrutura de componentes altamente 
modular, o que permite o reaproveitamento de código entre as 
aplicações. Os componentes são divididos em quatro tipos, os 
quais possuem características e funcionalidades distintas. Esses 
componentes são denominados: 
 • Atividades (Activities) 
 • Serviços (Services) 
 • Provedores de Conteúdo (Content Providers) 
• Receptores de Transmissão (Broadcat Receivers) 
Nas aplicações Android uma Atividade (Activity) é utilizada para 
representar uma tela de interface com o usuário. As aplicaçõespodem ser formadas por várias atividades, cada qual funcionando 
de maneira independente e podem realizar a troca de informações 
entre elas. Em termos de programação, toda atividade é derivada 
(ou herda) uma classe denominada Activity do pacote android. 
app.Activity. Esta superclasse fornece o método fundamental para 
criação da atividade conhecido como onCreate. No método onCreate 
é possível especificar todas as característica que deverão ser 
inicializadas na interface. Em aplicações com múltiplas 
atividades, é necessário indicar qual atividade é definida como 
principal, ou seja, qual atividade a primeira atividade que será 
carregada quando a aplicação for inicializada. A indicação da 
atividade principal é realizada no arquivo AndroidManifest.xml, 
o qual será abordado nas seções seguintes (ACTIVITIES, 2014). 
 O componente de Serviço (Service) tem como principal objetivo a 
execução de tarefas em background. Um serviço pode ser 
utilizado, por exemplo, para executar um arquivo de música no 
formato MP3, enquanto o usuário interage com a aplicação. Uma 
característica importante dos serviços é o fato de não possuir 
interface gráfica, além disso, permite a execução de operações 
durante um longo tempo sem interferir na interação do usuário 
com a aplicação (SERVICES, 2014). 
Um Intent é um objeto que fornece vínculos de tempo de execução 
entre componentes separados, como duas atividades. 
O Intent representa uma "intenção de fazer algo" do app. Você 
pode usar intents para uma ampla variedade de tarefas, mas o 
intent iniciará outra atividade nesta lição. 
 
Botões do rádio 
 
<?xml version="1.0" encoding="utf-8"?> 
<RadioGroup 
xmlns:android="http://schemas.android.com/apk/res/android" 
 android:layout_width="match_parent" 
 android:layout_height="wrap_content" 
 android:orientation="vertical"> 
 <RadioButton android:id="@+id/radio_pirates" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:text="@string/pirates" 
 android:onClick="onRadioButtonClicked"/> 
 <RadioButton android:id="@+id/radio_ninjas" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:text="@string/ninjas" 
 android:onClick="onRadioButtonClicked"/> 
</RadioGroup> 
 
Dentro do Activity que hospeda esse layout, o método a seguir 
lida com o evento click dos dois botões de opção: 
public void onRadioButtonClicked(View view) { 
 // Is the button now checked? 
 boolean checked = ((RadioButton) view).isChecked(); 
 
 // Check which radio button was clicked 
 switch(view.getId()) { 
 case R.id.radio_pirates: 
 if (checked) 
 // Pirates are the best 
 break; 
 case R.id.radio_ninjas: 
 if (checked) 
 // Ninjas rule 
 break; 
 } 
} 
 
Checkboxes 
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
 android:orientation="vertical" 
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent"> 
 <CheckBox android:id="@+id/checkbox_meat" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:text="@string/meat" 
 android:onClick="onCheckboxClicked"/> 
 <CheckBox android:id="@+id/checkbox_cheese" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:text="@string/cheese" 
 android:onClick="onCheckboxClicked"/> 
</LinearLayout> 
 
Na Activity que hospeda esse layout, o método a seguir lida com 
o evento click para ambas as caixas de seleção: 
un onCheckboxClicked(view: View) { 
 if (view is CheckBox) { 
 val checked: Boolean = view.isChecked 
 
 when (view.id) { 
 R.id.checkbox_meat -> { 
 if (checked) { 
 // Put some meat on the sandwich 
 } else { 
 // Remove the meat 
 } 
 } 
 R.id.checkbox_cheese -> { 
 if (checked) { 
 // Cheese me 
 } else { 
 // I'm lactose intolerant 
 } 
 } 
 // TODO: Veggie sandwich 
 } 
 } 
} 
Editar texto 
m elemento da interface do usuário para inserir e modificar 
texto. Ao definir um widget de edição de texto, você deve 
especificar o R.styleable.TextView_inputType atributo Por 
exemplo, para entrada de texto sem formatação, defina inputType 
como "text": 
 <EditText 
 android: id = "@ + id / plain_text_input" 
 android: layout_height = "wrap_content" 
 android: layout_width = "match_parent" 
 android: inputType = "text" /> 
 
A escolha do tipo de entrada configura o tipo de teclado 
mostrado, os caracteres aceitáveis e a aparência do texto de 
edição. Por exemplo, se você deseja aceitar um número secreto, 
como um pino ou número de série exclusivo, pode definir 
inputType como "numericPassword". Um inputType de 
"numericPassword" resulta em um texto de edição que aceita 
apenas números, mostra um teclado numérico quando focado e 
mascara o texto digitado para fins de privacidade. 
 
Adapters 
Um Adapter funciona como uma ponte entre uma AdapterView e os dados destinados para 
essa View. O Adapter permite o acesso aos itens de dados. O Adapter também é responsável 
por fazer uma exibição para cada item no conjunto de dados. Ou seja, um Adapter representa a 
ligação entre a View e alguma fonte de dados. Ele geralmente vêm em dois tipos: aqueles que 
representam dados baseadas em array’s ou listas; aqueles que representam os dados 
baseados em cursor. 
 
Neste post falaremos sobre criação de tipos relacionados à 
um Adapter (List, Spinner, GridView, Gallery, e também mais um pouco mais sobre banco de 
dados (criando um exemplo que faz a interação entre um banco de dados e 
um Adapter). Primeiramente, veremos os tipos de listas mais comuns em Android 
(ArrayAdapter, SimpleAdapter, CursorAdapter, dentre outros), para então aplicá-las em 
componentes de interface que associam listas com View (tipos Spinner, GridView, Gallery). 
 
Um Adapter é uma classe de Android que intermedia a criação de listas, e também lida com 
outros tipos de componentes, como os 
tipos Spinner, GridView, Gallery e AutoCompleteTextView. 
Podemos utilizar um Adapter em uma Activity de duas maneiras: 
• Extendendo de Activity. Neste caso, precisamos declarar um 
atributo de classe do tipo ListView, e também definir 
o Adapter da seguinte forma: mListView.setAdapter(). 
• Extendendo de ListActivity. Neste caso, a ListView já está 
implícita na Activity, e definimos o Adapter através do 
método setListAdapter(). E não precisamos definir um 
layout para a Activity (como comumente é feito através do 
método setContentView()), uma vez que uma classe que 
extende de ListActivity já implementa nativamente 
uma ListView. 
 
 
 
 
Resposta ao click 
/* 
 * Setup the 'next' button. The counter is incremented when clicked 
and 
 * the new value is displayed in the TextSwitcher. The change of text 
is 
 * automatically animated using the in/out animations set above. 
 */ 
 Button nextButton = (Button) findViewById(R.id.button); 
 nextButton.setOnClickListener(new View.OnClickListener() { 
 
 @Override 
 public void onClick(View v) {mCounter++; 
 
 mSwitcher.setText(String.valueOf(mCounter)); 
 
 } 
 });

Outros materiais