Temos uma base de código Java existente onde usamos a ideia intellij para desenvolvimento.
Estamos construindo um aplicativo Android no qual compartilharemos código e outros recursos com o código pré-existente e a base de recursos.
Como o Android Studio parece ser principalmente uma versão modificada do Intellij, minha pergunta é: existem recursos totalmente específicos que o Android Studio possui que são indispensáveis? Incompatível? "Padrão"? vs comunidade Intellij Idea ou final? Os dois são intercambiáveis com um conjunto de plug-ins adequado?
Se fôssemos usar o Intellij Idea com os vários plug-ins de suporte do Android, esses plug-ins são iguais aos que vêm com o Android Studio? Com este conjunto de plug-ins, os programas serão virtualmente intercambiáveis?
(Eu percebi que o suporte "ant" não está no Android Studio. Embora tudo que eu preciso seja alguma capacidade de invocar executáveis do IDE com um conjunto de entradas configuráveis de menu para vários comandos - eu agora uso o suporte intellij ant para fazer isso porque estava disponível)
O Intellij sempre estará atrasado em relação aos lançamentos do Android Studio, pois é a ferramenta "oficial" do Google.
Se eles forem significativamente incompatíveis, qual é a maneira mais fácil de usar recursos e ferramentas comuns entre os dois sistemas?
Respostas:
Resposta atualizada em novembro de 2019
No passado, não havia funcionalidade no Android Studio que não estivesse presente no IntelliJ IDEA com o plug-in Android instalado. No entanto, desde o seu início, o Android Studio cresceu e divergiu cada vez mais do IntelliJ IDEA, especialmente recentemente. Agora, existem alguns plug-ins agrupados no Android Studio que não são compatíveis com IntelliJ IDEA. Um exemplo é o Android APK Support, lançado pela primeira vez em junho de 2019. Além disso, existem alguns plug-ins baseados no Android agrupados com o Android Studio que nem mesmo estão listados no site de plug-ins do JetBrains (no momento), como "Jogos Android", "Android NDK Support", "App Links Assistant", entre outros.
Portanto, neste momento, é provavelmente melhor usar o Android Studio para projetos Android e usar o IntelliJ IDEA para qualquer desenvolvimento auxiliar, como aplicativos do lado do servidor.
Como usar ambos facilmente
O JetBrains Toolbox App facilita a instalação e o uso dos dois IDEs lado a lado. Também torna a atualização (e reversão, se desejado) muito fácil. A caixa de ferramentas não era compatível com o Android Studio quando foi lançado, anos atrás. E, portanto, escolher um ou outro era mais um "problema". Além disso, usando o plug-in do repositório de configurações (incluído em ambos os IDEs), você pode facilmente manter as configurações entre os dois IDEs da plataforma IntelliJ em sincronia. (Consulte Compartilhar configurações por meio de um repositório de configurações na documentação do IntelliJ IDEA.) Portanto, entre o aplicativo Toolbox e o plug-in do repositório de configurações, é conveniente (IMHO) apenas usar ambos.
Formulário de resposta anterior (desatualizado) de junho de 2015
Em primeiro lugar, uma isenção de responsabilidade ... Usei apenas levemente o Android Studio enquanto faço todo o meu trabalho no IntelliJ IDEA. Mas sou um usuário ávido do IntelliJ IDEA desde 2003.
A resposta rápida é que não há nada que você possa fazer no Android Studio que não possa ser feito no IntelliJ IDEA (Community ou Ultimate) com o plug-in do Android instalado e ativado. Aqui está uma captura de tela da matriz de recursos do IntelliJ IDEA que mostra esse ponto:
Basicamente, o Android Studio tem mais "marca" para o Android do que o IntelliJ IDEA. E como é apenas um IDE Android, pode ser mais "focado". Como mencionei, não há nada que você possa fazer no Android Studio que não possa ser feito no Intellij IDEA. Mas o oposto não é verdade. Existem várias coisas (não relacionadas ao Android) que você pode fazer no IntelliJ IDEA (tanto a comunidade quanto as edições finais) que você não pode fazer no Android Studio.
Em relação à questão se o Android Studio pode ou não usar os plug-ins IntelliJ IDEA, isso vai depender do plug-in e de quais componentes (dentro da API do plug-in IntelliJ) ele aproveita. Ao escrever um plugin, você deve declarar (em seu descritor de plugin) quais dependências de API você usa. Alguns exemplos são
com.intellij.modules.lang
,com.intellij.modules.java
,AntSupport
, eGit4Idea
. Existem dezenas, senão centenas, de possibilidades - incluindo outros plug-ins. Portanto, se um plug-in (ou uma de suas dependências) acabar usando algo na API do plug-in que não está incluído no Android Studio, esse plug-in não funcionará. Por exemplo, um plug-in que escrevi (que não tem absolutamente nada a ver com desenvolvimento móvel), lista na página JetBrains Plugin como sendo compatível com o Android Studio porque depende apenas decom.intellij.modules.lang
ecom.intellij.modules.java
. Portanto, embora possa ser dos dois lados, é mais provável que (devido ao IntelliJ IDEA ter mais componentes instalados) um plug-in só seja compatível no IntelliJ IDEA como resultado de uma dependência de algo exclusivo desse plug-in.Ele pode ir nos dois sentidos. JetBrains pode adicionar coisas que demoram para chegar ao Android Studio; e o Google pode adicionar coisas que demoram para chegar ao IntelliJ IDEA. É mais provável, entretanto, que o último seja mais prevalente. No entanto, não sei de antemão quanto tempo é esse atraso. Esta postagem no blog do JetBrians pode ajudar nesse sentido: Perguntas frequentes sobre IntelliJ IDEA e Android Studio
Minhas recomendações pessoais seriam: se você sabe que só fará desenvolvimento para Android, escolha o Android Studio. Além disso, os novos desenvolvedores Android provavelmente acharão o Android Studio uma opção melhor, já que a maioria da documentação e tutoriais irão mostrar isso e pode haver uma pequena diferença ocasional (como onde algo está localizado em um menu) no IntelliJ IDEA. Mas se você vai trabalhar em projetos JVM dedicados usando Java, Kotlin, Groovy e / ou Scala, ou com outras linguagens (Python, php, html, css, JavaScript, etc., etc.) ou qualquer servidor (ou "empresa ") código - para seus aplicativos Android ou para outro trabalho, então vá com IntelliJ IDEA.
Editado em 4 de agosto de 2018 para alguns esclarecimentos e uma captura de tela adicionada.
Atualizado em 25 de novembro de 2019 para adicionar novas informações.
fonte
Para o desenvolvimento do Android, é melhor usar o Android Studio (a versão 1.3 já está disponível).
Como o Android Studio é baseado em Intellij, sua "curva de aprendizado" não deve ser um problema.
Para usar "recursos comuns", suponho que você esteja se referindo ao código ... e que deve estar em um repositório (git / github / ...).
fonte