Sự khác biệt giữa Android Studio và Intellij Idea với plugin?


117

Chúng tôi có một cơ sở mã java hiện có, nơi chúng tôi sử dụng ý tưởng intellij để phát triển.

Chúng tôi đang xây dựng một ứng dụng Android, nơi chúng tôi sẽ chia sẻ mã và các tài nguyên khác với cơ sở tài nguyên và mã có sẵn từ trước.

Vì Android Studio dường như chủ yếu là một phiên bản sửa đổi của Intellij, câu hỏi của tôi là có những tính năng hoàn toàn cụ thể mà Android Studio có mà không thể thiếu không? Không tương thích? "Tiêu chuẩn"? so với cộng đồng Ý tưởng Intellij hay cuối cùng? Cả hai có thể hoán đổi cho nhau với một bộ plugin thích hợp không?

Nếu chúng ta sử dụng Intellij Idea với các plugin hỗ trợ Android khác nhau, thì các plugin này có giống với những gì đi kèm với android studio không? Với bộ plugin này, các chương trình có thể hoán đổi cho nhau không?

(Tôi đã nhận thấy rằng hỗ trợ "kiến" không có trong Android Studio. Mặc dù tất cả những gì tôi cần là một số khả năng gọi các tệp thực thi từ IDE với một tập hợp các mục có thể định cấu hình menu cho các lệnh khác nhau - bây giờ tôi sử dụng hỗ trợ kiến ​​intellij để làm điều này vì nó đã có sẵn)

Liệu Intellij có luôn là những bản phát hành chậm trễ là Android Studio vì nó là Công cụ "Chính thức" của Google.

Nếu chúng không tương thích đáng kể, cách dễ nhất để sử dụng các tài nguyên và công cụ chung giữa hai hệ thống là gì?


3
Tôi đã thực hiện một số nghiên cứu nhưng những câu hỏi này một phần ở đây để loại bỏ tiếng ồn. Tôi tìm thấy nhiều câu hỏi khác thuộc loại này và câu trả lời mà mọi người cung cấp hữu ích. Thường thì những điều đơn giản lại khó tìm ra câu trả lời thực sự nhất. Nếu tôi tìm và trả lời câu hỏi của chính mình bằng bất cứ cách nào và người khác chưa trả lời được thì tôi sẽ làm.
peterk

10
Tôi không thấy một câu hỏi dựa trên ý kiến ​​nào được trình bày ở đây. OP đang yêu cầu những khác biệt kỹ thuật cụ thể.

Hơn nữa, có một câu trả lời hay, đúng chủ đề đang được cập nhật.
Ryan M

Câu trả lời:


79

Cập nhật câu trả lời tháng 11 năm 2019

Trước đây, không có chức năng nào trong Android Studio không có trong IntelliJ IDEA khi cài đặt plugin Android. Tuy nhiên, kể từ khi thành lập, Android Studio đã phát triển và ngày càng tách rời IntelliJ IDEA, đặc biệt là gần đây. Hiện tại có một số plugin đi kèm trong Android Studio không tương thích với IntelliJ IDEA. Một ví dụ như vậy là Hỗ trợ APK Android được phát hành lần đầu tiên vào tháng 6 năm 2019. Hơn nữa, có một số plugin dựa trên Android đi kèm với Android Studio thậm chí không được liệt kê trên trang web JetBrains Plugin (tại thời điểm này), chẳng hạn như "Trò chơi Android", "Hỗ trợ NDK của Android", "Hỗ trợ liên kết ứng dụng", trong số những người khác.

Do đó, tại thời điểm này, tốt nhất bạn nên sử dụng Android Studio cho các Dự án Android và sử dụng IntelliJ IDEA cho bất kỳ sự phát triển phụ trợ nào, chẳng hạn như các ứng dụng phía máy chủ.

Cách sử dụng cả hai dễ dàng

