Pular para o conteúdo principal

Postagens

Mostrando postagens de 2014

Zotero

Estou começando a utilizar o zotero  na minha pesquisa para o mestrado. Excelente ferramenta para organizar as referencias bibliográficas. Por enquanto estou testando, assim que adquirir um pouco de conhecimento posto algo aqui! Ja dizia o poeta: "Camarão que dorme a onda leva!"

C++

Uma coisa é muito bem definida no mestrado... se você tiver que fazer um Hello World esse Hello World será em C++. A comunidade acadêmica adotou o C++ como a linguagem padrão, claro que não questiono o desempenho e a qualidade da linguagem, já que nenhuma pessoa em sã consciência falaria mal do C++, mas a complexidade no desenvolvimento é muito maior que o Java onde eu já estou acostumado, ou qualquer outra linguagem mais moderna. Entrei no mestrado procurando novas experiências então confesso que vai ser legal aprender C++ 'mais' afundo. Já dizia o poeta: "No pain, no gain!"

Sempre teste MUITO suas apps antes de publicá-las

Você pode estar pensando, lógico que temos que testar a app antes de publicá-la na google play... mas quando dico MUITO, é muito mesmo. O Caso: Há um tempo atrás publiquei o  Anti-TPM  um app tosco que fiz pra zuar com minha namorada... apesar de ser idiota ele possuía grandes chances de ser bem baixado, fui ver os dados e estavam: 258 usuários ativos e 1267 instalações, e 90% desses 258 estavam com Android > 4.x ou seja... mais de 1000 pessoas desinstalaram o app e pouca gente com Android low estava usando o app, classificação baixa e pessoas reclamando de erros. No meu Nexus não tinha erro, funcionava da forma que tinha que ser, e em todos os outros celulares que testei também estavam... Mas ae começa o problema... testei em tablets com android > 3.x, testei em vários celulares com android > 4.x, e testei no emulador com android < 3, o grande erro foi esse... não testei em nenhum celular de verdade com android < 3 e quando fiz isso tomei um susto... que a pr...

Discurso para colação de grau

Meu português é ruim, falo rápido e embolado e mesmo assim meus companheiros de turma me escolheram como orador em nossa colação de grau, no dia 27/03/14. Demorei um pouco pra escolher as palavras e o contexto do texto, já que 95% dos discursos seguem o mesmo padrão e eu queria muito fazer parte dos 5% exóticos... Então saiu isso: Minha copa do mundo O sonho de todo jogador de futebol é jogar uma copa do mundo, todos tentam mas nem todos conseguem realizar esse feito. Vencer uma copa então? Nem o Zico, maior jogador de todos os tempos venceu uma. Como estudante da UENF considero a graduação como nossa copa do mundo, sofremos pra chegar até aqui, estudamos, brincamos, rimos, brigamos, choramos, chegamos na final e apresentamos nosso TCC, alguns com um certo atraso... mas... vencemos essa copa. Quando eu, Camila, Mayra, Renata e Tiago fizemos o vestibular para ciência da computação muitas dúvidas rondavam nossas cabeças, eu adorava jogos de computador então pensei que até no final ...

Bootstrap

Andei dando uma programada para web usando o Vraptor , que é um framework da caelum bem bacana e fui utilizar o boostrap que é uma mão na roda pra fazer as views, então achei um criador de formulários bem interessante, segue o link: http://bootsnipp.com/forms Já dizia o poeta: "Tudo é tudo e nada é nada!"

Mestrado

Primeira semana de aula no mestrado terminada... saldo: Muito artigo pra ler e greve na universidade de novo! Complicado!!!! Já dizia o poeta: "Get a good job with more pay and you're okay"

Um pouco da Powell

Finanças Simples é o app mais simples e funcional da google play, tendo de 10000 a 50000 downloads é o app produzido pela Powell mais utilizado pelos usuários. Devido os apps de controle de finanças existentes serem muito complexos, finanças simples remou para o outro lado da maré, tentando se tornar  o controle das finanças mais rápido que os demais, e deu certo. O número de downloads continua crescendo e com uma qualificação muito boa. Se quiserem dar uma conferida, só baixar em  https://play.google.com/store/apps/details?id=br.com.powell.financas_basico  . Vlw! Já dizia o poeta: "Eu sempre quero mais, que ontem, eu sempre quero mais, que hoje, eu sempre quero mais, do que eu possa ter"

Lista Simples - Parte 2

