Delphi XE5 para Android – anúncio oficial
Embarcadero acaba de anunciar o Delphi XE5, a grande novidade é o suporte a desenvolvimento para Android. Desde que se iniciou o desenvolvimento do FireMonkey o objetivo foi sempre permitir o desenvolvimento para outras plataformas além do Windows, o que começou com o suporte a Mac e iOS, e agora para Android.
O compilador ARM é baseado na arquitetura LLVM o qual facilitou a possibilidade de se ter o novo compilador Delphi para outras plataformas.
Nas últimas semanas foram publicados diversos artigos na internet sobre esta nova versão, mais precisamente comentando sobre a possibilidade de se compilar o mesmo código para iOS e Android. No mundo mobile a experiência do usuário é um dos fatores criticos para o sucesso da sua aplicação, assim sendo precisamos tomar cuidado com o design da aplicação e não achar que só pelo fato de se ter uma única tela para diferentes plataformas é a solução para se ter produtividade, longe disso.
Recentemente comentei aqui no blog sobre o Android Studio, IDE da Google para desenvolvimento Android, com o lançamento do Delphi XE5 os desenvolvedores ganham mais uma opção para o desenvolvimeto de aplicações para Android que traz uma abordagem diferente e com o “objetivo” de trazer maior produtividade através de um único código em desenvolvimento para iOS e Android.
Hoje podemos destacar os seguintes IDE para Android:
- Android Studio (Google) – Java – FREE – http://developer.android.com/sdk/installing/studio.html
- Eclipse + ADT plugin (Google) – Java – FREE – http://developer.android.com/tools/sdk/eclipse-adt.html
- Xamarin Studio (Xamarin) – C# – COMERCIAL – http://xamarin.com/monoforandroid
- Delphi XE5 (Embarcadero) – Pascal – COMERCIAL – http://www.embarcadero.com/products/delphi
- Oxygene (RemObjects) – Pascal – COMERCIAL – http://www.remobjects.com/oxygene/
Entre outras novidades para Android estão um conjunto de funcionalidades que permite o deploy direto no emulador, debug da aplicação, suporte da RTL, componentes de acesso a dados, etc. Muito similar ao suporte para iOS. Além disso o suporte a iOS 7 através de estilos customizados.
Foram incorporados uma série de funcionalidades relacionadas ao acesso a serviços REST, como os componentes TRestClient, TRestRequest e TRestResponse, mecanismos de autenticação e ferramenta para debug que pode auxiliar durante o uso de desenvolvimento com REST.
Em resumo o foco é o desenvolvimento mobile, agora com o suporte a Android e a possibilidade de compartilhar o mesmo código utilizando o novo compilador ARM e FireMonkey.
É hora de testar e ver se o Delphi XE5 irá atender suas expectativas.
Andreano.
Porque na lista não consta o Lazarus????
Por que eles não pagam royalties?
Oi Euclides, porque o Lazarus ainda não está pronto para Android, ainda falta um bom caminho pra ele.
Não vou recomendar ou mencionar tecnologias que não estejam maduras o suficientes para desenvolvimento Android.
Se tiver bugs o Delphi retornar o crescimento novamente.Agora fica faltando o ferramenta para Boa para Web,não vale RadPHP ou HTMLbuilder.O Caminho mais curto seria uma parceria firme com a Atozed(Intraweb) ou Projeto Raudus.Depois,seria bom um suportar o Linux,o Lazarus já o faz, a bastante tempo,usando bibliotecas gráficas QT e GTK.Creio que o desenvolvimento para Windows Mobile seja o terceiro da fila.
Andreano sobre android en lazarus nose si conoces estas paginas donde andan haciendo cosas con eso.
http://blog.naver.com/simonsayz
http://wiki.lazarus.freepascal.org/Custom_Drawn_Interface/Android
Mauricio, si las conosco, todavia Lazarus no esta en un nivel que yo pueda recomendar
Eu só gostaria que a Embarcadero adotasse outra forma de comercializar seus produtos, como a Apple faz com o Apple Developer Programs, não digo que deveria ser igual, até por que a distribuição dos aplicativos é diferente, mas que o custo fosse menor para compra/atualização, eu tenho certeza que a pirataria diminuiria consideravelmente.
Concordo contigo, eu sou um dos que AMARIAM comprar uma licença, mas o custo é surreal, impossível pra pessoas como eu que ganham R$2.000/mês.
Eu vou pegar o piratão por hora, e fazer uns programas, e assim que conseguir com a grana dos programas quero comprar uma licença embarcadero.
Temos que valorizar o trabalho que estão fazendo pelos delphianos…
Olá Andreano
Ainda estou baixando a versão trial do XE5. Mais pelo que eu vi no site da embarcadero, somente aparelhos com processadores armv7 ou superior irão rodar aplicativos compilados em Android no Delphi. Confirma isso?
Tenho um aparelho com processador armv6 e pelo jeito terei que adquirir outro caso queira testar minhas aplicações.
Oi André,
Procede sim, aplicações feitas com Delphi somente irão rodar em aparelhos que tenham suporte a GPU e processadores ARMv7 com suporte a instruções NEON.
Existem muitas discussões sobre isso pela internet e muitos desenvolvedores considerando isso um problema, grande parte porque muitos mercados ainda tem aparelhos antigos rodando Android.
Não da para esquecer do Titanium (http://www.appcelerator.com/platform/titanium-sdk/) JavaScript – Free
Oi João, Titanium é baseado em Web development, estou apenas mencionando opções de desenvolvimento de apps nativas
Andreano,
O Titanium gera aplicativos nativos. Diferente do PhoneGap que funciona sobre um “webview”, o Titanium gera tanto APK para Android quanto para iOS.
@Tiago,
Sim depois da versão 1.0 eles passaram a compilar, entretanto eu não recomendo por uma série de razões, entre elas ter que escrever toda uma app em JavaScript, custos para se usá-lo, etc.
Andreano sei q n tem muito haver, mas poderia fazer uma analise do XE5? digo pontos positivos e negativos ou os q ainda devem ser melhorados em novas versoes, msm q em uma versao resumida poderia escrever algo?
Espero que esta Tecnologia tenha vida longa.Que não a abandone,assim que aparece o primeiro problema.
O borland/Code Gear/Embarcadero tem lançado coisas interessante nestes ultimo tempos;porém de amadurecerem a soluções eles simplesmente as abandonam;Já aconteceu isto com: CLX(poderia de cito baseada em GTK e não QT),VCL.NET,etc.
Andreano, existe ainda o Basic4android (http://www.basic4ppc.com/). Ele possui uma IDE simples, mas poderosa. Ele usa o Basic e converte o código para Java e é muito produtivo, possui uma rica lista de Libs e extensões, tenho algumas APPs feitas com ele e recomendo. Muito mais simples que usar as IDEs com Java. Diferente do XE5 que gera um código “intermediário” o desempenho é idêntico a uma APP em Java. Particularmente, não gostei do desempenho das APPs geradas com XE5, parecem APPs híbridas.
Código intermediário e código nativo não são opostos?
Porque o Andreano Lanusse falou em app nativa e você disse que gera um código intermediário…
É que isso não ficou muito claro na webinar…
Oi Everton, sobre o Basic4android ele converte o código Basic para Java automaticamente e a APP rodará como fosse criada em Java, com tamanho do APK reduzido e muita rapidez. Também permite criar serviços em background e tudo mais que existe no desenvolvimento utilizando Java (Socket, HTTP, ADMOBI, APIs, etc.) . No Delphi XE5 os APKs gerados são muito grandes, só rodam em dispositivos com versão do android mais recentes (http://blogs.embarcadero.com/davidi/2013/09/13/42863/) e aplicação não roda tão rápida em dispositivos mais fracos, comparando com Apps nativas feitas em Java. Além disso não tenho certeza do suporte a serviços em Background e acesso a APIs. Mas esta versão é a inicial e com certeza a Embarcadero deve realizar ajustes e melhorar o suporte ao Android.
Andreano , estou com grande problema,instalei o delphi xe5 , ativei o emulador com aparece no video da embarcadero segui passp a passo, só que quando vou roda o aplicativo , no emulador do Android, só aparece uma tela preta, o que pode ser isso ?
Será a minha máquina ? que é um Atom ?
Para os que pensam que o “FreePascal – Lazarus” não tem suporte ao Android http://blog.naver.com/simonsayz/120198362100
Uma coisa é a LCL lazarus custom drawn , outra é a RTL do compilador FreePascal.
Quanto ao iOS, : http://pas4mobile.com/
Já testei ambas , e a solução não está muito distante da Embarcadero/FireMonkey não. Inclusive, pelo FPC você consegue suporte ao ARMV6.
Olá
Parece que o XE5 ainda tem bugs. Quando compilamos o um projeto com o XE5 mesmo que simples, com apenas um form, ao copiar o apk para dentro de um smartphone android o programa não roda!
vamos esperar mais alguns updates pra ver o que acontece!!!
O ingresso do Android no Delphi XE5 é um passo importante, mas infelizmente os valores praticados pela Embarcadero tornam o produto praticamente inviável no mercado atendido por programadores independentes e pequenas empresas de software. Uso Delphi desde a versão 3 e paramos de investir em licenças na versão 2007.
Sou um fã de carteirinha do Delphi, mas por força maior $$$ devo confessar que tenho investido tempo e um pouco de dinheiro no Java, se no passado fomos 4 programadores em Delphi aqui na empresa, hoje somos 2 de Java e 1 de Delphi.. não estou dizendo para o Delphi ser free como o Java, mas que os valores fossem acessíveis como eram quando tinha-se a opção de uma edição Professional e não pagar uma Enterprise para criar programas que são usados em rede local.
Abraços
Carlos, eu tomei um grande susto ao receber a proposta de compra do Delphi XE5 Enterprise com preços totalmente fora da realidade para desenvolvedores autônomos ou pequenas Software Houses. Infelizmente notamos que a Embarcadero tem focado nas grandes empresas e tenha deixado de lado o restante.
como está sendo feito o acesso ao SQLServer no android ….com webservices ? Rest ? tem algo nativo ?
Utilizando DataSnap eu testei e foi tranquilo.
Andreano, testando a versão free do delphi XE5, minha primeira preocupação foi acessar as informações do dispositivo para controle de instalação da aplicação, onde ao tentar recuperar o número serial do dispositivo, utilizando o código JStringToString(TJBuild.JavaClass.SERIAL) ele me retornou algo totalmente diferente ao serial real do dispositivo! Esta é uma falha ou erro do programador mesmo?
Obrigado.
Eu gostaria de saber o seguinte: como eu faço para ter o SDK e compilar meu projeto em delphi XE5 ?
Eu tava olhando alguns vídeos é o próprio SDK do android que eu vou usar e importar lá nas opções do Delphi ???
Grato desde já
Gostaria de saber sua opiniao. Enquanto DataSnap Linix nao sai, qual opcao vc considera melhor, levando em consideracao o desempenho e seguranca. O ambiente é o seguinte: Aplicacao cliente (Delphi) conectando a Servidor Linux em hospedagem em Cloud.
1) Programa em delphi conecta diretamete ao banco de dados Linux no Cloud (dbExpress)
2) Programa Delphi (cliente) conecta ao Servidor Datasnap (em Cloud) e o Datasnap conecta ao mysql (Cloud Linux).
Estou dando prioridade ao mysql em Linux, acho mais seguro e melhor desempenho. Qual das duas opcoes é melhor, ou vc tem alguma outra sugestao?
Andreano gostaria de uma analise sua sobre o xe5 mas em especial na parte mobile, vc n poderia fazer algo? sua opiniao experiencias e pontos de vistas sempre foram muito bons