Releases: AndroidIDEOfficial/AndroidIDE
v2.3.0-beta
AndroidIDE v2.3.0-beta
This release fixes some minor issues in AndroidIDE.
Important notes
No notes
Fixes
- Memory leak when the application is closed while the project is being initialized. #781.
- AndroidIDE crashes if the built application cannot be launched. #759.
- Dynamic colors are not applied to main activity.
- NPE in FindHelper while finding definition of a symbol.
- Attribute name not shown in delete attribute dialog.
Improvements
- Replaced toast messages with Flashbar.
v2.2.0-beta
AndroidIDE v2.2.0-beta
This release fixes some minor issues.
Important notes
No notes
Fixes
- NPE when closing repositories
- Indentation issues with tree sitter language implementations
AndroidIDE v2.1.4-beta
This release improves the UI Designer, adds support for custom color schemes in editor and much more.
Important notes
This release has been signed with a private signing key. Further releases will be signed with the new signing key as well. This is to prevent malicious builds of AndroidIDE. Please download AndroidIDE from TRUSTED sources only!
Trusted sources include :
- AndroidIDE website
- GitHub releases
- GitHub Actions builds (for testing purposes only!)
Additions
- Enjoy an experience closer to your device with Dynamic colors support in AndroidIDE. This is enabled by default but can be disabled in IDE preferences.
- The IDE now has a light theme. The light/dark themes are automatically switched based on your system theme. However, you can switch to other theme in IDE preferences.
- Support for custom editor color schemes has been added (only for Java and XML languages at the moment). The color schemes can be customized by editing the files in
$HOME/.androidide/editor/schemes
folder. - The UI designer has been rewritten from scratch. It now has support for more views, undo/redo, better resource resolution, etc. Thanks to @deepkrg17 for view adapter implementations (#673, #680).
- Empty project template without AndroidX libraries. Thanks to @Rystars (#620).
- Option to clone Git repository. Thanks to @Deenu143 (#632).
- The IDE now remembers the opened files and reopens them automatically when the project is reopened.
Fixes
The following issues has been fixed :
- Activity is restarted when it is not focused during installation process (#628).
- NPE when appending log lines (#605).
- Editor is overlapped by SymbolInputView (#589).
- Crash on clicking the
Preview layout
action if a non-XML file is opened (#666). - R.jar completions are not updated after resource updates.
Improvements
- Better handling of device configuration changes.
- Replaced file tab actions with
PopupMenu
. - Improved transitions for bottom bar in editor activity.
- Updated translations. Thanks to all Crowdin contributors.
New Contributors
Full Changelog: v2.1.3-beta...v2.1.4-beta
AndroidIDE v2.1.3-beta
This release brings various improvements and bug fixes to AndroidIDE.
Important notes
The UI designer has been TEMPORARILY removed as we are working on integrating it with the new projects API for better and improved layout inflation/preview.
Additions
- The IDE now creates
.nomedia
file in thePROJECTS
directory if the file does not already exist. Thanks to @jayx003 (#489). - Added XML formatter.
- You can now long click on completion items to open documentation. Works only for Android framework classes, methods and fields.
- Added option to choose custom font for editor and terminal. Thanks to @deepkrg17 (#548).
- Readded
Clear Gradle cache
preference. Thanks to @deepkrg17 (#587).
Removals
- The UI designer.
Fixes
- Some classes not being shown in completion (#500).
- APK metadata cannot be parsed for release builds (#470).
- Extra closing curly brace when formatting Java code (#504).
- Crash on closing cached ZipFileSystem for deleted files (#535).
- Invalid
java.lang.*
imports when creating Java files. Expand selection
does not select expanded range (#557).- Generated getters and setters are package private (#559).
- Physical keyboard does not work in terminal (#287).
- Diagnostic window is partly invisible for long messages (#565).
- Text actions window overlaps diagnostic window (#570).
Improvements
- Use session based installer for APK installations. Intent based installer is still used for MIUI.
- Replaced the
Build
actions menu with the newRun tasks
dialog. This allows the user to run multiple tasks from the projects. - Dismiss editor popup windows when the editor loses focus. Thanks to @Devendra34 (#494).
- The text actions windows is now NOT dismissed for certain actions (#393).
- Replaced action bar searcher with bottom bar.
- The IDE now does not set
LD_LIBRARY_PATH
variable to provide (partial) support for projects with room DB. - Synchronize append and delete in build output (#540).
- The
--info
argument is now disabled by default. It is now used for first build only. - Updated Bengali translations. Thanks to @deepkrg17 (#514, #522).
- Updated Chinese translations. Thanks to @mikofe (#528).
- Updated Portuguese translations. Thanks for @FrioGitHub (#456).
New Contributors
- @jayx003 made their first contribution in #489
- @PranavPurwar made their first contribution in #482
- @Devendra34 made their first contribution in #494
- @NiceSapien made their first contribution in #515
Full Changelog: v2.1.2-beta...v2.1.3-beta
AndroidIDE v2.1.2-beta
This release focuses mostly on the LSP implementations while fixing bugs. Thanks to people who have contributed to this release by adding features, adding/updating translations, fixing bugs, etc.
Important notes
- Most of the things are now dependent on the initialization of the project, including the Java and XML LSP, find in project, etc. So, it is highly recommended that you wait for the project to be initialized properly.
Additions
- New project templates. By @MrIkso (#226).
- New file icons in tree view. By @AndreyKozhev (#374, #380).
- Horizontal + vertical (expanded) editor actions window.
- Symbol input for text and other files. By @AndreyKozhev (#400).
- Support for range code formatting. By @AndreyKozhev (#405).
- You can now choose to open a file with external application. By @AndreyKozhev (#442).
- Added a preference to toggle usage of soft tabs.
- Added a 'No activity' template. By @AndreyKozhev (#462).
- Added Bengali translations. By @deepkrg17 (#331, #368, #463).
Fixes
Following issues have been fixed in this release :
- Incomplete classpath provided by the Tooling API implementation.
- Broken import auto completion (#225).
- Crash caused due to access to binding in a destroyed fragment/activity (#257, #260).
- Crash when initializing language servers.
- Crash when searching in project.
- Crash when closing project (#353).
- Crash trying to list files after FileTreeFragment has been destroyed.
- Error when pressing back in
CrashHandlerActivity
. - Progress indicator hides even if the build is still in progress.
- Exception is thrown when Tooling API thread is already started. By @MatheusTGamerPro (#325).
- Tree view cannot be scrolled horizontally to the left (#340).
- Chevron icon not updated for directories in tree view (#340).
- Node not removed from file tree after rename/deletion event of file.
- Attribute editor layouts are not scrollable (#329).
- Images open as text files in editor (#316).
- Dark link colors in About activity (#361).
- Added switch to toggle the use of ICU lib (#95).
- Window leak when activity is being destroyed and there are unsaved files.
- Cannot find attribute
app:popupOverlay
in template projects. - Invalid icons shown for files in search results (#389).
- Fixed a bug that caused
SymbolInputView
to show nothing. By @AndreyKozhev (#400). - Options menu items are not updated in some cases.
- Options menu items are cleared when a build is in progress and the IDE is minimized.
- File not saved after returning from UI designer.
- Improper handling of APK redirect file when installing APK (#470).
Improvements
- Improved Java and XML completions.
- Updated
aapt2
binaries. - Action menus are disabled if all of its children are disabled.
- Hide tab layout when no files are opened (#330).
- Do not show full error message when layout inflation fails (#274).
- Use Storage Access Framework (SAF) for picking directories.
- 'Preview layout' item now has more priority than other options menu icons (#243).
- Do not show editor actions window when in search mode.
- Use relative padding in TreeView to support RTL layouts.
- Updated crash report. By @AndreyKozhev (#460).
- Updated German translations (#466).
- Updated Hindi translations. By @Premjit-Chowdhury (#443).
- Updated Russian translations. By @AndreyKozhev (#237, #292, #363, #395, #461).
- Updated Portuguese translations. By @MatheusTGamerPro (#286) and @FrioGitHub (#398).
New Contributors
- @MatheusTGamerPro made their first contribution in #286
- @dead8309 made their first contribution in #336
- @deepkrg17 made their first contribution in #331
- @Micoder-dev made their first contribution in #385
- @FrioGitHub made their first contribution in #398
Full Changelog: v2.1.1-beta...v2.1.2-beta
AndroidIDE v2.1.1-beta
Fixed a bug which caused AbstractMethodError
in Tooling API implementation.
AndroidIDE v2.1.0-beta
Important notes
- The
HOME
andSYSROOT
directories has been renamed tohome
andusr
respectively. - The packages for the AndroidIDE terminal has been updated. But, it requires you to reinstall the bootstrap packages. Please follow this guide to install the new bootstrap packages.
- Android 12 devices no longer need to use 32-bit build tools. You can simply reinstall AndroidIDE with 64-bit build tools.
- You can now easily open/show the
ide-environment.properties
file using theideenv
command. Execute :ideenv -e
: To edit the environments file. Usesnano
editor to edit.ideenv -s
: To print the contents of the file in the terminal.
- The minimum Android Gradle Plugin version required to build projects in AndroidIDE is now set to version
7.2.0
. The build process will fail for projects using older versions. However, those projects would still be able to build with terminal.
Additions
- Warn about empty body for the following statements :
if
else
try
catch
finally
for
while
do while
- New java code actions :
Generate toString()
: Overrides thetoString()
method for the current class. Always accessible.Generate constructor
: Allows the user to select fields from the current class, then generates a constructor with those fields as parameters.Remove unused imports
: Removes imports that are not used in the source file.Import orderer
: Organizes the imports. Thanks to @MrIkso (#180).
- XML Code formatter. Thanks to @MrIkso (#182).
- New Gradle command line options:
--build-cache
and--offline
. Thanks to @MrIkso (#180). - Highlight IDE logs based on the log line priority.
- Option to share Build Output, App log and IDE logs as text file.
- Syntax highlighting for Kotlin and C/C++ language. Thanks to @MrIkso (#196).
- Highlight hex color code in string literals. Thanks to @MrIkso (#209).
- Save all files before executing any build process. (#209).
- New Template: Jetpack Compose. Thanks to @BanDroid (#198).
- Added Brazilian Portuguese translations. Thanks to @ghost (#165).
Removals
$ANDROID_HOME/cmake/bin
is no longer prefixed to thePATH
variable.- Removed syntax highlighting from log views.
Fixes
- Crash when performing 'Replace all' action in editor (#158).
- Crash when layout inflation fails (#168).
- Always show toasts on UI thread (#160).
- Fixed: Invalid log line formatting when tag to too long.
- Fixed: Application crashes when layout inflation fails (#168).
- Fixed: Invalid syntax highlighting for text tags in XML files. Thanks to @MrIkso (#180).
- Memory leaks in some fragments. Thanks to @MrIkso (#209).
- Fixed: Extra empty
new line
gets appendend to files while saving. - Fixed:
SuperNotCalledException
inDesignerActivity
(#214). Thanks for @MrIkso (#219).
Improvements
- Do not show 'Cut' & 'Paste' action if editor is not editable.
- Include
aapt2
in IDE itself. The IDE now automatically specifiesandroid.aapt2FromMavenOverride
property while building projects. - Use ported version of NetBeans'
nb-javac
for Java language server. - Removed extra Maven repository URLs from project templates. Thanks to @MrIkso (#188).
- Show progress indicator when initializing project
- Update dependency versions in project templates and update the Kotlin project template image. Thanks to @BanDroid (#191).
- Ability to cache completion results for faster completions on next completion request.
- Use Gradle v7.4.2 in template projects and updated template dependencies Thanks to @MrIkso (#209).
- The project creator UI and logic has been improved (#209).
- Use of
libhook.so
is now optional and is DISABLED by default. This hook is only required if you use JDK 11 and if you have an Android 11 or lower device. - JDK 17 is now preferred by the IDE. It looks for JDK 11 only if JDK 17 is not found on path
$SYSROOT/opt/openjdk
. - Implemented incremental analysis for supported languages.
- Updated Hindi translations. Thanks to @Premjit-Chowdhury (#171).
- Updated Russian translation. Thansk to @AndreyKozhev (#181 and #220).
- Updated Chinese translations. Thanks to @mikofe (#192).
- Added missing translations for PT-BR. Thanks to @ghost (#176).
New Contributors
- @BryanGIG made their first contribution in https://github.com/itsaky/AndroidIDE/pull/179
- @MrIkso made their first contribution in https://github.com/itsaky/AndroidIDE/pull/180
- @AndreyKozhev made their first contribution in https://github.com/itsaky/AndroidIDE/pull/181
Full Changelog: itsaky/android-ide@v2.0.1-beta...v2.1.0-beta
AndroidIDE v2.0.1-beta
Important notes
- As 64-bit installation does not work on Android 12 (due
to restriction by the OS), 32-bit
build tools need to be installed when installing AndroidIDE on devices running Android 12. - Google services and Firebase integration has been removed from AndroidIDE.
This DOES NOT mean that you cannot build projects that use Firebase. Building projects with Firebase integration is SUPPORTED.
Additions
- Code formatter for Java source code.
- Support for
GestureOverlayView
,ToggleButton
,Switch
,GridLayout
,ListView (#145)
in layout inflater. - Preference to disable use of
TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
flag in editor. - Automatically trigger completion when attributes are inserted from completion window.
- New java code actions :
- Add import
- Add 'throws'
- Generate constructor
- Generate setters/getters
- Field to block
- Remove unused class
- Remove unused method
- Remove unused 'throws'
- You can now override multiple superclass methods at once.
DocumentsProvider
for providing access to files inHOME
directory.
Removals
- Removed initial view attributes from view tags completion in XMLCompletionProvider.
- Vertical text action window has been removed.
- Removed Google services and Firebase integration.
- Removed the horizontal text actions menu from the editor in favour of the new actions menu.
Fixes
- Crash in attribute editors when adding an attribute.
- Crash when selecting diagnostic item from diagnostics list.
- Some diagnostic items are not shown in diagnostic window (#96).
- Diagnostics were updated late in the editor.
- Popup windows created by editor are not dismissed even when the file is closed.
- No build output when activity is recreated (#121).
- Crash in UI Designer when activity is recreated (#124).
- Invalid syntax highlighting for application logs (#152).
IllegalArgumentException
while overriding methods in Java completion provider.
Improvements
- Do not import classes from
java.lang
package when completion items are selected. - XML completion provider now uses 'Match completions in lower case' preference.
- Dismiss all windows shown by editor when file tab is unselected or when the bottom sheet is
expanded. - Improved the editor actions menu.
- Sort completion items according to their kind and sort text.
- Restore file tree state when application is resumed (#150).
- Updated templates to work with Android 12 (#144).
- Updated Chinese translation. Thanks to @mikofe (#128) and @Rosemoe (#141).
- Updated French translation. Thanks to @Se-Lyan (#136).
- Updated German translation (#144).
Full Changelog: itsaky/android-ide@v2.0.0-beta...v2.0.1-beta
AndroidIDE v2.0.0-beta
AndroidIDE v2.0.0-beta is here with new features and improvements.
This is a pre-release and is not so stable. There are some features that are partially implemented.
The minimum SDK has been raised to 26
(Android O
).
Changelog
Here are the things that were added/removed/improved.
Additions
- XML Layout Designer with ability to preview XML drawables.
- Added packages for terminal.
- libGDx project template. Thanks to @Smooth-E (#81).
- Kotlin project template. Thanks to @BanDroid (#60).
- Preference to switch between
bash
and/system/bin/sh
in terminal. - Preference for matching partial names in java completion.
- Preference to choose between
floating window text actions
andtext actions in ActionMode
. - Preference to enable/disable font ligatures.
- Show process output when build tools installation fails.
- Ability to expand selection in supported languages.
- Ask user to save unsaved files before closing project.
- Hindi translation. Thanks to @Premjit-Chowdhury (#70, #127).
- German translation. Thanks to @MarvinStelter.
- Indonesian translation. Thanks to @BanDroid (#54, #57, #60, #72, #125).
- Chinese translation. Thanks to @Rosemoe (#56, #73, #104) and @mikofe (#118, #119, #123).
- French translation. Thanks to @Se-Lyan (#79).
- Russian translation. Thanks to @Smooth-E (#97).
Removals
- Autosave of files is removed. However, a preference has been added for the same which, when enabled, saves the files automatically before close.
Fixes
- File does not close and crashes if reopened and closed again.
- Flickering of whole auto completion window.
- Flickering of completion item due to API info.
- Build tools installation fails if
JAVA_HOME
does not exist. - Invalid syntax highlight for method invocations in java.
- Package private classes not included in java completion.
- IDE crashes when
Paste
option is selected in terminal and no clip is available. - Fixed a bug due to which the IDE was not able to open empty files.
LogSender
class not included in JLS workspace.
Improvements
- Show crash report when the IDE crashes.
- The Java language server is now embedded in the IDE itself.
- The AndroidIDE Gradle plugin is now packaged with the IDE.
- Show name of opened project.
- Show signature help in window instead of using a
TextView
. - The java completion provider now uses a custom JDK runtime image with Android framework classes and is no more dependent on JDK installation.
- Disable
Save
option when all files are saved. - Allow installation of files from file tree.