Android Studio与其IntelliJ IDEA相比,其差异与利弊主要都有哪些

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Studio与其IntelliJ IDEA相比,其差异与利弊主要都有哪些相关的知识,希望对你有一定的参考价值。

首先想稍微解释一下什么叫做基于”android Studio是基于IDEA开发的"
Intellij有一个非常强大的用XML描述插件系统,他可以在IDE的各个环节加上扩展,
比如欢迎界面,语言和构建系统的支持,菜单, etc
这些代码以外部资源(jar)的方式加载进IDE,并不需要你去修改Intellij本身的代码。
所以Android Studio最核心的部分就是一个Intellij插件(Android Support Plugin),那么最初Android Studio和直接用Intellij + Android插件的区别就似乎就只是一些启动flag的问题(比如说要有一个flag表明这是不是专门的android studio模式,导致欢迎界面有些不同)
但实际上的差别还是特别大的。
1. 基本功能上
首先intellij里面的Android Support plugin落后Android Studio里面的Plugin很多版本(有时候会有半年甚至半年以上的GAP),这是因为Intellij发布在先,之后Google才会跟进开发,等Android Studio发布了之后,Intellij那边再把Google的plugin拿过去测试并发布
其次为了让用户体验更好,在Android Studio模式下,插件会提供更定制化的界面,比如“模块设置”等功能
另外Google发现很多外部插件和Android Plugin会有冲突,所以对外部插件的支持不是很积极。
2. 语言支持上
发行版的Android Studio其实包含了不止Android Support插件,还会包含NDK插件(支持C++的开发),这是Google花重金向Jetbrains购买的C++代码分析和索引技术,这些技术之前只用在收费的Clion上面,现在虽然Google能让大家能在Android Studio中也能免费用上。但单独用免费的Intellij是没有这个好处的。
之后也会有更多的功能因为各种限制不会放在Android Support插件中而只能使用Studio.
3. 软件质量
需要对开发团队强调的是,Android Studio比Intellj + Android插件要稳定很多
看过Intellij代码的童鞋可能有感觉就是就是代码注释特别少,测试特别简单
Google的开发观念还是不太一样的,所以Google在开发Android Studio的过程中加入了大量的单元和集成测试,但不幸的是这些测试都只是专门跑在Android Studio的模式下,很多测试已证实在Intellij模式下会挂掉,但这个google修理得确实不太积极:(
-> 虽然 2013 年的官方文档说 AS 不是 idea 的 fork,但现在是 2016 年,二者的差别似乎不只因为配置不同了
UI上的不同,像我之前提到过,主要还是插件在不同模式下做的事情不同,而不是代码fork的问题
Google的原则是尽量不fork,不过事实上也确实很难做到,比如Intellij的日志诊断系统在Android Studio下面就被改掉了(不然bug report都发到jetbrain去了)。原因主要还是Intellij的插件系统还没有非常完美,对此Google会尝试交一些patch给Intellij,争取之后能再改回来。
另外就是有时候Intellij也会fork Google的Android plugin的代码,两边相互扯皮之事也时有发生。。。
参考技术A

可以从以下几个方面简单问题:

    从基本功能上

    intellij里面的Android Support plugin落后Android Studio里面的Plugin很多版本(有时候会有半年甚至半年以上的GAP),这是因为Intellij发布在先,之后Google才会跟进开发,等Android Studio发布了之后,Intellij那边再把Google的plugin拿过去测试并发布。

    语言支持上
    发行版的Android Studio其实包含了不止Android Support插件,还会包含NDK插件(支持C++的开发),这是Google花重金向Jetbrains购买的C++代码分析和索引技术,这些技术之前只用在收费的Clion上面,现在虽然Google能让大家能在Android Studio中也能免费用上。但单独用免费的Intellij是没有这个好处的。

    软件质量
    需要对开发团队强调的是,Android Studio比Intellj + Android插件要稳定很多
    看过Intellij代码的童鞋可能有感觉就是就是代码注释特别少,测试特别简单
    Google的开发观念还是不太一样的,所以Google在开发Android Studio的过程中加入了大量的单元和集成测试,但不幸的是这些测试都只是专门跑在Android Studio的模式下,很多测试已证实在Intellij模式下会挂掉,但这个google修理得确实不太积极:

    就是方便程度上,Android studio 系统集成了很多jar开源很好的框架,直接调用,减少了很多jar包的添加,让编程更简单。

参考技术B as是基于idea的,google官方支持的是as,as是一个纯粹的Android开发环境,而idea号称最稳定的java开发环境。
相同点:as本来就是基于idea的二次开发,界面操作都是一样的,只是google专门对android进行插件开发而已。
不同点:
从使用上来说:但是idea可以很容易的在eclipse上面切换android项目,而不被更改架构,但是as会更改项目目录结构。
从功能上来说:肯定as支持android好一些,google花在上面的精力直接都导致之后不会支持eclipse了。

更改 Android Studio/IntelliJ 的 xcrun 开发者路径

【中文标题】更改 Android Studio/IntelliJ 的 xcrun 开发者路径【英文标题】:change xcrun developer path for Android Studio/IntelliJ 【发布时间】:2015-10-13 07:18:45 【问题描述】:

我正在使用 GIT 并尝试推送我的代码并在使用 Terminal 时收到以下错误。我不使用 XCode,我使用的是 Android Studio

我尝试使用的命令是:

git 分支网络

错误:

xcrun:错误:无效的活动开发者路径 (/Library/Developer/CommandLineTools),缺少 xcrun:/Library/Developer/CommandLineTools/usr/bin/xcrun`

如果有任何帮助,我正在运行 El Capitan Beta 4 更新。


更新IntelliJ 用户和 MacOS 也会发生这种情况 卡特琳娜更新

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,但是svn。我发现通过安装 El Capitan,Xcode 被“卸载”了。我从 App Store 重新安装了 Xcode,然后通过终端重新安装了 Xcode 命令行工具

xcode-select --install

安装后,我的/Library/Developer/CommandLineTools/usr/bin目录又出现了,svn又开始工作了。

【讨论】:

谢谢你,但我没有使用 XCode,我使用的是 Android Studio 我应该注意到我也没有使用 Xcode 进行开发。我正在使用 IntelliJ。 gitxcrun 的一个版本作为 Xcode 命令行工具的一部分分发(这是您的 git 当前配置为从中执行的位置)。如果您自己安装了git(例如/usr/local/bin),则可能需要将您的alias 重新配置为git 以指向您的安装而不是默认安装。 运行xcode-select --install 为我安装固定git 的Xcode 命令行工具。无需安装整个 Xcode。 答案对于 El Capitan 的最终版本也很有用。它使 git 工作。 这似乎每隔几个 Apple OS 版本就会发生。我想知道他们是否意识到这一点。【参考方案2】:

您可以从here 安装git,而不是安装xcode,并将android studio 中的路径更改为/usr/local/git/bin/git,如下图所示。

这样可以节省时间和内存。

【讨论】:

确实节省了我的时间!谢谢@Atrix1987 这应该被标记为答案。他要求 android studio 并标记为 Xcode 答案。不知道他怎么了?顺便感谢您的解决方案。 在更新到 macOS Mojave 之后,这正是 Android Studio 中的建议,从这个链接安装 git。但是您的回答有助于快速设置正确的路径。 2020 年更新:在 Catalina 更新 2018 MBP 之后发生在我身上。用自制软件安装git,路径为:/usr/local/bin/git【参考方案3】:

在我的情况下,Git 在升级 Mac OS X High Sierra 后无法工作。

幸运的是,@Rob 提供的答案仍然适用于 High Sierra,因此我无需实际更改 xcrun 开发者路径,也无需安装所有 XCode

【讨论】:

【参考方案4】:

升级到 macOS Mojave 后我丢失了 Git。

重新安装 XCode CLI 的解决方案仍然可以正常工作。

在终端中,输入:

xcode-select --install

...并在提示符下单击“安装”。

【讨论】:

【参考方案5】:

使用 /usr/local/git/bin/git 作为路径

【讨论】:

以上是关于Android Studio与其IntelliJ IDEA相比,其差异与利弊主要都有哪些的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio与其IntelliJ IDEA相比,其差异与利弊主要都有哪些

Intellij (Android studio) 成员变量前缀

Android Studio / Intellij 新建项目向导

将 IntelliJ 设置传输到 Android Studio

Intellij(Android studio)成员变量前缀

Android Studio和IntelliJ IDEA的不同点在啥地方