Desenvolvimento de aplicações nativas para ios e android

Post on 28-Jun-2015

824 views 1 download

description

Apresentação com breve introdução ao desenvolvimento mobile, exemplo de ferramentas e publicação na Apple Store e Google Play.

Transcript of Desenvolvimento de aplicações nativas para ios e android

Desenvolvimento de Aplicações Nativas para IOS e AndroidDiogo André Löff

ApresentaçãoDiogo André Löff•Carreira desenvolvida na área de Desenvolvimento de Software, com ampla experiência no gerenciamento de projetos, levantamento de requisitos, implantação e manutenção de sistemas, gestão de equipes e implementação de melhorias. Atuante na área a 15 anos e a 9 anos sócio e diretor da área de desenvolvimento na empresa Logosystem Sistemas.

•Bacharel em Ciência da Computação em 2008 pela UNISUL e Especialização em Engenharia de Projetos de Software em 2011 pela UNISUL.

•Presidente do Núcleo de Base Tecnológica de Criciúma e Região.

Aplicações Móveis• Aplicativos móveis são softwares utilizados para funções especificas divididas

em 4 grandes grupos:

▫ Comunicação: Aplicações que permitam ao usuário interagir com outros usuários como as voltadas para redes sociais, troca de mensagens, etc;

▫ Serviços: São aplicações B2B (Business to Business), aplicações que permitam ao usuário realizar tarefas, como agenda, calculadora, mapas, entre outros;

▫ Entretenimento: São aplicações destinadas à diversão como Jogos;

▫ Informação: Aplicativos que permitem ao usuário realizar pesquisas, como lojas, produtos, endereços entre outros.

• Para ser um aplicativo móvel nativo ele deve ser instalado no sistema operacional do dispositivo. Geralmente os aplicativos são distribuídos diretamente pelos fabricantes do sistema operacional através de uma loja virtual, como Apple Store, Google Play e outros.

Vantagens• Grande de parte dos aplicativos móveis permite ao

usuário sua utilização sem a necessidade de funcionamento online, permitindo armazenamento de dados para utilização sem a conexão com internet;

• A experiência com o usuário é melhorada em virtude de todo ou praticamente todo conteúdo do aplicativo já estar disponível no dispositivo;

• Acesso a diversos dispositivos e sensores disponibilizados pelo fabricante do equipamento, como gps, câmera, bluetooth, entre outros.

Desvantagens• Diversas plataformas e fabricantes de equipamentos, que

algumas vezes dificultam o desenvolvimento, pois não seguem uma padronização;

• Manutenção e atualização dos sistemas operacionais que algumas podem tornar a aplicação incompatível sendo necessário adaptá-la;

• Custo para desenvolvimento elevado, dependendo da linguagem e ferramenta escolhida para o desenvolvimento à empresa necessitará de várias equipes, vários orçamentos e vários cronogramas: Exemplo: Vou desenvolver para IOS utilizando XCode e desenvolver para Android utilizando Java, neste cenário o custo poderá ser elevado.

Requisitos Exigidos

•Devido a grande demanda de aplicativos móveis alguns desenvolvedores pensam em criar uma aplicação, mas não sabem por onde começar, então vamos a alguns pontos que acredito serem os principais.

1 – Foco

•A aplicação que precisa exercer determinada função de forma plena. Por exemplo, no meio corporativo não podemos colocar um ERP (que faz diversas funções) dentro de um dispositivo, e sim devemos desenvolver aplicativos distintos como para força de vendas (digitação de pedido), geomapeamento, relatórios, resumos gerenciais e outros.

2 – Recursos limitados

•Quando pensamos o desenvolvimento para dispositivos móveis precisamos esquecer a forma como trabalhamos com desenvolvimento voltado ao PC. Diferente do PC os dispositivos móveis possuem diversas limitações, as principais são: processamento, memória, resolução e tamanho de tela.

2 – Recursos limitados• Geralmente os desenvolvedores não se preocupam com

estes requisitos quando criam uma aplicação voltada ao PC, pois teoricamente, não possuímos limitação; ▫ “Nada que uma memória a mais ou um processador melhor

não resolva.”

• Já para o desenvolvimento mobile, todos estes detalhes precisam ser bem pensados, pois dependendo da arquitetura que o desenvolvedor escolher poderá rodar o aplicativo em uma gama maior de dispositivos ou não;

• Também o usuário deixará de utilizar a aplicação caso a mesma fique travando.

3 – Aplicações Simples• Quando digo simples quero dizer fáceis de utilizar. A Apple

por exemplo prega a questão da facilidade, uma aplicação deve ser de fácil operação sem a necessidade de leitura de manuais, configurações pelo usuário entre outros.

• Neste requisito entra também a padronização da interface. É recomendado utilizar o padrão do fabricante do sistema operacional desta forma o usuário irá reconhecer de forma intuitiva onde estão os botões, listas, cadastros, etc.

• Se sua aplicação não for fácil, não possuirá muitos downloads, não possuirá comentários (ou possuirá comentários negativos), e se for paga, você não terá lucro.

Desenvolvendo App• Android

▫ Java (Free)▫ Lazaruz (Free)▫ Delphi XE5▫ Visual Studio - Xamarin C#▫ Emulador / Dispositivo

• IOS▫ XCode (Free)▫ Lazaruz (Free)▫ Delphi XE5▫ Visual Studio - Xamarin C#▫ MAC▫ Emulador (Possui limitações para testar dispositivos como GPS,

