当前位置: 首页 > 知识库问答 >
问题:

Android Studio和Intellij Idea之间的插件差异?

汝宏伯
2023-03-14

我们有一个现有的java代码库,在那里我们使用intellij idea进行开发。

如果我们将Intellij Idea与各种Android支持插件一起使用,这些插件是否与Android Studio中的插件相同?有了这套插件,程序实际上是可以互换的吗?

(我确实注意到Android Studio中没有“ant”支持。虽然我所需要的只是一些从IDE调用可执行文件的能力,其中包含一组菜单可配置项,用于各种命令--我现在使用intellij ant支持来实现这一点,因为它是可用的)

Intellij是谷歌的“官方”工具,Android Studio的发布会一直滞后吗。

如果它们显著不兼容,那么在两个系统之间使用公共资源和工具的最简单方法是什么?

共有1个答案

石思淼
2023-03-14

在过去,Android Studio中没有安装了Android插件的IntelliJ IDEA中没有的功能。然而,自创立以来,Android Studio不断壮大,与IntelliJ IDEA的分歧越来越大,尤其是最近。现在Android Studio中捆绑的一些插件与IntelliJ IDEA不兼容。其中一个例子是2019年6月首次发布的Android APK支持。此外,还有一些与Android Studio捆绑在一起的基于Android的插件甚至没有在JetBrains插件网站上列出(此时),比如“Android Games”、“Android NDK支持”、“应用链接助手”等等。

因此,此时最好使用Android Studio进行Android项目,并使用IntelliJ IDEA进行任何辅助开发,如服务器端应用程序。

JetBrains Toolbox应用程序可以方便地同时安装和使用这两个IDE。它还使升级(如果需要的话,还可以回滚)变得非常容易。该工具箱在年前刚问世时并不支持Android Studio。因此,选择一个或另一个更多的是一个“问题”。此外,通过使用Settings Repository插件(绑定在两个IDE中),您可以轻松地保持两个IntelliJ平台IDE之间的设置同步。(请参阅IntelliJ IDEA文档中的“通过设置存储库共享设置”。)因此,在Toolbox应用程序和Settings Repository插件之间,只需同时使用两者就很方便(IMHO)。

首先,免责声明...我在IntelliJ Idea中做所有的工作时,只是轻轻地使用了Android Studio。但我从2003年起就一直是IntelliJ IDEA的狂热用户。

由于Android Studio似乎主要是Intellij的一个修改版,我的问题是Android Studio是否有一些不可或缺的特定功能?不相容?“标准”?vs Intellij Idea社区还是Ultimate?这两个是可以互换的一个适当的插件集?

基本上,Android studio对Android的“品牌化”要比IntelliJ IDEA更多。而且既然只是一款AndroidIDE,就可以更加“专注”。就像我提到的,在Android Studio里没有什么是你在Intellij IDEA里做不到的。但反之亦然。在IntelliJ IDEA(社区版和终极版)中有很多(非Android版)可以做的事情,而在Android Studio中是做不到的。

Intellij是谷歌的“官方”工具,Android Studio的发布会一直滞后吗。

它可以是双向的。JetBrains可能会添加一些需要时间才能打到Android Studio的东西;谷歌可能会添加一些需要时间才能达到IntelliJ理念的东西。然而,最有可能的是,后者将更为普遍。不过,我一时也不知道这拖延了多长时间。JetBrians的这篇博文可能会在这方面有所帮助:IntelliJ IDEA和Android Studio常见问题解答

我个人的建议是:如果你知道你只会做Android开发,那么就选择Android Studio。另外,新的Android开发人员可能会发现Android Studio更适合,因为大多数文档和教程都会显示它,而且IntelliJ IDEA中可能偶尔会有一些小的差异(比如某些东西在菜单中的位置)。但是,如果您将使用Java、Kotlin、Groovy和/或Scala或其他语言(Python、php、html、css、JavaScript等)或任何服务器端(或“企业”)代码在JVM专用项目中工作--无论是用于您的Android应用程序还是用于其他工作,那么就使用IntelliJ IDEA。

编辑于2018年8月4日进行了一些澄清,并添加了一张截图。

2019年11月25日更新,添加新信息。

 类似资料:
  • 本文向大家介绍硬件和软件之间的差异。,包括了硬件和软件之间的差异。的使用技巧和注意事项,需要的朋友参考一下 硬件 硬件代表计算机的物理组件,例如其电子部件。例如,CPU,内存,硬盘,显示器,打印机,鼠标等。 软件 软件,代表在计算机系统上执行不同任务的程序。它是由CPU执行的编程代码,可以从键盘,鼠标等输入设备获取指令,并可以在监视器,打印机等输出设备上显示输出。例如MS Word,Google

  • 问题内容: 很快就有两个相等运算符:double equals( )和Triple equals( ),两者之间有什么区别? 问题答案: 简而言之: 操作员检查其实例值是否相等, 操作员检查引用是否指向同一实例, 长答案: 类是引用类型,可能有多个常量和变量在幕后引用类的同一单个实例。类引用保留在运行时堆栈(RTS)中,其实例保留在内存的堆区域中。当您控制平等时, 这意味着它们的实例是否彼此相等。

  • 我编写了一个简单的脚本,它接受任意数量的参数来演示< code>$@和< code>$*之间的区别: 在我做的 CLI 上 这就是打印出来的 因为它们是相同的,这是否意味着等于?还是我遗漏了一点?

  • 问题内容: package main 该代码可以很好地工作。但是,如果按如下所示更改方法,则会导致死循环。区别在于将替换为。为什么? 问题答案: 因为程序包检查要打印的值是否具有方法(或换句话说:是否实现接口),如果是,则将调用它以获取值的表示形式。 软件包doc中对此进行了说明: […]如果操作数实现String()字符串方法,则将调用该方法将对象转换为字符串,然后根据动词的要求对其进行格式化(

  • 我正在通过做微控制器项目来自学C++。我当前的项目是使用一对或Adafruit羽毛分组无线电。无线电数据包的库函数需要一个C样式的字符串(我相信),我理解它是一个char的数组。 我已经设置了一个枚举来反映接收方的各种操作,并希望将该状态发送回发送方。所以我想把枚举变成char的数组。 在搜索将枚举转换为char数组的方法时,最简单的方法(对我来说)是将枚举变量传递给带有switch语句的函数,该

  • 我是Hadoop的新手。我正在浏览专业Hadoop解决方案的书,以获得一些关于Hadoop和生态系统的知识。我想澄清HDFS和HBase之间的主要区别是什么。我理解的方式就像两者都是存储系统。它们的区别只是在访问数据方面。HBase通过非关系型数据库访问数据,HDFS使用计算框架(MapReduce)处理数据。如果是这种情况,为什么我们不能只有一个存储HDFS或HBase。根据需求,他们将插入和插