Continuando nossa lista, vamos capturar eventos da lista. Primeiro é implementado o click curto muito usado em apps com listas, sua implementação é bem simples: No onCreate() é necessário declarar o método do click getListView().setOnItemClickListener(mostraItemDaLista); E implementar o método: private OnItemClickListener mostraItemDaLista = new OnItemClickListener() { @Override public void onItemClick(AdapterView adapter, View arg1, int posicao, long arg3) { String texto = (String) adapter.getItemAtPosition(posicao); Toast.makeText(ListaSimples.this, "Click curto " + texto, Toast.LENGTH_LONG).show(); } }; Ignore o Toast por enquanto, em outro post vou falar um pouco mais dele, seu objetivo é apenas mostrar uma mensagem na tela. E para implementar alguma chamada para quando o usuário prolonga o click é bem simples também: getListView().setOnItemLongClickListener(mostraPosicaoDoItem); Com a implementação: private OnItemLongClickListener mostraPosicaoDoIte...

Referências

Quando se começa a estudar o desenvolvimento para Android, uma pergunta padrão dos estudantes é: "Por onde começar?", e a resposta varia, existem pessoas que gostam de vídeos, então se dão bem no youtube, outros gostam de documentação e ver códigos, ae na grande rede tem bastante coisa, eu prefiro livros, gosto de ver o problema pequeno até se tornar grande, facilita meu entendimento. Independente da maneira que você goste de estudar, minha dica é o seguinte, aprenda pelo certo, existem vídeos no youtube com programas totalmente fora do padrão sugerido pelo google, existem blogs com código duvidoso. Minhas sugestões seriam: Livros Google Android - Ricardo Lecheta - Mais indicado pela galera Google Android para Tablets - Ricardo Lecheta - Mais avançado que o primeiro Google Android - Casa do código/Caellum Fórum Portal Android Sites http://developer.android.com/index.html http://codigo-google.blogspot.com.br/2013/08/next-level-tips-removendo-options-menu.h...

Um pouco da Powell

Mês passado fez 1 ano que publiquei meu 1º app na google play. Com toda certeza foi uma das ideias mais idiotas que já tive, mas deu certo e apesar de algumas críticas a maioria das qualificações foram positivas. Para um app simples e de gosto duvidoso ultrapassar 10000 downloads não é nada mal hehehe. Já estava esquecendo... até um review no baixaki saiu... Então... deixo um salve para o  Médico do Sus Já dizia o poeta: "Quem é rico mora na praia... e quem trabalha não tem onde morar"

Lista Simples - Parte 1

Listas são necessárias na maioria dos apps e por isso vamos criar uma lista simples.   Nesse primeiro post ela será criada da maneira mais simples possível, na parte 2 vamos implementar alguns métodos usados nas listas. O exemplo é o  ListaSimplesExemplo . A primeira modificação em relação as activitys tradicionais é utilizar ListActivity ao invés de Activity como mãe da nossa tela, ficando assim: public class ListaSimples extends ListActivity {} Isso facilita nosso controle da tela, já que a classe ListActivity nos proporciona métodos para tratamento de listas, mas também seria possível a implementação da lista utilizando a classe  Activity . Como é uma lista simples, ela pode ser criada assim: private String[] menuPrincipal = {"Opção Um", "Opção Dois", "Opção Três"}; E então criamos um adapter para a lista, acostume-se com o conceito de adapter, porque em lista mais complexas nós implementaremos nossos adapters. ArrayAdapter adapter = new...

Splash Screen

A maioria dos aplicativos possuem uma tela de iniciação, que possui uma implementação muito simples e vamos adicioná-lo nosso projeto  Meu Carro  também. O projeto com a tela de entrada se encontra em  https://github.com/raphaelframos/cursobasicoandroid  com o nome SplashScreenExemplo. Quem faz o trabalho sujo de esperar um tempo antes de chamar a activity seguinte é o método: private void carregarOutraActivity() { new Handler().postDelayed(new Runnable() { @Override public void run() { try{ startActivity(new Intent(TelaEntrada.this, TelaSeguinte.class)); finish(); }catch(Exception e){ e.printStackTrace(); } } }, TEMPO_ENTRADA); } Onde é instanciado a classe Handler com o método postDelayed(), que antes de chamar o método que se encontrada dentro do método run(), espera o tempo que é definido no TEMPO_ENTRADA, que é calculado em milissegundos. TelaSeguinte.class é uma outra activity que tem que ser criada no projeto. Cas...

Ciclo de vida

Antes de sair criando códigos e mais códigos e criar seus apps é muito importante entender o ciclo de vida da Activity, isto é, todo o processo de criação até destruição da activity. Isso vai te ajudar a entender o funcionamento do sistema e evitar erros bobos. Os ciclos podem ser visualizados na imagem: O método onCreate é o primeiro a ser chamado, nele você deve definir qual layout da Activity, linkar com as views e definir os valores iniciais. Em seguida sempre virá o onStart() , que é chamado quando a activity fica visível para o usuário. Depois vem o método onResume() que é chamado quando a activity vai iniciar a interação com usuário. Nessa etapa sua activity já se encontra no topo da pilha de atividades(Vou falar disso em outro post) e é seguido do método onPause() quando a aplicação vai sair do topo de atividades, que é responsável por persistir quaisquer mudanças ainda não efetivadas, parar animações e outras coisas que possam consumir a CPU, etc. onRestart()...

