Hello World em Android

Fala galera!

Continuando nossa série de tutoriais, vamos hoje criar nosso primeiro projeto: Hello World em Android! Com esse projeto, vamos começar a nos familiarizar com a programação para Android e com a interface do nosso IDE escolhido para a série, o Eclipse.

Começando nosso Hello World em Android

Primeiramente, vamos criar um novo projeto. Abra o Eclipse, vá ao menu File New → Project…, procure a seção Android, selecione Android Application Project e clique em Next.

Hello World em Android

Na tela seguinte, vamos definir o nome do nosso aplicativo, o nome do projeto e o pacote que será utilizado. Vamos definir também as opções de SDK. Na ordem, são elas: versão mínima necessária, versão máxima compatível, versão para compilar o projeto (de acordo com as versões que baixamos), e o tema. IMPORTANTE: O nome do aplicativo é o mesmo que irá aparecer no smartphone dos usuários.

Hello World em Android

Na próxima tela, vamos deixar marcadas as opções para criar o ícone da aplicação, a activity principal, e criar o projeto na Workspace.

Hello World em Android

Definindo nosso ícone da aplicação (vou manter o padrão mesmo).

Hello World em Android

Escolhendo o tipo da activity principal…

Hello World em Android

E por último, o nome da activity principal.

Hello World em Android

E pronto, está criado o nosso projeto!

Considerações

Os arquivos mais importantes (por enquanto) são o MainActivity.java, que está localizado dentro da pasta src, e o arquivo activity_main.xml, dentro da pasta res/layout.

O arquivo activity_main.xml é o que define o layout e a disposição dos componentes (textos, botões, imagens, etc.). Já o arquivo MainActivity.java é responsável por armazenar todo o código da aplicação.

Rodando a aplicação

Vamos executar nossa aplicação e ver como está. Para tal, clique no menu Run Run As → Android Application.

Hello World em Android

Feito isso, o emulador com a versão do Android compatível com o projeto será iniciado (pode demorar um pouco), e o nosso Hello World em Android será iniciado.

Hello World em Android

Hello World em Android

Isso é tudo, pessoal!

No próximos tutorial, vamos criar um projeto e ir incrementando ele aos poucos, até termos um aplicativo digno de ser publicado.

Se você ainda não viu os primeiro tutoriais da série, acesse agora

Até a próxima!

Auto post nas Redes Sociais com Jetpack

Acesse Plugins> Adicionar Novo> Pesquisar Plugins  e digite “Jetpack by WordPress.com” (seu plugin Auto Post)  dentro de Pesquisar Plugins e pressione enter. Instale e ative, uma vez na lista de plugins instalados, selecione Configurações . Para ativar o recurso Publicize do Jetpack, você precisa vincular sua conta no WordPress.com então aperte o botão verde “Vincule Sua conta com WordPress.com”.

jetpack-publicize-passo-a-passo
Se você ainda não tem uma conta no WordPress.com será crie um nome de usuário e uma senha depois de criar sua conta e faça login, você vai ver que você está pronto para ativar o Jetpack.

jetpack-publicize-passo-a-passo2

Após ativar a sua conta selecione Jetpack> Configurações na seção Publicize clique em configurar.

jetpack-publicize-passo-a-passo3

Para cadastrar suas contas sociais, você precisa dar permissão. Conecte as contas sociais que você quer deverá pedir login e senha e assim conceder acesso. Ligue todas as contas que você desejar – você vai ser capaz de marcar e desmarcar uma conta específica quando chega a hora de publicar seus posts.

jetpack-publicize-passo-a-passo4

Você também será capaz de adicionar um botão compartilhar nas suas páginas e posts através do plugin. Para fazer isso, basta arrastar os botões do serviços disponíveis em caixa para a serviços habilitados, e organizá-los como você gostaria de vê-los exibidos. Salve as alterações e, em seguida, confira um dos seus posts recentes para ver se seus novos botões de ações são visualizadas como você quer.

jetpack-publicize-passo-a-passo5

