MCPcopy Index your code
hub / github.com/Mohammed-Baqer-null/AndroidIDE-Rv2

github.com/Mohammed-Baqer-null/AndroidIDE-Rv2 @v2.7.4-r1.02

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.7.4-r1.02 ↗ · + Follow
51,859 symbols 158,613 edges 4,390 files 25,629 documented · 49%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

AndroidIDE

AndroidIDE-Rv2

An IDE to develop real, Gradle-based Android applications on Android devices.

Latest release

Builds and tests

Crowdin

License

Explore the docs »    

Report a bug   •   Request a feature   •   Join us on Telegram

New Features

Features

  • [x] Gradle support.
  • [x] JDK 11 and JDK 17 available for use.
  • [x] Terminal with necessary packages.
  • [x] Custom environment variables (for Build & Terminal).
  • [x] SDK Manager (Available via terminal).
  • [x] API information for classes and their members (since, removed, deprecated).
  • [x] Log reader (shows your app's logs in real-time)
  • [ ] Language servers
    • [x] Java
    • [x] XML
    • [ ] Kotlin
  • [ ] UI Designer
    • [x] Layout inflater
    • [x] Resolve resource references
    • [x] Auto-complete resource values when user edits attributes using the attribute editor
    • [x] Drag & Drop
    • [x] Visual attribute editor
    • [x] Android Widgets
  • [ ] String Translator
  • [ ] Asset Studio (Drawable & Icon Maker)
  • [x] Git

Installation

Get it on F-Droid Get it on F-Droid

Please install AndroidIDE-Rv2 from trusted sources only i.e. - GitHub Releases

  • Download the AndroidIDE-Rv2 APK from the mentioned trusted sources.
  • Follow the instructions here to install the build tools.

Limitations

  • For working with projects in AndroidIDE, your project must use Android Gradle Plugin v7.2.0 or newer. Projects with older AGP must be migrated to newer versions.
  • SDK Manager is already included in Android SDK and is accessible in AndroidIDE-Rv2 via its Terminal. But, you cannot use it to install some tools (like NDK) because those tools are not built for Android.
  • No official NDK support because we haven't built the NDK for Android.

The app is still being developed actively. It's in beta stage and may not be stable. if you have any issues using the app, please let us know.

Contributing

See the contributing guide.

For translations, visit the Crowdin project page.

Thanks to

Thanks to all the developers who have contributed to this project.

This project is supported by:

Contact Us

License

AndroidIDE-Rv2 is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

AndroidIDE-Rv2 is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with AndroidIDE.  If not, see <https://www.gnu.org/licenses/>.

Any violations to the license can be reported either by opening an issue or writing a mail to us directly.

Extension points exported contracts — how you extend this code

LogListener (Interface)
A listener which can be used to listen to log events. [8 implementers]
logging/logger/src/main/java/com/itsaky/androidide/utils/ILogger.java
ISocketCommand (Interface)
A command that is sent over the socket streams between the sender and the receiver. @author Akash Yadav [135 implementers]
logging/logsender/src/main/java/com/itsaky/androidide/logsender/socket/ISocketCommand.java
DOMRange (Interface)
DOM range @author Angelo ZERR [9 implementers]
xml/dom/src/main/java/org/eclipse/lemminx/dom/DOMRange.java
Op (Interface)
An Op is a member of the sequence of formatting operations emitted by OpsBuilder and transformed by {@li [47 implementers]
composite-builds/build-deps/google-java-format/src/main/java/com/google/googlejavaformat/Op.java
Poster (Interface)
Posts events. @author William Ferguson [8 implementers]
event/eventbus/src/main/java/org/greenrobot/eventbus/Poster.java
ConfigurableServiceProvider (Interface)
Base class for service providers which can be configured using IServerSettings. @author Akash Yadav [4 implementers]
core/lsp-api/src/main/java/com/itsaky/androidide/lsp/api/ConfigurableServiceProvider.java
StringPoolOrBuilder (Interface)
(no doc) [16 implementers]
xml/resources-api/src/main/proto_java/com/android/aapt/Resources.java
ILocalSocketManager (Interface)
The interface for the LocalSocketManager for callbacks to manager client/server starter. [3 implementers]
termux/shared/src/main/java/com/termux/shared/net/socket/local/ILocalSocketManager.java

Core symbols most depended-on inside this repo

append
called by 2772
composite-builds/build-deps/jaxp/src/main/java/jaxp/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java
put
called by 2154
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/doclint/Messages.java
put
called by 2142
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/api/Entity.java
equals
called by 1773
composite-builds/build-deps/jaxp/src/main/java/jaxp/sun/org/apache/xml/internal/utils/XMLString.java
get
called by 1571
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/doclint/DocLint.java
length
called by 1513
composite-builds/build-deps/jaxp/src/main/java/jaxp/sun/org/apache/xml/internal/utils/XMLString.java
append
called by 1490
composite-builds/build-deps/jaxp/src/main/java/jaxp/sun/org/apache/bcel/internal/generic/InstructionList.java
add
called by 1223
composite-builds/build-deps/jaxp/src/main/java/jaxp/xml/stream/XMLEventWriter.java

Shape

Method 44,959
Class 5,186
Interface 907
Function 536
Enum 271

Languages

Java88%
Kotlin12%
C++1%
C1%
TypeScript1%

Modules by API surface

xml/resources-api/src/main/proto_java/com/android/aapt/Resources.java2,587 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/tree/JCTree.java689 symbols
xml/resources-api/src/main/proto_java/com/android/aapt/ConfigurationOuterClass.java431 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/code/Type.java360 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/comp/Resolve.java328 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/code/Types.java318 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/code/Symbol.java317 symbols
composite-builds/build-deps/jaxp/src/main/java/org/w3c/dom/css/CSS2Properties.java245 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/comp/Attr.java235 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/comp/Check.java234 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/tree/DCTree.java209 symbols
composite-builds/build-deps/jdk-compiler/src/main/java/openjdk/tools/javac/comp/Flow.java198 symbols

For agents

$ claude mcp add AndroidIDE-Rv2 \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page