intellijandroid
A. IntelliJ中編譯Android程序時出錯,錯誤信息如下,求解
好像是OSProcessHandler類中的init初始化部分為空或者含有空,你檢查一下吧
B. 如何在intellij IDEA中導入ECLIPSE的android項目
步驟如下:
1 選擇源目錄
點擊File → Import Project並指定導入項目所存放的磁碟位置。
C. 如何用 Intellij 導入 Android 源碼
針對定製源碼或者原生源碼來說,這些准備步驟都是必須的,沒必要再強調了。
2-2 配置導入及使用
2-2-1 編譯源碼idegen模塊及生成AS配置文件(*.ipr)
在開始編譯idegen模塊前,你一定知道需要先全局編譯出out目錄及相關文件吧,這個不再過多說了,我們通過如下命令編譯idegen模塊:
mmm development/tools/idegen/1
這行命令的意思是編譯idegen這個模塊項目,然後生成idegen.jar文件(不信你自己去查看這個模塊的Android.mk的目標吧,不多解釋)。運行完以後如果看到如下信息則說明編譯OK:
......
#### make completed successfully (7 seconds) ####12
接著執行如下腳本:
development/tools/idegen/idegen.sh1
這行命令的意思是在根目錄生成對應的android.ipr、android.iml IEDA工程配置文件。等待片刻得到類似如下信息說明OK:
Read excludes: 21ms
Traversed tree: 194799ms12
通過如上操作我們就完成了基本的源碼配置工作。
2-2-2 導入Android Studio前的一些客戶化操作
大家都知道使用Eclipse倒入源碼很慢,Android Studio導入源碼時也慢,所以建議修改android.iml文件(將自己不用的代碼去掉),然後再導入Studio。
就像下面摘取的android.iml文件1887行開始的這些一樣:
<sourceFolder url="file://$MODULE_DIR$/./sdk/testapps/userLibTest/src" isTestSource="true"/>
<sourceFolder url="file://$MODULE_DIR$/./tools/external/fat32lib/src/main/java" isTestSource="false"/>
<excludeFolder url="file://$MODULE_DIR$/out/eclipse"/>
<excludeFolder url="file://$MODULE_DIR$/.repo"/>
<excludeFolder url="file://$MODULE_DIR$/external/bluetooth"/>
<excludeFolder url="file://$MODULE_DIR$/external/chromium"/>
<excludeFolder url="file://$MODULE_DIR$/external/icu4c"/>
<excludeFolder url="file://$MODULE_DIR$/external/webkit"/>
<excludeFolder url="file://$MODULE_DIR$/frameworks/base/docs"/>
<excludeFolder url="file://$MODULE_DIR$/out/host"/>
<excludeFolder url="file://$MODULE_DIR$/out/target/common/docs"/>
<excludeFolder url="file://$MODULE_DIR$/out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates"/>
<excludeFolder url="file://$MODULE_DIR$/out/target/proct"/>
<excludeFolder url="file://$MODULE_DIR$/prebuilt"/>1234567891011121314
我們可以仿照上面這段代碼的<excludeFolder url="file://$MODULE_DIR$/.repo"/>寫法一樣過濾掉不需要的內容,這樣在導入時就會快很多。
也可以通過Android Studio的Project Stucture 打開左側Moles,然後將右側Sources中一些目錄Excluded掉。
2-2-3 使用Android Studio導入源碼工程
有了如上的這些操作以後,我們打開Android Studio,然後選擇打開一個現有的Android Studio項目,然後選擇打開源碼根目錄下的android.ipr文件,然後出現如圖一樣的索引即可等待導入就行:tu
到目前為止我們就可以方便的使用Android Studio查看源碼啦。如下圖所示:
吊不屌!!!
2-3 使用技巧
上圖我們看見了,可以通過Android Studio搜索整套源碼的代碼了。但是這時候如果你打開一個Service.java類,然後把滑鼠放在其中任意方法的Intent參數上按住CTRL+滑鼠左鍵跳轉到Intent類你會發現跳轉過去的是一個Intent.class文件,為啥呢?因為他跳轉的是你的默認SDK中的jar內部的class文件。既然要修改查看整套源碼,這么跳轉得多蛋疼啊,所以我們需要配置讓其能跳轉到Intent.java文件,具體做法如下:
首先刪掉依賴中的所有依賴,只保留下圖中沒被選中的那兩個(當然你可以選擇保留一些你用到的其他jar),如下:
接著點擊加號的JARs or directories將你源碼的frameworks及external和你用到的其他跳轉目錄添加到依賴中,然後apply即可。
這時候我們在像上面一樣打開Service.java跳轉Intent,你會發現像下圖一樣直接跳轉到你源碼路徑下的Intent.java文件了,如下:
到此對於平時只是查看源碼的人來說已經夠用了。
3 總結
俗話說工欲善其事必先利其器,你會發現使用Android Studio比Eclipse和Source Insight都好很多(當然了,SubText還是很強大的),無論是代碼提示還是跳轉、還是Python Shell等插件支持等都很強大,慢慢體驗吧。
順帶說一句,Google的野心真的很大,看來Android Studio即將要被他們打造為全能IDE了。
4 附加README
附上原版的英文README文檔,英語高手直接看這里就行:
IDEGen automatically generates Android IDE configurations for IntelliJ IDEA
and Eclipse. Your IDE should be able to compile everything in a reasonable
amount of time with no errors.
If you』re using IntelliJ…
If this is your first time using IDEGen...
IDEA needs a lot of memory. Add "-Xms748m -Xmx748m" to your VM options
in "IDEA_HOME/bin/idea.vmoptions" on Linux or
"IntelliJ IDEA.app/Contents/Info.plist" on OS X.
Create a JDK configuration named "1.6 (No Libraries)" by adding a new
JDK like you normally would and then removing all of the jar entries
under the "Classpath" tab. This will ensure that you only get access to
Android's core libraries and not those from your desktop VM.
From the project's root directory...
Repeat these steps after each sync...
1) make (to proce generated .java source)
2) development/tools/idegen/idegen.sh
3) Open android.ipr in IntelliJ. If you already have the project open,
hit the sync button in IntelliJ, and it will automatically detect the
updated configuration.
If you get unexpected compilation errors from IntelliJ, try running
"Build -> Rebuild Project". Sometimes IntelliJ gets confused after the
project changes significantly.
If you』re using Eclipse…
If this is your first time using IDEGen...
Edit eclipse.ini ("Eclipse.app/Contents/MacOS/eclipse.ini" on OS X) and
add "-Xms748m -Xmx748m" to your VM options.
Configure a JRE named "1.5 (No Libraries)" under "Preferences -> Java ->
Installed JREs". Remove all of the jar entries underneath "JRE system
libraries". Eclipse will not let you save your configuration unless at
least one jar is present, so include a random jar that won't get in the
way.
From the project's root directory...
Repeat these steps after each sync...
1) make (to proce generated .java source)
2) development/tools/idegen/idegen.sh
3) Import the project root directory into your Eclipse workspace. If you
already have the project open, simply refresh it (F5).
Excluding source roots and jars
IDEGen keeps an exclusion list in the "excluded-paths" file. This file
has one regular expression per line that matches paths (relative to the
project root) that should be excluded from the IDE configuration. We
use Java's regular expression parser (see java.util.regex.Parser).
You can create your own additional exclusion list by creating an
"excluded-paths" file in the project's root directory. For example, you
might exclude all apps except the Browser in your IDE configuration with
this regular expression: "^packages/apps/(?!Browser)".
Controlling source root ordering (Eclipse)
You may want some source roots to come before others in Eclipse. Simply
create a file named "path-precedence" in your project's root directory.
Each line in the file is a regular expression that matches a source root
path (relative to the project's root directory). If a given source root's
path matches a regular expression that comes earlier in the file, that
source root will come earlier in the generated configuration. If a source
root doesn't match any of the expressions in the file, it will come last,
so you effectively have an implicit ".*" rule at the end of the file.
For example, if you want your applications's source root to come first,
you might add an expression like "^packages/apps/MyApp/src$" to the top
of the "path-precedence" file. To make source roots under ./out come last,
add "^(?!out/)" (which matches all paths that don't start with "out/").
D. 用Intellij idea做Android開發中zxing導包,運行時出現包不存在錯誤
因為這個zxing的庫是屬於library,如果你復制到項目中以後,會有緩存問題
你可以先clean一下項目,將緩存文件清除
建議使用Android Studio做開發工具,Android studio是基於Intellij IDEA專門為安卓開發的IDE,自從android Studio 1.0正式版發布以後google已經正式使用android Studio了,目前版本是 1.3.2 正式版
E. 如何在Intellij中配置Android annotations
Android annotation方法/步驟
1、首先我們要下載一個anntations的jar包,可以在網上搜到。
2、新建一個mole用於演示android anntations的配置。
3、在project文件夾內新建一個 complie-lib文件夾,把剛才的jar包放進去,同時也放在mole的libs文件夾里一個。
4、打開左上角的全局設置 File-Setting。
按照步驟先找到代碼的注釋選項,然後在右側的路徑里選擇剛才新建的complie-lib文件夾內的jar文件,最後點擊 Moule content root選項後點擊Apply應用。
在Mole上點擊右鍵,打開Mole設置。
在屬性選項卡里,點擊右側綠色小加號,選擇第一個 添加jar包。
這是添加進去的是Mole下,libs文件夾內的jar包。
打開一個Activity 在類聲明上面添加
@EActivity(R.layout.main) //這是main是layout的id
然後注釋掉下面的setContentView一句。
點擊上方的Build-Make ,會顯示錯誤,但是已經生成了一些文件,我們繼續修改。
在AndroidManifest.xml文件夾里,更改原來的.MyActivity的名字為 .MyActivity_ 也就是後面多加一個 _ 。
再次打開Mole設置,在源文件選項卡里把generated設置為源文件,並點擊Apply。
點擊Run選項,然後選擇編輯Run的設置。
將Mole的啟動Activity 設置為MyAcivity_。
之後再次Make ,Run 。 App就可以正常執行。
Android annotations 就可以正常使用了。
F. IntelliJ IDEA開發Android時如何導出簽名APK~,求大俠賜教~
如圖,build菜單倒數第二行,接下來自己填寫信息,next,...
G. Android Studio和IntelliJ IDEA的不同點在什麼地方
兩者不同點在於支持的開發環境和開發公司不同。
1、開發的公司不同
Android Studio是谷歌開發的Android開發插件。
IntelliJ IDEA是JetBrains公司推出的Java集成開發環境。
2、支持的開發環境不同
Android Studio只支持Android開發,是谷歌在IntelliJ IDEA社區版上剔除其他功能的一款專注Android開發的插件,可以說是弱化版的IntelliJ IDEA。
IntelliJ IDEA是JetBrains公司推出的Java集成開發環境,當然Android也是基於java的,IntelliJ IDEA除了支持Android開發,還支持JavaSE,Android,Groovy,Scale,HTML,CSS,PHP等語言的開發。
(7)intellijandroid擴展閱讀:
IntelliJ IDEA優點:
1、最突出的功能自然是調試(Debug),可以對Java代碼,JavaScript,JQuery,Ajax等技術進行調試。
2、查看Map類型的對象,如果實現類採用的是哈希映射,則會自動過濾空的Entry實例。
3、需要動態Evaluate一個表達式的值,比如我得到了一個類的實例,但是並不知曉它的API,可以通過Code Completion點出它所支持的方法。
4、最後,在多線程調試的情況下,Log on console的功能可以幫你檢查多線程執行的情況。
在IDEA的基礎上,Android Studio 提供:
1、基於Gradle的構建支持
2、Android 專屬的重構和快速修復
3、提示工具以捕獲性能、可用性、版本兼容性等問題
4、支持ProGuard 和應用簽名
5、基於模板的向導來生成常用的 Android 應用設計和組件
6、功能強大的布局編輯器,可以讓你拖拉 UI 控制項並進行效果預覽
H. Android Studio與其IntelliJ 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的代碼,兩邊相互扯皮之事也時有發生。。。
I. Android Studio與其IntelliJ IDEA相比,其差異與利弊主要有哪些
首先是差異,IDEA是JetBrains公司推出的Java集成開發環境,分為免費社區版與收費旗艦版,據我所知這兩個版本的差異主要在對JavaEE開發的支持上,社區版貌似只支持JavaSE,Android,Groovy,Scale,收費版還支持JavaEE的開發,具體可查看官網上的差異說明,可以到IntelliJ IDEA 查看。下面是個官方截圖:
而Android Studio是基於IDEA Commutity Edition開發的,因為Community 版本不僅是免費的而且是開源的,請看下圖:
可以看出之前剛推出的studio1.0正式版是基於idea13開發的,而不是最新的idea14.
上面這些大概說清了這三者之間的差異了。
下面說一下利弊:
雖然Android Studio是基於IDEA開發的,但studio是一個純粹的Android開發環境,並不支持諸如Groovy,scale雖然IDEA社區版支持,但google已把它們剔除了,所以可能Studio支持的開發更少,貌似屬於弊的范疇吧(可我覺得這是優點,Android Studio就只做Android)。
再者,雖然IDEA 社區版也原生支持Android開發,但對於Android開發的支持上定不如Studio來的徹底,再加上經過Google兩年的開發studio已經進入了1.0的正式版時代,所以如果你做Android開發選studio就對了。(在Studio轉正之前idea應該是做Android開發的一個不錯的選擇,但現在不是了)。
最後總結一句,如果你是Android開發者就選擇studio吧,這是最佳選擇,而如果你不是那就選擇idea吧。
J. intellij idea怎麼創建一個android app
IntelliJ IDEA社區版作為一個輕量級的Java開發IDE,是一個開箱即用的Android開發工具。
注意:在本次的教程中我們將以Android平台2.2為例進行IntelliJ IDEA的使用說明,Android 2.2雖然是一個很老的Android SDK版本,但是這樣可以保證你所開發的應用程序可以在更多的設備上進行測試,用以確定程序的硬體設備兼容性。
1 啟動Create New Project向導
在IntelliJ IDEA的主頁面上,啟動Create New Project向導。
下一步需要用戶選擇想創建項目的類型:選擇需要創建的Android模塊類型。每一個選擇對應一個不同的項目模板。
2 選擇項目模板
從下圖的對話框中選擇項目模板,然後進入創建項目的基本信息設置。
最常見的選擇是Application Mole。這個選項將讓IntelliJ IDEA按照一些預定義的結構安排項目。在這種情況下用戶可以照原來的樣子編譯項目,之後得到一個幾乎是空的,但功能齊全的Android應用程序。如果選擇Empty Mole選項,IntelliJ IDEA將為指定的Android平台提供一個簡單的空項目,不會生成額外的內容。Library Mole則是用於構建共享代碼類庫。
在這里我們選擇Application Mole,輸入項目名稱和目標文件夾。更重要的是,用戶應該選擇目標Android平台。這個時候下拉列表已經通過SDK Manager預裝好用戶所選定的平台。點擊Next進入下一步。
如果Java SDK或Android SDK沒有安裝或者配置錯誤,用戶可能會遇到一些麻煩。這個時候可以單擊File → Project Structure解決這些可能遇到的問題。
3 編輯項目屬性
下面的對話框包含了應用程序名稱和程序包名,並允許用戶設置目標設備和啟動activity。
程序包的名稱應該是com.xxx.yyy的格式,xxx通常代表公司名稱,yyy是應用程序名稱。當然用戶可以在這里使用任何名稱,但這個建議會極大降低與其他應用程序名稱沖突的風險。
IntelliJ IDEA提供創建一個名為MyActivity的示例activity。在安卓開發中,activity是一個純Java類,也是任何Android應用程序不可或缺的組成部分。
4 設置目標設備
對話框也可以讓用戶定義IntelliJ IDEA如何運行示例應用程序。有三種基本運行配置:
Show device chooser dialog表明在每次從啟動應用程序時,IDEIntelliJ IDEA將要求用戶選擇通過USB連接模擬器或設備。
USB device表明,IntelliJ IDEA將通過一個USB埠自動嘗試將應用程序部署到任何兼容的設備。通常在用戶想測試在一個物理設備的程序兼容性時使用。
Emulator表明IntelliJ IDEA將該應用程序部署到配置的模擬器。請注意,您還需要設置一個Android虛擬設備(AVD)在模擬器運行應用程序。這一步驟可在幾分鍾之內完成。
一切准備就緒之後,單擊Finish創建項目。