LogCat e Classe Log

Já aprendemos a criar um projeto, agora chegou a hora de nos divertimos com código para Android de verdade. Quando programamos em Java, estamos acostumados a usar o velho e útil System.out.println() para mostrar saídas de debug do sistema no console. No Android esse comando é substituído pela Classe Log, que é responsável por mostrar as mensagens de texto na view LogCat , que pode ser aberta em Window>Show View>Other digite LogCat( 1ª opção )  e aperte em Ok. Existem 5 tipos de logs, que são: Log.d  - DEBUG Log.i   - INFO Log.v  - VERBOSE Log.w - WARNING Log.e  - ERROR  Que podem ser usados a critério do programador. Um exemplo de sua utilização está no projeto LogCatExemplo em  cursobasicoandroid  e seu resultado pode ser visto na imagem abaixo: Já dizia o poeta: " I feel good, I knew that I would, now.  So good, so good, I got you "

Iniciando projeto

Depois de configurar o ambiente de desenvolvimento podemos criar um projeto. Esse projeto vai ser um app para controle de manutenção do veículo, ae podemos ir viajando nas ideias e adicionando funcionalidades inesperadas. Cada tutorial postado aqui estará presente em nosso app, desde a criação até a publicação na google play . Para começar abra o eclipse ou sua IDE para desenvolvimento, vá em File>New>Android Application Project Isso criará uma nova janela, que você pode configurar da seguinte forma: Onde package name é o campo que mais importa, já que sua app na loja do google tem que ter um nome único, e esse nome é o nome do pacote + nome da aplicação. Então é recomendo usar br.com.algo que remeta a você e o nome da app. Outro campo importante é o Minimum Required SDK, que define qual a menor versão do Android sua app irá suportar. É importante configurar igual a imagem para que não exista problemas de compatibilidade no decorrer do projeto. Depois de configurad...

Configurando o ambiente

Quando comecei a desenvolver para Android era bem chata a instalação, hoje é muito simples... baixando o ADT disponibilizado pela própria Google e tendo o Java (JDK ou JRE) instalado no pc você já pode começar a desenvolver seus aplicativos. Os downloads podem ser feitos em:  ADT  (tanto pra windows, linux e mac) e  JDK . Além dessas ferramentas também vou utilizar o github  para o controle de versão dos códigos e poderão ser encontrados no meu  repositório . Ainda não me acostumei com o  Android Studio  que é a IDE criada para desenvolvimento Android, então meus códigos serão compilados na IDE que vem no ADT já postado, que nada mais é que o eclipse. Com a IDE aberta você pode criar um AVD caso não tenha nenhum dispositivo Android para compilação da sua app, o processo de criação é Window>Android Virtual Device Manager> New onde uma tela com as opções a seguir é apresentada. Podemos destacar as opções de Device onde você define a reso...

Iniciando no mundo Android!

Android é o sistema operacional para dispositivos móveis mais famoso no mercado hoje, é gerenciado pelo Google e está presente nos maiores fabricantes de celulares e tablets do mundo, batendo de frente com o iOS da Apple e muito à frente do Windows   Phone da Nokia/Microsoft. Existe um grande debate sobre qual sistema é o melhor, mas sinceramente isso é questão pessoal, sendo impossível uma resposta final sobre o tema. O que posso afirmar com certeza que é muito prazeroso desenvolver um app para qualquer plataforma e saber que várias pessoas no mundo utilizam um produto seu. Eu ainda não tive tempo pra entrar no mundo do iOS então nunca produzi nada, então me divirto no gigante mundo Android. Já dizia o poeta: "Ouça o que eu digo, não ouça ninguém"

@raphaelframos

E ae galera! Meu nome é Raphael Ramos, tenho 20 e poucos anos, nascido e criado em Itaperuna, uma cidade muito quente do interior do Rio de Janeiro, apaixonado por música, toco violão e sou um guitarrista frustrado, formado em ciência da computação pela universidade estadual do norte fluminense hoje faço mestrado em pesquisa operacional na UENF. Sou flamengo e tenho uma morena chamada Carla. Programo em Java para Android, Java para Web e C++ para minha tese de mestrado. Sou fã de jogos para computador mas me rendi ao Xbox 360 e jogo Fifa14 sempre que posso. Não gosto de política, mas sempre entre em discussões relacionadas a leis idiotas e políticos igualmente idiotas. Sou um dos moderadores do fórum Portal Android  e tenho alguns apps na  Google Play . Sou filho do Ronaldo e Lina e tenho Matheus e Fernanda como irmãos. Tento não seguir padrões e crio minhas próprias ideias. Pretendo falar sobre desenvolvimento Android no blog, mas também posso variar para outros dispositivos ...