13

IntelliJ IDEA を使用して AOSP を操作しようとした人はいますか? Android ソースには特定のフォルダー (development/ide/intellij) が表示されますが、Android 開発の場合にそれを使用する方法に関する情報が見つかりません (Eclipse の場合、情報はここにあります: http://source.android.com/ source/using-eclipse.html ) IDEA で Android の開発を開始する方法について、同様の指示を提供できる人はいますか?

4

4 に答える 4

17

こちらもお読みください: https://shuhaowu.com/blog/setting_up_intellij_with_aosp_development.html

あなたが取得する場合

idegen.jar が見つかりませんでした。最初にmakeを実行してください。

最初に生成する必要があります。

source build/envsetup.sh
cd development/tools/idegen
mm
croot
development/tools/idegen/idegen.sh

IJ での AOSP ファイルのインデックス作成には時間がかかる (SSD を搭載したノートブックでは 1 時間以上かかる) ことに注意してください。Eclipse を使用する理由は、インデックスを作成する必要がないため、AOSP コードをはるかに高速にロードできるからです。

興味のない AOSP 部分を削除して android.iml ファイルを削減する価値があります。development/tools/idegen/excluded-paths正規表現パターンを使用して追加できます。そこのREADMEファイルを参照してください。

次の行を に追加しましたexcluded-paths:

^cts
^developers
^development
^external
.*/tests/.*
^sdk

そのため、android.imlかなり適度なサイズになり、代わりに約1〜2分でロードされます.

idegen にはintellij-gen.sh、特定のモジュールの IJ プロジェクトを生成できるものもあります。

上記の記事で述べたように、IJ を微調整してより高速に動作させることができます (RAM を追加するなど)。念のため、ここに私の idea64.vmoptions を示します。

-server
-Xms2048m
-Xmx4096m
-XX:MaxPermSize=1024M
-XX:ReservedCodeCacheSize=1024M
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops
-XX:+UseConcMarkSweepGC
-XX:+UseParNewGC
-XX:ParallelGCThreads=8
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:CMSIncrementalDutyCycleMin=0
-XX:-TraceClassUnloading
-XX:+TieredCompilation
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false

idea.vmoptions の最適化をグーグルで検索できます。それに関する投稿がいくつかあります (IJ 構成をどこから取得したか)。

于 2015-09-14T13:42:25.700 に答える