O documento apresenta informações sobre desenvolvimento para Android, incluindo ferramentas, bibliotecas, conceitos como Activity e Intents, ganhos financeiros com aplicativos, estatísticas de mercado e crescimento da plataforma.
30. • Cobrar para que os usuários façam
o download de sua aplicação;
• Colocar publicidade na sua
aplicação, e receber por isso.
domingo, 29 de abril de 12
34. “Há mais de 500,000 aparelhos
Android sendo ativados todos os dias, e
está crescendo 4.4% por semana.”
Andy Rubin
vice-presidente sênior do Google Mobile
domingo, 29 de abril de 12
35. Ambiente
• Linux
• Mac OS
• Windows XP ou superior
domingo, 29 de abril de 12
73. Bibliotecas
- Ormlite
- Robotium
domingo, 29 de abril de 12
74. Ormlite http://ormlite.com/
MySQL Microsoft SQL Server
Postgres Netezza
H2 ODBC
SQLite DB2
Android SQLite Oracle
Derby HSQLDB
domingo, 29 de abril de 12
75. Modelo
@DatabaseTable(tableName="pessoas")
public class Pessoa {
@DatabaseField(generatedId = true)
private Integer id;
@DatabaseField(index = true)
private String nome;
@DatabaseField
private String sobreNome;
domingo, 29 de abril de 12
76. public class Db extends OrmLiteSqliteOpenHelper {
protected List<BaseDao<?, ?>> daoInstances = new ArrayList<BaseDao<?, ?>>(5);
public static String DATABASE_NAME = "main.db";
Classe DB
public static int DATABASE_VERSION = 1;
public static Class<?>[] entities = { Pessoa.class };
public Db(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
public void onCreate(SQLiteDatabase db, ConnectionSource connectionSource) {
try {
Log.i(Db.class.getName(), "onCreate");
createTables(connectionSource);
} catch (SQLException e) {
Log.e(Db.class.getName(), "Can't create database", e);
throw new RuntimeException(e);
}
}
public void createTables(ConnectionSource connectionSource) throws SQLException {
for (int i = 0; i < entities.length; i++)
TableUtils.createTable(connectionSource, entities[i]);
}
public void onUpgrade(SQLiteDatabase db, ConnectionSource connectionSource, int oldVersion, int newVersio
try {
dropAllTables(connectionSource);
onCreate(db, connectionSource);
} catch (SQLException e) {
Log.e(Db.class.getName(), "Can't drop databases", e);
throw new RuntimeException(e);
}
}
public void dropAllTables(ConnectionSource connectionSource) throws SQLException {
for (int i = 0; i < entities.length; i++) {
TableUtils.dropTable(connectionSource, entities[i], true);
}
}
domingo, 29 de abril de 12
77. BaseDao
public class BaseDao<T, ID> extends BaseDaoImpl<T, ID> {
public BaseDao(Class<T> dataClass) throws SQLException {
super(Teste01Activity.db.getConnectionSource(), dataClass);
}
}
domingo, 29 de abril de 12
78. Log
Log.v("Aplicação", "mensagem...");
domingo, 29 de abril de 12
79. CarlosCavalcanti.com
@CarlosCaval
Obrigado!
Carlos.Caval@hotmail.com
domingo, 29 de abril de 12