Agora que o Publicize está instalado e configurado, você verá uma nova seção Divulgar  em seu Novo Post, acima do botão Publicar. Você pode optar por ter o plugin e publicar automaticamente o seu conteúdo para todas as contas sociais que você tenha concedido acesso, ou você pode clicar em  Configurações para marcar e desmarcar as contas, e até mesmo incluir uma mensagem personalizada para acompanhar o seu link.

jetpack-publicize-passo-a-passo6
Pronto, agora você pode agendar seus posts! 😉

Introdução ao uso de Thread em objective C

Bom pessoal, neste post vamos trabalhar com Threads, uma ferramenta muito interessante, para quem não sabe como funciona, vamos a uma explicação básica, é dividir o processo para que ele possa ser executado em paralelo ao funcionamento principal. Exemplificando, vamos imaginar um app que faça uma consulta de dados para montar uma tabela, e essa tabela tem fotos de alguma coisa.Montar a tabela em si com os dados em forma texto será algo simples e rápido, porem baixar as imagens é algo muito mais demorado, e enquanto estivermos baixando as imagens toda nossa interface fica parada até que todos os downloads sejam finalizados, e bem isso pode levar alguns segundos, não será o fim do mundo, mas pode prejudicar a experiência do usuário.

E como podemos resolver isso ?

Bom com nossa Thread, podemos simplesmente mandar as imagens serem baixadas em “segundo plano”, ou seja nosso aplicativo continua funcionando, e a medida que as imagens são baixadas podem ser exibidas.

Como não terei tempo de fazer um aplicativo completo com o download de imagens e tudo mais, vou criar um aplicativo simples apenas 2 métodos que serão executados em paralelo (mas se você quer aprender a trabalhar com tabelas acesse esse link onde ensinamos).

Bom o projeto será algo bem simples, crie 2 labels pronto essa é toda a interface que vamos precisar , em nosso arquivo .m vamos criar 2 métodos chame como quiser, em um deles nós vamos fazer um laço curto de 0 a 10, já no outro vamos criar um laço grande de 0 a 10000000. Nosso código deve estar algo assim:

-(void)contadorPrincipal{

for (int i = 0 ; i < 10; i++) {

self.labelPrincipal.text = [NSString stringWithFormat:@”%i”,i];

}

}

-(void)contadorSecundario{

for (int i = 0; i < 10000000; i++) {

NSLog(@”a”);

self.labelSecundaria.text = [NSString stringWithFormat:@”%i”,i];

}

}

Lembrando que o labelPrincipal e labelSecundaria  são as labels que criamos no nosso storyboard.

Digamos que, em nosso método viewDidLoad nós usamos um self para chamar os métodos contadorSecundario, e contadorPrincipal nessa ordem, bom nosso código vai funcionar, porem o método contadorprincipal só vai ser executado quando o contadorSecundario terminar, e bem pelo tamanho do laço podemos ver que vai demorar um pouco, bom mas e se eu quiser que ambos sejam executados ao mesmo tempo, e que nenhum atrapalhe a execução do outro ? Bom podemos fazer jogando um laço dentro do outro e usando um pouco de lógica, porem isso pode dar mais trabalho que criar nosso Thread.

Para executar um método em segundo plano precisamos de apenas uma linha de código basta que onde usamos nosso self padrão para chamar o método contadorSecundario vamos trocar por:

[self performSelectorInBackground:@selector(contadorSecundario) withObject:nil];

E pronto nosso método agora será executado em segundo plano na nossa execução.

Emulador Android: como configurar

Fala galera!

Vamos ao segundo tutorial da série “Desenvolvendo Aplicativos para Android”.
Hoje vamos aprender a criar e configurar um emulador Android através do AVD Manager.

O que é AVD Manager?

O AVD Manager é o gerenciador de emuladores Android. A sigla AVD vem de Android Virtual Devices (traduzindo para o português: dispositivos virtuais Android).
No AVD você pode criar, editar e excluir seu emulador Android. Podem ser criados vários emuladores, com diferentes configurações e versões do Android.

Para mais informações sobre o AVD, acesse o site Android Developer.

