Buscar

Aula 08 (1)

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 22 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 22 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 22 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

Programação para dispositivos moveis
Fabiano Gonçalves dos Santos
Aula 8
1
http://www.elandroidelibre.com/wp-content/uploads/2012/08/question.png
Como fazemos para armazenar dados no celular?
2
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
Persistência
Salvar Dados na memória secundária do device
Recuperar dados mesmo depois de finalizar o app
3
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
4
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
SQLITE
http://www.sqlite.org
http://www.sqlite.org/docs.html
Usa SQL
http://www.w3schools.com/sql/ 
5
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
6
SQLITE
É estruturado como Content Provider
Bases privadas
Cada app tem a sua
Ou atribui permissões especiais
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
7
SQLite
Caminho pré-definido no app
/data/data/<nome_do_pacote>/databases
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
8
SQLite (Tipos de Dados)
NULL: valores nulos.
INTEGER: para armazenamento de números inteiros.
REAL: para manipulação de valores ponto-flutuante (por exemplo, double, float).
TEXT: para dados textuais
BLOB: armazenamento de objetos binários (arquivos, imagens, vídeos, entre outros).
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
9
SQLite (Tipos de Dados)
CREATE TABLE pessoa (
	id INTEGER PRIMARY KEY AUTOINCREMENT,
	nome TEXT,
	endereco TEXT,
	peso REAL,
	altura REAL
);
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
10
SQLite (Tipos de Dados)
public class DatabaseHelper extends SQLiteOpenHelper{
//ATRIBUTOS
private static final String DATABASE_NAME = "exemplo";
private static final int DATABASE_VERSION = 1;
private final String CREATE_TABLE_PESSOA=
	"CREATE TABLE pessoa (
		id INTEGER PRIMARY KEY AUTOINCREMENT,
		nome TEXT,
		endereco TEXT,
		peso REAL,
		altura REAL
		); 
";
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
11
SQLite (Tipos de Dados)
//CONSTRUTOR
public DatabaseHelper(Context context){
 super(
 context,			//contexto da App
	DATABASE_NAME,		//nome do banco de dados
	null,				//cursor para manipulação
	DATABASE_VERSION	//versão do banco de dados
 );
}
// MÉTODO onCreate
@Override
public void onCreate(SQLiteDatabase db) {
	db.execSQL(CREATE_TABLE_PESSOA);
}
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
12
SQLite (Tipos de Dados)
// MÉTODO onUpgrade
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
	db.execSQL("DROP TABLE IF EXISTS pessoa");
	onCreate(db);
}		
}
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
13
SQLite (Tipos de Dados)
public int inserir(){
	String SQL = "INSERT INTO pessoa (nome,endereco,peso,altura) VALUES (?,?,?,?)";
 SQLiteDatabase db = this.getWritableDatabase();
 SQLiteStatement cmd = db.compileStatement(sql);
	
	//Parâmetros
	cmd.bindString(1, "João da Silva");
	cmd.bindString(2, "Rua Niteroi, 1234");
	cmd.bindDouble(3, 92.5);
	cmd.bindDouble(4, 1.95);
	
	//Insere o registro e retorna o ID gerado
	return cmd.executeInsert();
}
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
14
SQLite (Tipos de Dados)
ContentValues obj = new ContentValues();
	
obj.put(“nome”,”João da Silva”);
obj.put(“endereco”,”Rua Niteroi, 1234”);
obj.put(“peso”, 92.5);
obj.put(“altura,1.95);
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
15
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
15
16
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
16
17
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
17
18
DatabaseHelper.java
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
18
19
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
19
20
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
20
21
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8
21
22
Obrigado !
Programação para dispositivos móveis
Fabiano Gonçalves dos Santos
Aula 8

Outros materiais