Các JetBrains Toolbox App giúp bạn dễ dàng cài đặt và sử dụng phía hai IDE cạnh nhau. Nó cũng giúp cho việc nâng cấp (và quay lại nếu muốn) trở nên siêu dễ dàng. Hộp công cụ không hỗ trợ Android Studio khi nó ra mắt lần đầu tiên cách đây nhiều năm. Và do đó, chọn cái này hay cái kia là một "vấn đề". Ngoài ra, bằng cách sử dụng Plugin kho lưu trữ cài đặt (đi kèm trong cả hai IDE), bạn có thể dễ dàng giữ đồng bộ cài đặt giữa hai IDE nền tảng IntelliJ. (Xem Chia sẻ cài đặt thông qua kho cài đặt trong tài liệu IntelliJ IDEA.) Do đó, giữa Ứng dụng Hộp công cụ và Plugin Kho lưu trữ Cài đặt, thật thuận tiện (IMHO) chỉ cần sử dụng cả hai.


Mẫu câu trả lời trước (Đã lỗi thời) tháng 6 năm 2015

Đầu tiên, tuyên bố từ chối trách nhiệm ... Tôi chỉ mới sử dụng nhẹ Android Studio khi tôi thực hiện tất cả công việc của mình trong IntelliJ IDEA. Nhưng tôi đã là một người dùng cuồng nhiệt của IntelliJ IDEA từ năm 2003.

Vì Android Studio dường như chủ yếu là một phiên bản sửa đổi của Intellij, câu hỏi của tôi là có những tính năng hoàn toàn cụ thể mà Android Studio có mà không thể thiếu không? Không tương thích? "Tiêu chuẩn"? so với cộng đồng Ý tưởng Intellij hay cuối cùng? Cả hai có thể hoán đổi cho nhau với một bộ plugin thích hợp không?

Câu trả lời nhanh là bạn không thể làm gì trong Android Studio mà bạn không thể làm trong IntelliJ IDEA (Community hoặc Ultimate) khi đã cài đặt và bật Trình cắm Android. Đây là ảnh chụp màn hình từ ma trận các tính năng IntelliJ IDEA tạo nên điểm đó: nhập mô tả hình ảnh ở đây

Về cơ bản, Android studio có nhiều "thương hiệu" cho Android hơn là IntelliJ IDEA. Và vì nó chỉ là một IDE Android, nó có thể được "tập trung" hơn. Như tôi đã đề cập, không có gì bạn có thể làm trong Android Studio mà bạn không thể làm trong Intellij IDEA. Nhưng điều ngược lại là không đúng. Có một số việc (không phải Android) bạn có thể làm trong IntelliJ IDEA (cả cộng đồng và phiên bản cuối cùng) mà bạn không thể làm trong Android Studio.

Về câu hỏi liệu Android studio có thể sử dụng plugin IntelliJ IDEA hay không, điều đó sẽ phụ thuộc vào plugin và những thành phần nào (trong API plugin IntelliJ) mà nó sử dụng. Khi bạn viết một plugin, bạn phải khai báo (trong bộ mô tả plugin của bạn) những phụ thuộc API nào bạn sử dụng. Một số ví dụ là com.intellij.modules.lang, com.intellij.modules.java, AntSupport, và Git4Idea. Có hàng tá, nếu không phải hàng trăm, khả năng - bao gồm cả các plugin khác. Vì vậy, nếu một plugin (hoặc một trong những phần phụ thuộc của nó) kết thúc bằng cách sử dụng thứ gì đó trong API plugin không được bao gồm trong Android Studio, thì plugin đó sẽ không hoạt động. Ví dụ: một plugin tôi đã viết (hoàn toàn không liên quan gì đến phát triển di động), liệt kê trên trang Plugin JetBrains là tương thích với Android Studio vì nó chỉ phụ thuộc vào com.intellij.modules.langcom.intellij.modules.java. Vì vậy, mặc dù nó có thể đi theo cả hai cách, nhưng có nhiều khả năng (do IntelliJ IDEA có nhiều thành phần được cài đặt hơn) một plugin có thể chỉ tương thích trong IntelliJ IDEA do phụ thuộc vào một cái gì đó duy nhất cho plugin đó.