Camera, entre outros)▫ Dispositivo

Exemplo - Delphi XE5

IDE – Delphi XE5

Compilação – Delphi XE5

Publicando App

Android

•Conta Desenvolvedor Google;

•Reservar o Nome da App;

•Publicar App.

Android – Conta Desenvolvedor• Para criar uma conta de desenvolvedor

Google, é necessário acessar o programa de desenvolvedores no endereço: https://play.google.com/apps/publish/

• Realizar o cadastro e realizar o pagamento de uma taxa de US$ 25,00, aguardar 48 horas para liberação da conta;

• A conta somente é necessária se desejar publicar a app na Google Play.

Android – Reservar o Nome da App•Após liberação da conta de desenvolvedor,

já é possível cadastrar a App, mesmo que não foi desenvolvida;

•É importante cadastrar a App antecipadamente, para verificar se o nome pensado para a mesma esta disponível, uma vez cadastrada a App não será mais possível outro desenvolvedor utilizar o mesmo nome.

Android – Publicar App• Após desenvolver a app, você deve gerar um

arquivo .keystore, que possuirá as informações do desenvolvedor e irá gerar uma chave única para a app protegida por senha;

• Esta chave será responsável por distinguir sua app como única dentro do Google Play;

• O arquivo .keystore e a senha devem ser guardados, para caso seja necessário atualizar a app, se você não possuir estes não será mais possível atualizar a app no Google Play;

• Compilar APK para publicação.

Android – Geração do .keystore

Android – Painel de Controle

Android – Enviando APK

Android – Publicar App• Após publicada a app, é somente aguardar por

volta de 1 hora que a mesma já estará disponível para download no Google Play;

• Para apps que são pagas é necessário realizar o cadastro no Google Merchant e vincular ao Google Play. Para esta situação exige alguns documentos e dados importantes (principalmente no caso de empresas), recomendação é procurar um representante da Google para realizar este cadastro.

IOS

•Conta Desenvolvedor Apple;

•Reservar o Nome da App;

•Publicar App.

IOS – Conta Desenvolvedor• Para criar uma conta de desenvolvedor Apple, é

necessário acessar o programa de desenvolvedores no endereço: https://developer.apple.com/

• Escolher qual o tipo de cadastro irá realizar, se será desenvolvedor particular ou empresa;

• Diferente do Android, para desenvolver IOS é obrigatório possuir a conta desenvolvedor.

IOS – Conta Desenvolvedor• Desenvolvedor Particular: para este tipo de

conta é necessário preencher um cadastro e pagar uma taxa anual de US$ 99,00, aguardar 48 horas para liberação da conta;

• Desenvolvedor Empresarial: para este tipo de conta é necessário preencher um cadastro, pagar uma taxa anual de US$ 299,00, possuir D-U-N-S Number e enviar documentos para a Apple para comprovar a existência da empresa, aguardar a Apple analisar a documentação da empresa.

IOS – Conta Desenvolvedor• Diferenças entre contas Particular e Empresarial:

• 1 – Desenvolvedor particular a aprovação da app pela Apple pode levar até 15 dias uteis, desenvolvedor empresa são 7 dias uteis;

• 2 – Criação de app AdHoc, desenvolvedor particular pode utilizar somente 100 dispositivos AdHoc e cada dispositivo que for utilizado é necessário cadastrar manualmente no painel de desenvolvedor. Empresa pode utilizar até 1000 dispositivos AdHoc e divulgar a app em um webserver particular não necessitando cadastrar manualmente cada dispositivo.

IOS – Reservar o Nome da App•Após liberação da conta de desenvolvedor,

já é possível cadastrar a App, mesmo que não foi desenvolvida;

•É importante cadastrar a App antecipadamente, para verificar se o nome pensado para a mesma esta disponível, uma vez cadastrada a App não será mais possível outro desenvolvedor utilizar o mesmo nome.

IOS – Publicar App• Após desenvolver a app, você deve gerar um

arquivo chamado de certificado de distribuição;

• Gerar um arquivo profile, onde irá indicar se a app é AdHoc ou Store, neste profile deverá ser relacionado o certificado gerado anteriormente;

• Atrelar na app o arquivo profile gerado anteriormente;

• Compilar o pacote para enviar a Apple, no caso de App Store.

IOS – Painel de Controle

IOS – Painel de Controle

IOS – Relacionando o Profile

IOS – Publicar App• Acessar o iTunes Connect para inserir as informações

sobre a app;

• Após inseridas as informações da app, será possível enviar o pacote para publicação;

• Para enviar o arquivo para publicação é necessário um MAC com o Application Loader instalado. Será solicitado o usuário e senha da conta desenvolvedor e já irão aparecer as apps que estão prontas para transferir, selecionar o pacote e enviar, após isto aguardar o retorno da Apple;

• Sempre que existir uma atualização da app, o processo anterior deverá ser repetido.

IOS – Painel de Controle iTunes Connect

IOS – Painel de Controle iTunes Connect

IOS – Publicar App

•Após enviada a app, aguardar o retorno da Apple, e se a mesma for aprovada, o usuário deverá setar a app como disponível para o Apple Store;

•Para apps que são pagas é necessário realizar o cadastro de dados bancários.

Obrigado!

•E-mail: diogo@logosystem.com.br