Para acessar o AVD:

  • No Eclipse: selecione Window → Android Virtual Device Manager;
  • No Android Studio: selecione Tools → Android → AVD Manager;
  • Em outros IDEs: navegue até o diretório do SDK e execute o arquivo AVD Manager.exe;

Em alguns casos, na própria toolbar existe o ícone do AVD Manager.

Emulador Android

Então, a tela com a lista dos dispositivos será aberta.

Emulador Android

Criando meu primeiro emulador Android

Para criar um emulador, vamos clicar no botão Create. Vamos então preencher os dados referentes ao dispositivo desejado. O campo Device indica o tipo de dispositivo e o tamanho da tela. O campo Target indica a versão do Android que será utilizada. Dependendo da versão do Android, você pode escolher o processador em CPU/ABI. Você também pode configurar periféricos, como câmera frontal e traseira, teclado, cartão de memória, etc.

Emulador Android

Após preencher/selecionar todos os campos, basta clicar em OK para finalizar o processo.

Emulador Android

DICA

Crie vários dispositivos, de diferentes versões do Android e tamanho de tela para testar suas aplicações em todas as possibilidades.

Emulador Android: como configurar

Nas próximas semanas, vamos criar nosso primeiro projeto, o famoso Hello World!

Se você ainda não viu o primeiro tutorial da série, acesse agora: Como desenvolver aplicativos para Android

Até a próxima, galera!

Medidas para publicações nas Mídias Sociais

Medidas para Publicações

Se você é novo na área de mídias sociais e recentemente criou uma página no Facebook, Google Plus, Twitter ou Youtube, tenho uma dica extremamente valiosa para você! Descubra todos os tamanhos para publicação e atualize suas Redes Sociais. 😉

Facebook Tabs Design

facebook_app

Facebook Avatar Design
facebook_avatar

Facebook BG Design

facebook_bg
Facebook BG Grupo Design

facebook_evento

Facebook Post Design
facebook_post

Google+ Avatar Design

 

googleplus_avatar
Google+ Post 1 Design

googleplus_bg
Google+ Post 2 Design
googleplus_post

Twitter Avatar Design

twitter_avatar

Twitter BG Design

twitter_bg

Youtube Avatar Design
youtube_avatar

Youtube BG Desgin

youtube_bg

TableViewCell customizada em Objective C

Bom pessoal hoje vou mostrar como customizar as células de um tabela usando objective C, e  TableViewCell esse tópico é bem interessante e fácil.

Primeiramente vamos construir uma aplicativo simples e colocar uma tabela na tela.Não se esqueça de fazer os delegates e Datasources.

tabelaDelegate

Se você não sabe como fazer isso, pode acessa esse link onde falo um pouco mais de tabelas.

Continuando, depois de criada nossa tabela normal precisamos criar uma célula para ela, criamos uma nova classe e usamos pedimos para criar um arquivo XIB junto.

criancoCelula

Lembre-se de selecionar subClass of : UITableViewCell por boas práticas. Lembre-se de deixar selecionado Also create XIB file.

Neste arquivo é onde poderemos criar a célula do jeito que quiser, no meu caso apenas redimensionei para o tamanho de minha viewController, e adicionei 5 labels e lhes dei nomes, nosso .h da célula ficou da seguinte maneira :

@property (weak, nonatomic) IBOutlet UILabel *labelCampoSuperiorEsquedo;

@property (weak, nonatomic) IBOutlet UILabel *labelCampoInferiorEsquerdo;

@property (weak, nonatomic) IBOutlet UILabel *labelCampoSuperiorDireito;

@property (weak, nonatomic) IBOutlet UILabel *labelCampoInferiorDireito;

@property (weak, nonatomic) IBOutlet UILabel *campoCentro;

Bom pelo nome dos campos, podemos deduzir onde fica cada um deles, e assim ficou nosso XIB:

celulaCustomizada

Nossa ViewController tem apenas um método que ainda não mostrei como funciona o metodo, heightForRowAtIndexPath. Que por sua vez tem uma função muito simples definir o tamanho da célula como a minha tem o tamanho de 85, apenas preciso de um retun 85, caso nossa célula fosse maior bastava alterar o valor de retorno do método.