Liệu Intellij có luôn là những bản phát hành chậm trễ là Android Studio vì nó là Công cụ "Chính thức" của Google.

Nó có thể đi theo cả hai cách. JetBrains có thể thêm những thứ cần thời gian để truy cập Android Studio; và Google có thể thêm những thứ cần thời gian để đạt được IntelliJ IDEA. Tuy nhiên, rất có thể nó sẽ phổ biến hơn. Tuy nhiên, tôi không biết sự chậm trễ đó là bao lâu. Bài đăng trên blog JetBrian này có thể giúp ích về vấn đề đó: Câu hỏi thường gặp về IntelliJ IDEA và Android Studio

Các khuyến nghị cá nhân của tôi sẽ là: Nếu bạn biết mình chỉ định phát triển Android, thì hãy sử dụng Android Studio. Ngoài ra, các nhà phát triển Android mới có thể sẽ thấy Android Studio phù hợp hơn vì hầu hết các tài liệu và hướng dẫn sẽ hiển thị nó và đôi khi có thể có sự khác biệt nhỏ (chẳng hạn như vị trí của thứ gì đó trong menu) trong IntelliJ IDEA. Nhưng nếu bạn sẽ làm việc trong các dự án dành riêng cho JVM sử dụng Java, Kotlin, Groovy và / hoặc Scala hoặc với các ngôn ngữ khác (Python, php, html, css, JavaScript, v.v.) hoặc bất kỳ phía máy chủ nào (hoặc "doanh nghiệp ") mã - cho ứng dụng Android của bạn hoặc cho công việc khác, sau đó sử dụng IntelliJ IDEA.

Đã chỉnh sửa ngày 4 tháng 8 năm 2018 để làm rõ hơn và thêm ảnh chụp màn hình.

Cập nhật ngày 25 tháng 11 năm 2019 để thêm thông tin mới.


31
Tôi rất ngạc nhiên khi Google không chỉ sản xuất các plugin intellij để hoạt động với phiên bản cộng đồng để chúng tương thích 100%. Tôi đoán nó là điều xây dựng thương hiệu :)
peterk

cảm ơn vì liên kết blog intelli. Nó chắc chắn không xuất hiện trên bất kỳ tìm kiếm nào tôi đã chạy.
peterk

À vâng, xin đặt ra câu hỏi được nghiên cứu kỹ lưỡng (hy vọng sẽ cung cấp cho một linh hồn khác một câu trả lời ngắn gọn tốt :) Đó là: bộ plugin nào là cần thiết để kích hoạt bộ tính năng tương đương trong intellij với những gì được đóng gói sẵn trong Android Studio: )
peterk

2
Câu trả lời tuyệt vời - cuối cùng đã giải thích cho tôi về công cụ nào để đầu tư tài nguyên (thời gian và tiền bạc) của tôi vào - với tư cách là một nhà phát triển solo (độc lập). Những câu trả lời như thế này chỉ là một trong nhiều lý do khiến tôi yêu SO rất nhiều !!
SilSur

3
Vâng, Android Studio có hỗ trợ C ++, Intellij IDEA Ultimate thì không.
Zaffy

0

Để phát triển Android, tốt nhất bạn nên sử dụng Android Studio (bản xem trước 1.3 hiện có sẵn).

Vì Android Studio dựa trên Intellij nên "đường cong học tập" của bạn sẽ không thành vấn đề.

Để sử dụng "tài nguyên chung", tôi giả sử bạn đang đề cập đến mã ... và mã đó phải nằm trong kho lưu trữ (git / github / ...).


Dĩ nhiên tất cả các chung nguồn lực và các dự án ứng dụng riêng của mình là kiểm soát nguồn, và chúng tôi sử dụng git :)
peterk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.