– (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

{

return 85;

}

Em nosso cellForRowAtIndexPath onde precisamos fazer algumas pequenas alterações:

CelulaTableViewCell *cell = (CelulaTableViewCell *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

Onde criamos nossa célula, CelulaTableViewCell é o nome de nossa classe, lembrando que se você não consegue visualizar o nome da classe, possivelmente você esqueceu de importar a classe.

Vamos agora fazer um if

if (cell == nil) {

NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@”CelulaTableViewCell” owner:self options:nil];

cell = [nib objectAtIndex:0];

}

O cell = [nib objectAtIndex:0]; indica que dentro do nosso Xib vamos usar a célula 0 , o xib poderia ter varias celulas dentro, porem isso vai ficar para outro post.

Agora importamos nossa cell, precisamos enviar os dados para os campos dentro ca cell. E isso é bem simples vamos pegar nossa célula, dissemos que nosso Xib é nosso cell logo os metodos do Xib estão instanciados dentro de cell, portanto para acessar nossos métodos precisamos apenas do seguinte código:

cell.labelCampoInferiorDireito.text = @”1″;

cell.labelCampoInferiorEsquerdo.text = @”2″;

cell.labelCampoSuperiorDireito.text = @”3″;

cell.labelCampoSuperiorEsquedo.text = @”4″;

cell.campoCentro.text = @”5″;

se compilarmos agora nosso código já teria sua cell customizada isso claro partindo do principio que você não se esqueceu do método numberOfRowsInSection, se não teremos um erro.

– (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

return 5;

}

Coloquei um return 5 apenas para demonstrar outra coisa sobre o tabelas que é bem interessante dentro das tabelas temos as propriedades, e uma delas é a indexPath, que nos diz em qual celula da tabela nós estamos, e com isso podemos fazer N coisas diferentes, como por exemplo intercalar a cor das células de nossa tabela de uma maneira extremamente simples:

if (indexPath.row % 2){

cell.backgroundColor = [UIColor greenColor];

} else {

cell.backgroundColor = [UIColor yellowColor];

}

Com esse código pegamos o o módulo que é o retorno da divisão, e baseado nesse retorno podemos dizer que nossa linha é “impar”, ou “par”, e com essas informações em mãos podemos intercalar as cores.

Esse claro foi apenas um uso extremamente simples de como fazer uma célula customizada, temos uma infinidade de componentes que podemos usar, e efeitos que podemos criar.

Aplicativos, o que tem a ver com hospedagem

aplicativos e hospedagem de sites

Se eu fizer um aplicativo preciso de hospedagem de site, ou preciso somente de um banco de dados ou não preciso de nenhuma dessas opções? Como posso saber e escolher a melhor opção?

Atualmente os aplicativos Android normalmente ficam armazenados na Google Play e os aplicativos iOS na Apple Store. Existem outros métodos para armazenar seus aplicativos online sem ser estas duas plataformas, como a http://www.diawi.com/ para iOS e http://www.androidlista.com.br para Android, bem como existem vários outros. Este não é nosso foco bem como é algo que pode ser utilizado para outros fins que não abordaremos hoje.

A resposta à pergunta acima é simples: depende da sua aplicação pois todas as formas são válidas de acordo com o objetivo do seu aplicativo. Mais complicado é decidir qual forma utilizar e como utilizar.

Qual o tipo de aplicativo mais fácil e mais barato para ser utilizado?

Claramente o que não precisa de hospedagem, nem banco de dados externo, sequer conexão com APIs externas. Existem milhares de aplicativos que funcionam assim, por exemplo Motorista da rodada (Android / iOS) ou Alcool x gasolina (Android / iOS), ambos utilizam dados somente no aplicativo. Você pode utilizar banco de dados do próprio celular para guardar as informações do usuário.

E se eu quiser fazer login social?

Neste caso, precisaremos acessar a internet e recuperar esses dados normalmente por meio de uma API. Dará um pouco mais de trabalho, porém ainda não é necessário ter uma hospedagem nem banco de dados, afinal estamos conectando diretamente no Facebook ou Google+, ou seja, sem custo para o desenvolvedor e/ou cliente.

Poxa, se posso usar até Facebook e Google+ então quando é que vou precisar de um banco de dados ou hospedagem de site para meu aplicativo?

Assim que precisar guardar dados dos usuários na nuvem ou atualizar dados do aplicativo de forma dinâmica ou ainda para autenticar o usuário pelo seu sistema. Aplicativos deste tipo são os mais complexos para serem criados pois utilizam conexão com banco de dados externo ou XML hospedado em seu site demandando bastante trabalho de tratamento de dados. Exemplo Angry Birds, Vale Cidades, Facebook, What’s app etc.

aplicativos-apple-store aplicativos-google-play

Ok, então vou precisar de um banco de dados para criar meu ranking e atualizar novos dados diariamente, e agora?

Podemos recorrer a variadas plataformas para utilizar somente o banco de dados ou podemos utilizar uma hospedagem de site (que normalmente já vem com opção de criação de bancos de dados) para hospedar os dados da minha aplicação. Caso hajam dúvidas podemos fazer um novo artigo a respeito de hospedagem de sites ou comentem.

Para utilizar uma plataforma de banco de dados, normalmente você já terá um site, logo, uma hospedagem com gerenciamento, caso contrário, contrate uma hospedagem de uma das milhões de empresas que prestam esse serviço. Em outro dia falarei mais detalhadamente a respeito dos prós e contras de hospedagem de site e como descobrir se seu site está em um lugar confiável ou não.

Após contratar uma nova hospedagem que tem preços que variam de R$1,00 (acreditem, já encontrei rs) a R$100,00/mês seu primeiro passo será criar um banco de dados e fazer a integração. Esta será feita de acordo com cada um dos softwares nativos ou híbridos como phonegap por exemplo.

De acordo com o volume de acesso à sua aplicação podem ser necessários serviços mais exclusivos ou escaláveis como servidores cloud, servidores dedicados ou ainda o Google Cloud Plataform ou AWS da Amazon. Certamente os custos são muito mais altos de acordo com o volume de acesso, persistência das conexões, volume de dados trafegados, picos etc.

Especificamente, estes serviços Google e Amazon tem um período gratuito, cada um com suas condições. Para maiores detalhes acesse:  https://cloud.google.com/products/ e http://aws.amazon.com/pt/. Caso necessitem de maiores informações sobre o funcionamento, entrem em contato diretamente com eles ou me avisem que farei um novo artigo a respeito.

Certo, meus primeiros apps não tem necessidade de banco de dados, porém meu atual será 100% baseado em banco de dados e não sei como integrar isso, o que faço agora?

Isso é tema para o próximo post, até lá.

Como desenvolver aplicativos para Android

Fala galera!

A partir de agora vamos começar uma série de tutoriais sobre como desenvolver aplicativos para Android, desde aplicativos simples até aplicativos mais complexos que requerem conhecimentos específicos.

O que é Android?

Android é o sistema operacional da Google para dispositivos móveis, baseado no núcleo Linux. Lançado em 28 de setembro de 2008, o Android possui código aberto e trabalha com arquiteturas ARM, MIPS, Power e x86. Mais informações em www.android.com.

Quais são as ferramentas necessárias para começar a desenvolver aplicativos?

Inicialmente, você precisará de uma ideia para aplicativo! E também possuir conhecimento na linguagem de programação Java.

NÃO é necessário ter um telefone para testar seu aplicativo, você poderá fazê-lo por meio de emuladores.

Para começar, é necessário montar seu ambiente de desenvolvimento. Para tal, você precisa seguir os passos abaixo:

Download Java SDK

Após baixar e instalar o Java SDK (padrão next, next, nextfinish), baixe o Eclipse e descompacte o arquivo em algum diretório do seu computador. Eu utilizo o Eclipse Indigo, e descompacto o arquivo em um diretório Android que crio na raiz C:, porém você pode escolher qualquer outro diretório.

Download Eclipse

O próximo passo é baixar e instalar o Android SDK. Na página do site Android, é recomendado baixar o arquivo executável, porém baixe a versão zipada (para evitar problemas de permissão do Windows) e descompacte na mesma para em que está o Eclipse.

Download Android SDK

Depois de descompactar, execute o SDK Manager para baixar uma SDK do Android. Na lista de downloads, marque as opções Tools e Extras, e selecione qual ou quais versões do Android deseja.

Android SDK Manager

Vamos agora configurar o Eclipse. Vá até o seu diretório e execute o programa. Inicialmente, ele irá perguntar sobre qual workspace deve ser utilizada. A workspace é o diretório onde ficarão todos os seus projetos do Eclipse. Basta confirmar a padrão.

Para adicionar o Plugin ADT, clique no menu Help Install New Software, e na janela que abrir, clique em Add. Na próxima tela, digite o nome do plugin (ADT Plugin) e coloque a URL https://dl-ssl.google.com/android/eclipse no campo Location. Clique em OK e aguarde o carregamento do repositório. Depois de concluir, deixa a caixa Developer Tools marcada e clique em Next duas vezes. Aceite os termos de licença e clique em Finish. Provavelmente você será perguntado sobre conteúdo não-assinado. Neste caso, clique em OK para continuar.

Download ADT Plugin

Ao final da instalação, reinicie o Eclipse para concluir o processo. Depois, configure o local onde as SDKs estão instaladas: vá no menu Window Preferences, selecione a opção Android, clique no botão Browse… e indique o diretório onde você descompactou o Android SDK. Logo abaixo serão listadas as versões que você baixou.

Configurar Android SDK

E pronto! Seu ambiente de desenvolvimento está configurado e pronto para ser utilizado.

Como desenvolver aplicativos para Android

Nas próximas semanas, vamos aprender a criar aplicativos básicos e aprender dicas de programação para Android.

Até mais, galera!

UI Kit Design para Desenvolvimento iOS e Android

Aposto que você tem uma ideia e não sabe bem por onde começar certo? Calma no começo é assim mesmo, mas vou avisando, não existe “melhor ferramenta” e sim aquela a qual você vai se adaptar melhor. Então tentei reunir aqui os primeiros passos para você inicializar a customização do seu primeiro aplicativo iOS / Android.

Kit de Design para Desenvolvimento Android

1.  Android Developers

android-developer
Encontre aqui padrões de fluxo de amostra de usuário, simulações de design, kit UI, coleções de bar icon e stencils para celulares e tablet. A aprovação do seu aplicativo Android na Google Play demora em torno de 1 dia no máximo.

2. Google Material Design

material-design

Depois do evento do Google I/O um dos novos serviços anunciados neste evento foi o padrão de interface chamado Material Design.  Ele estabelece padrões de ícones, cores, animações, tipografia e hierarquias, com isso o Google pretende unificar interfaces no Android, Chrome OS e serviços web.

3.  Google Material  Design para Bootstrap

material-design-google
O Google Material Design para Bootstrap é um tema Bootstrap 3, que lhe permite utilizar o novo design de materiais Google em seu editor de front-end favorito. Isso mesmo, tudo prontinho pra você que pretende iniciar um Aplicativo Híbrido.  S2

4. App Icone Android

app-icon-android

Automatize o processo de geração de ícones para a Google Play.  Utilize actions do Photoshop que acompanham esse arquivo para exportar seus ícones em vários formatos.

Kit de Design para Desenvolvimento iOS

1. Theme Tethr
tethr

No Theme Tethr você encontrará 8 arquivos PSD, 138 modelos de APPs com mais de 200 componentes que podem ser utilizados individualmente no desenvolvimento do seu Aplicativo para iOS.

 2. iOS7 Ícones Template

ios.robs

Automatize o processo de geração de ícones para a Apple Store.  Utilize actions do Photoshop que acompanham esse arquivo para exportar seus ícones em vários formatos.

 3. Hig da Apple
hig-apple

Conheça a filosofia de design de interface do usuário e princípios fundamentais da Apple. Isso facilitará a aprovação do seu aplicativo na Apple Store. Atualmente demora pelo menos 1 semana para aprovação que é bem rigorosa por sinal! #FicaDica