JRebel for Android

Compatible with:  IntelliJ IDEA Android Studio
06.12.2016
47 919

JRebel for Android skips the build and install process. Develop your Android applications in real-time. Any updates to code or resources are applied to the running application. Works with real devices and emulators alike.

Download plugin

Recent change notes

2.0.22 (December 6, 2016)

  • Improved support for Realm 2 in the incremental Java compiler
  • Improved handling of Data Binding in the incremental compiler for multi-module projects
  • Fixed a case where making changes to sources containing Butter Knife annotations could lead to wrong compilation results
  • Fixed an issue with new @Inject fields not being picked up by Dagger 2
  • Fixed handling low space on the device
  • Fixed a NoClassDefFoundError being thrown when calling getDeclaredField on a class that references unknown types

2.0.20 (December 1, 2016)

  • Fixed JRebel for Android crashing with ArrayIndexOutOfBounds on startup

2.0.18 (November 30, 2016)

  • Improved the handling of out of memory on the host machine
  • Improved the handling of "could not start AVD"
  • Fixed a NPE during Apply Changes
  • Fixed a NPE in the incremental compiler
  • Fixed an exception during startup where an absolute path was expected
  • Fixed a conflict on the gradle class path with okio library
  • Fixed an incremental compiler issue where dependent classes of changed protected API was not being correctly recompiled
  • Fixed a few corner-case issues where changing kotlin lambda classes caused "Apply Changes" to fail
  • Treat all Vivo devices as unsupported

2.0.16 (November 24, 2016)

  • Fixed connecting to device in case of ADB version mismatch (Genymotion)
  • Fixed Java parsing issues with certain lambda expressions and comments
  • Fixed an IllegalStateException: could not find class info for reloaded class with some anonymous inner classes
  • Fixed a NullPointerException if serialVersionUID field was not static final

2.0.14 (November 23, 2016)

  • Added support for Android Studio 2.3 Canary 2
  • Improved incremental compiler precision with Butter Knife
  • Fixed dexer failing with EXCEPTION FROM SIMULATION surfaced by some libraries
  • Fixed reactivating using a license file
  • Fixed JRebel for Android crash when running while Android Device monitor is open
  • Fixed corrupt metadata preventing to start up

2.0.12 (November 15, 2016)

  • Added support for Android Studio 2.3 preview 1
  • Added support for Android Gradle plugin 2.3.0
  • Added incremental compilation support for projects using Databinding
  • Fixed verification issue on API 21 and 22 with certain methods returning arrays
  • Fixed warnings in logcat for API 24 and later

2.0.10 (November 11, 2016)

  • Fixed a critical verification issue with Jackson on API 22

2.0.8 (November 10, 2016)

  • Fixed a case where removing Dagger 2 annotations would result in a build failure
  • Fixed startup failing for projects which had resource shrinking enabled
  • Fixed a rare case where starting with JRebel for Android would throw an UnsatisfiedLinkError

2.0.6 (November 4, 2016)

  • Fixed an issue where reverted resource changes were not properly propagated to the device (switching branches)
  • Fixed an issue with inflating fragment inside fragtment
  • Fixed ConcurrentModificationException when applying changes
  • Fixed IllegalStateException: No load bundles received.
  • Decreased heap space requirements for applying a large set of changes (switching branches)

2.0.4 (October 26, 2016)

  • Fixed dex verification issue when app had an invoke method with a certain signature
  • Fixed a ClassCastException when serialVersionUID is not of type 'long'
  • Fixed applying changes to resources when applyOverrideConfiguration is used
  • Fixed a case where Butter Knife does not pick up first annotation in a class
  • Fixed a timeout crash when apply changes if pressed while paused behind a breakpoint

2.0.2 (October 19, 2016)

  • Fixed an issue with creating temp directory on device
  • Fixed an issue with FileNotFoundException for the APK
  • Fixed a ClassIdNotFoundException during apply changes
  • Fixed a case where uncaught exceptions thrown from new code would result in a weird VM state
  • Fixed a case where changing a view type in a nested fragment resulted in a ClassCastException

2.0.0 (October 13, 2016)

  • All users are now eligible for a new 21-day trial
  • Individual license holders can now:
    • Use the Debugger with JRebel for Android
    • Use JRebel for Android with multidex apps
    • Use JRebel for Android with apps having JNI libraries
  • Improved activation flow for upgrading the license

Notable changes since JRebel for Android 1.0:

  • JRebel for Android now comes with a incremental Java compiler with annotation processor support
  • JRebel for Android no longer needs any changes to build.gradle files
  • Reduced memory usage overhead on the device, especially for large apps

1.3.26 (October 6, 2016)

  • Reduced JRebel for Android IDE plugin distribution size by 54%
  • Fixed incremental compiler inconsistencies caused by external builds between apply changes
  • Fixed reloading Android asset files with Android Gradle plugin 2.2.0-alpha1 and later

1.3.24 (October 4, 2016)

  • Improved Java compilation times for clean builds
  • Fixed a case where cleaning a project wouldn't work on Windows because of .jar file locking issues
  • Fixed Gradle build failing with VerifyErrors during Java compilation
  • Fixed "failed to find constructor entry" error after converting an anonymous class to a lambda
  • Fixed an ArrayStoreException when using retrofit with certain method signatures

1.3.22 (September 30, 2016)

  • Fixed an issue with "Could not detect SDK version"
  • Fixed a FileSystemException "The process cannot access the file because it is being used by another process"
  • Fixed a StackOverflow in ClassNode.getSuperTypes()
  • JRebel for Android now minimizes the messages view when applying changes

1.3.20 (September 23, 2016)

  • Fixed issues with 'Expected baseVersionId'
  • Fixed a serialization issue with ACRA
  • Fixed an issue with Dagger 2 and incremental compilation

1.3.18 (September 19, 2016)

  • Fixed a ButterKnife build failure when a classname contains an underscore
  • Fixed a case where IDE messages tab does not show Gradle build failure reason
  • Fixed a Gradle build failure due to symbols not being found after switching branches

1.3.16 (September 13, 2016)

  • Improved handling of projects with multiple application modules
  • Fixed an incremental Java compiler issue with Icepick, Parceler, Dagger 1 and Dagger 2
  • Fixed a case where JRebel for Android stops with a SocketTimeoutException

1.3.14 (September 6, 2016)

  • Added Dart and Henson support to the incremental compiler
  • Fixed "FileNotFoundException: Input not found" if two libraries had same file name but different case
  • Fixed removing Android resources and classpath resources

1.3.12 (Aug 30, 2016)

  • Improved handling for cleaning the project build directory
  • Improved support for Parceler annotation processor
  • Improved handling for "Method code too large!"
  • Fixed a case where Gradle build did not fail while removed resource is referenced from code
  • Fixed debugger variable pane not showing correct toString() results
  • Fixed "EACCES (Permission denied)" during startup

1.3.10 (Aug 24, 2016)

  • Improved support for AutoValue extensions
  • Fixed Gradle builds failing due to stale generated files if a class had both Icepick and Butterknife annotations
  • Fixed Gradle builds always failing with some Kotlin projects
  • Fixed invalid characters in Gradle output if the OS encoding was not UTF-8
  • Fixed a case where resources changes could've been dropped after install due to a hash collision
  • Fixed code not applying in a case involving deep class hierarchies
  • Fixed JRebel for Android erroneously showing a "Project build directory has been cleaned" notification after a clean and a re-run
  • Fixed "Application data directory on device was cleaned." errors for multiprocess apps

1.3.8 (Aug 17, 2016)

  • Added AutoValue Moshi extension support to the incremental compiler
  • Fixed a NPE during Gradle build when applying changes for some Kotlin projects
  • Fixed ADB error handling
  • Fixed "Cannot remove missing resource" error with lambdas
  • Fixed an issue if resources were changed both before and after an application crash
  • Fixed showing JRebel for Android stopped messages in IDE

1.3.6 (Aug 9, 2016)

  • Fixed running JRebel for Android with Java 6 and Java 7

1.3.4 (Aug 9, 2016)

  • Fixed picking up new overriding methods in certain cases

1.3.2 (Aug 5, 2016)

  • Improved performance and stability of incremental Java compilation
  • Added Dagger 1 support into the incremental Java compiler
  • Disabled incremental Java compilation for projects with KAPT (Annotation Processing Tool for Kotlin) due to incompatibility
  • Added support for adding delegate properties to Kotlin classes
  • Fixed IllegalStateException: expected class info
  • Fixed detecting changes when classes were removed with no other changes
  • Fixed seeing old classes after application crash
  • Fixed Gradle builds always failing if the project had missing classpath entries
  • Fixed ADB integration when ADB_TRACE was turned on
  • Fixed handling PackageManager errors
  • Improved handling of clearing the application data directory

1.3.0 (July 28, 2016)

  • IntelliJ IDEA is now supported if the project uses the Android Gradle plugin
  • Added incremental compilation support to projects with Kotlin and Java
  • Added JRebel for Android events to IDE event log
  • Improved performance and stability of incremental Java compilation
  • Improved handling when the device has run out of free internal storage space
  • Improved handling for applying changes to lambdas
  • Improved handling for inner class removal
  • Fixed showing local variables in debugger
  • Fixed NullPointerException in methods called from constructors
  • Fixed FileAlreadyExistsException for .DS_Store

1.2.30 (July 21, 2016)

  • Improved performance and stability of incremental Java compilation
  • Removed support for Gradle 2.14. Please use Gradle 2.13 and earlier or Gradle 2.14.1 and later to use JRebel for Android
  • Fixed a Resources$NotFoundException occurring after clearing app data
  • Fixed Gradle build failures indicating a LibraryPlugin class loaders mismatch
  • Fixed Java compilation emitting warnings when running with JRebel for Android

1.2.28 (July 14, 2016)

  • Fixed a NullPointerException with Resources.getAssets()
  • Improved performance and stability of incremental Java compilation
  • Improved performance of loading resources on startup
  • Improved handling file system race condition on startup
  • Improved handling of clearing the application data directory

1.2.26 (July 12, 2016)

  • Enabled incremental compilation with Dagger 2 annotation processor for all users
  • Improved handling of obsolete generated sources from annotation processors
  • Fixed an issue where package-private methods would run old code
  • Fixed an issue surfaced by Otto where getDeclaredMethods would fail for abstract methods
  • Fixed build failure caused by 'Empty import declarations have no name'
  • Fixed 'Apply Changes' build failure caused by failing to process anonymous inner classes incl. $$Lambda generated classes

1.2.24 (July 1, 2016)

  • Added support for gradle-3.0-milestone-2
  • Improved runtime reflection speed (large impact on deserialization performance when using Gson or Jackson)
  • Improved Retrofit support

1.2.22 (June 29, 2016)

  • Enabled incremental Java compilation for all users
  • Fixed SecurityException during startup on some multi-user devices
  • Fixed a rare case where resources would be out of date after a rerun
  • Fixed a NullPointerException occurring when ADB was unresponsive
  • Fixed a case where all Gradle builds failed due to file encoding issues with aapt

1.2.20 (June 22, 2016)

  • Fixed 'Project contains classes compiled for Java 8 or newer' for compileSdkVersion 24
  • Fixed handling of clearing the application data directory
  • Fixed handling INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE

1.2.18 (June 20, 2016)

  • Improved performance and stability of incremental Java compilation
  • Fixed "Remote debugger is not attached yet" failure with Individual license
  • Fixed AdbBrokenPipeException

1.2.16 (June 16, 2016)

  • Improved Butterknife support in the incremental Java compiler
  • Improved attaching debugger on startup
  • Improved handling timeout on apply changes
  • Fixed throwing AbstractMethodError instead of IllegalArgumentException in Method.invoke()
  • Fixed Method.invoke() not always calling static initializers
  • Fixed handling application installation failures

1.2.14 (June 8, 2016)

  • Improved performance and stability of incremental Java compilation
  • Improved handling when the device has run out of free internal storage space
  • Fixed "No files to commit" crashes during startup
  • Fixed a crash when closing the emulator while JRebel for Android is starting

1.2.12 (May 31, 2016)

  • Improved performance and stability of incremental Java compilation
  • Disable Incremental Java compilation when project uses Error Prone due to incompatibilities
  • Changes are now applied after the top-most activity is destroyed and before it's recreated
  • Fixed "Could not connect to the agent"
  • Fixed TimeOutException on startup
  • Fixed IllegalStateException: Missing optimized DEX file surfaced by ADB flakiness
  • Fixed apply changes with some custom views
  • Fixed IllegalStateException: class loader is not a PathClassLoader

1.2.10 (May 24, 2016)

  • Fixed starting JRebel for Android with emulators on Android Studio 2.2 preview 1
  • Fixed incremental compilation not kicking in when generated sources were changed
  • Fixed occasional "zip file closed" error when modifying classes in library projects
  • Fixed an UnsatisfiedLinkError surfaced by React Native
  • Fixed starting up on Kitkat devices with ART enabled

1.2.8 (May 20, 2016)

  • Added support for Android Studio 2.2 preview 1
  • Added support for Android Gradle plugin 2.2.0-alpha1
  • Fixed handling duplicate classpath resources

1.2.6 (May 18, 2016)

  • Added support for transforms (like Retrolambda) in Android library projects
  • Fixed Gradle build instability after making AndroidManifest.xml changes
  • Fixed a case where the app keeps crashing with "Out of order map item" dex2oat error
  • Fixed a "Failed to accept socket" concurrency issue on app startup

1.2.4 (May 16, 2016)

  • Incremental Java compilation now supports the Icepick library
  • Disable incremental Java compilation when the project uses Error-prone due to incompatibilities
  • Fixed switching from ART to Dalvik device with no changes
  • Fixed "simulation exception"
  • Fixed "commit failed"
  • Fixed MissingBackpressureException
  • Fixed serialVersionUID on Android N

1.2.2 (May 10, 2016)

  • Enabled custom incremental java compiler for more users
  • Improved SugarORM support
  • Fixed hitting breakpoints in static initializers and constructors of Application subclasses

1.2.0 (May 9, 2016)

  • JRebel for Android now includes a custom incremental Java compiler supporting Butter Knife and Dagger (both 1 and 2)
  • Added support for configuring Gradle though IDE settings
  • Added support for SugarORM library
  • Improved apply changes speed
  • Improved anonymous inner class handling
  • Improved stability on Android N
  • Fixed loading native libraries on Android N
  • Fixed applying changes to Android resources with APK splits
  • Fixed "Missing optimized DEX file"
  • Fixed including native libraries from non-standard locations
  • Fixed RuntimeException when debugger could not be attached due to a failing emulator

1.1.14 (April 27, 2016)

  • Improved incremental javac performance (experimental flag)
  • Added initial support for Android N preview
  • Fixed handling projects where apk path changes with each build
  • Fixed occasional aapt "Error parsing XML: no element found"
  • Fixed "The specified installation directory does not exist" Gradle error on startup
  • Fixed a possible ConcurrentModificationException when some classes were removed
  • Fixed UnsatisfiedLinkError for arm applications on devices with libhoudini
  • Fixed handling disconnecting the device from the host computer

1.1.12 (April 21, 2016)

  • Improved incremental javac support for ButterKnife (experimental flag)
  • Fixed handling library changes with .so files
  • Fixed RuntimeException: Method code too large!

1.1.10 (April 14, 2016)

  • Initial Dagger 1 annotation processor support for incremental javac (experimental flag)
  • Improved applying changes to Kotlin and Retrolambda anonymous inner classes
  • Improved handling for no space left on device
  • Fixed starting a non-existant activity declared in the manifest
  • Fixed "End Of Central Directory signature not found"
  • Fixed an issue with UnsubscribedException
  • Fixed "Could not process" for AutoValue generated class
  • Fixed activity task handling when resuming application from launcher
  • Fixed a case where dependent classes were not recompiled when a constant was removed (experimental flag)
  • Fixed incorrect "Execution of removed code detected" events restarting the app even though no code was removed

1.1.8 (April 5, 2016)

  • Improved connection handling stability with experimental flag enabled
  • Fixed file locking issues with experimental flag enabled
  • Fixed an IllegalArgumentException in IDE
  • Fixed layout inflation issues when an imeActionId attribute referenced an ID
  • Fixed multiple issues with removing methods
  • Fixed disk space leak on the host computer
  • Fixed showing previous application crash on startup
  • Fixed installing application twice on startup
  • Fixed IllegalStateException: anon inner class cannot have changed super class
  • Fixed dex SimExceptions when testCoverageEnabled was true

1.1.6 (March 29, 2016)

  • Improved connection handling with the device (experimental flag)
  • Added source navigation support to incremental Java compiler errors (experimental flag)
  • Added support for changing assets referenced from WebView
  • Reduced Gradle overhead when applying changes
  • Improved the reporting of application crashes in the JRebel for Android IDE tool window
  • Fixed a case where only removing classes and then applying changes could lead to a broken state
  • Fixed occasional Jansi warnings on Windows when using the incremental Java compiler (experimental flag)
  • Fixed JRebel for Android sometimes not starting with 32-bit JVMs
  • Fixed incompatibilities with Android Gradle plugin 1.4.0-beta versions
  • Fixed a bug where upgrading JRebel for Android IDE plugin could lead to a broken JRebel for Android installation on Windows
  • Fixed an occasional ObjectCollectedException when using the debugger with a Kotlin project

1.1.4 (March 21, 2016)

  • Improved support for RoboGuice and Guice libraries
  • Improved handling of removed classes and methods
  • Improved connection handling with the device (experimental flag)
  • Improved startup speed for projects using ProGuard for debug builds
  • Decreased IO overhead during apply changes
  • Fixed a bug with Retrolambda where classes were not transformed
  • Fixed resource ID inconsistencies surfaced by projects with APK splits
  • Fixed UnsatisfiedLinkError for projects having only armeabi native libraries
  • Fixed "null is not a valid development app key" startup error with Urban Airship library
  • Fixed startup error when IDE is running with 64-bit VM and project is configured to use 32-bit VM

1.1.2 (March 14, 2016)

  • Enabled Dagger 2 support with incremental compiler (experimental flag)
  • Fixed bugs with incremental compiler (experimental flag)
  • Fixed library project changes not being picked up for certain projects

1.1.0 (March 8, 2016)

  • Improved startup times
  • Reduced memory usage overhead on the device, especially for large apps
  • Fixed a NullPointerException when restarting the app after it had crashed

1.0.28 (March 2, 2016)

  • Improved handling agent crashes
  • Fixed IllegalStateException: classId not yet created
  • Fixed issues with ClassNotFoundException
  • Fixed causing INSTALL_PARSE_FAILED_MANIFEST_MALFORMED when running without JRebel for Android

1.0.26 (February 23, 2016)

  • Added back incremental javac with support for ButterKnife (experimental flag)

1.0.24 (February 17, 2016)

  • JRebel for Android no longer needs changes to build.gradle files. Existing configuration is removed automatically.
  • Added indeterminate progress bar for startups and applying changes
  • Improved handling for applying changes to Kotlin lambdas
  • Fixed IllegalAccessException for private static methods turned into non-private
  • Fixed stack underflow when dexing

1.0.22 (February 10, 2016)

  • Improved handling of removed classes
  • Fixed NoSuchFieldErrors surfaced by Butterknife
  • Fixed a few issues with experimental features (experimental flag)

1.0.20 (February 5, 2016)

  • Fixed "No project layout set." IllegalStateException introduced in 1.0.18

1.0.18 (February 3, 2016)

  • Improved handling of AndroidManifest.xml changes (experimental flag)
  • Improved handling of project structure changes (like changing dependencies)
  • Fixed the small (re-)launch button in the JRebel for Android console
  • Fixed a few bugs in the "Send Feedback" dialog
  • Fixed displaying an application crash when the stacktrace was large (1+ MB)
  • Fixed a NullPointerException when preparing the application
  • Fixed Otto subscriptions with final methods

1.0.16 (January 27, 2016)

  • Improved reloading speed (experimental flag)
  • Improved initial and incremental install speed for projects having JNI libraries (experimental flag)
  • Fixed class path resources missing when minify enabled
  • Fixed edge case IllegalAccessError when accessing public fields through reflection

1.0.14 (January 18, 2016)

  • Added support for Android Studio Preview 5
  • Added support for Android Gradle plugin 2.0.0-alpha5
  • Reverted native library optimization due to instabilities

1.0.12 (January 14, 2016)

  • Improved startup times for apps with native libraries
  • Fixed a runaway allocation causing large performance problems on the device

1.0.10 (January 8, 2016)

  • Improved startup time when proguard is enabled
  • Fixed IllegalStateException: A class file was deleted during processing
  • Fixed Illegal class access error with Kotlin
  • Fixed switch branching when new values were added to enums
  • Fixed IllegalStateException: No files to commit
  • Fixed NullPointerException with ClassLoader
  • Fixed issues with NoClassDefFoundError

1.0.8 (December 30, 2015)

  • Fixed "GC overhead limit exceeded" for larger apps
  • Fixed an issue with ActiveAndroid
  • Fixed an issue with anonymous inner classes
  • Improved support for APK splits

1.0.2 (December 22, 2015)

  • Improved startup performance
  • Fixed a StackOverflowError surfaced by butterknife
  • Fixed calling public methods in private classes via reflection
  • Fixed IllegalStateException: JRebel was not configured for the project

1.0.0 (December 15, 2015)

  • All users are now eligible for a new 21-day trial
  • Added support for Android Studio 2.0 Preview 3b
  • Improved debugger integration
  • Really fixed "Invalid Gradle Timings found" error
  • Fixed StackOverflowError surfaced by certain class hierarchies

0.9.46 (December 9, 2015)

  • Significantly improved startup times, especially for large projects
  • Fixed a regression introduced in 0.9.40 with resource handling in library projects
  • Fixed a debugger issue with displaying local variables

0.9.44 (December 7, 2015)

  • Improved compatibility with Android Studio 2.0
  • Improved error messaging in the JRebel for Android tab
  • Fixed an abstract method issue with Devices running 4.4 or older
  • Fixed a font issue in the "Send feedback" dialog
  • Fixed "Invalid Gradle timings found" error
  • Fixed a case where terminating the app from the IDE would restart the app

0.9.42 (December 2, 2015)

  • Decreased startup time by about 1 second
  • Fixed DexException: no classfiles specified

0.9.40 (December 1, 2015)

  • Fixed resources instances not getting new configuration
  • Fixed issue with debugger integration

0.9.38 (November 27, 2015)

  • Added support for the Retrolambda 3.3.x-beta Gradle plugin
  • Fixed NoClassDefFoundError with some Retrolambda reloads
  • Fixed IllegalStateException: Could not read error report: Permission denied
  • Fixed ManifestParseException for manifests with duplicate string entries in the string pool
  • Fixed a regression with loading JNI libraries when using Android Gradle plugin 1.5.0 or later

0.9.36 (November 24, 2015)

  • Improved reload performance for build variants with minifyEnabled
  • Added support for Android Gradle plugin 2.0.0-alpha1
  • Added support for Android Studio 2.0 Preview

0.9.34 (November 23, 2015)

  • Fixed issues related to Retrolambda
  • Fixed mismatched stack depths exception
  • Fixed erroneously showing previous crash stacktrace after restarting

0.9.32 (November 16, 2015)

  • Added support for Android Studio 1.5 RC1
  • Added support for Android Gradle plugin 1.5.0

0.9.30 (November 11, 2015)

  • Fixed ClassNotFoundException on startup
  • Fixed ClassNotFoundException when unmarshalling
  • Fixed NoSuchMethodError: No virtual method __jr_super_selector__

0.9.28 (November 3, 2015)

  • Fixed IllegalStateException: no 'this' pointer within static method
  • Fixed NullPointerException in ReflectionAnnotationHelper
  • Fixed MissingBackpressureException
  • Fixed ClassCastException with ClassLoader

0.9.26 (October 29, 2015)

  • Fixed a restart loop
  • Fixed NoSuchMethodError
  • Fixed FileNotFoundException: Bundle does not exist
  • Fixed IllegalStateException: Could not find info
  • Fixed MissingBackpressureException

0.9.24 (October 26, 2015)

  • Improved initial startup time (ca 20% on 4-core CPU)
  • Fixed No reloads expected
  • Fixed FileNotFoundException on startup
  • Fixed Resource entry is already defined

0.9.22 (October 16, 2015)

  • Fixed issues with Android Studio 1.5 Preview 1
  • Fixed a reflection issue with dynamic proxies

0.9.20 (October 14, 2015)

  • Fixed signing APK without keypass
  • Fixed invalid local when dexing Groovy code
  • Fixed an issue for Kotlin M14

0.9.18 (October 7, 2015)

  • Improved application startup performance
  • Improved showing application crash dialog
  • Fixed clean build failures when both multidexEnabled and minifyEnabled were set
  • Fixed NullPointerException when processing classes
  • Fixed IllegalStateException: ClassId not yet created
  • Fixed IllegalStateException: Expected BEGIN_OBJECT
  • Fixed DexException with Groovy

0.9.16 (October 5, 2015)

  • Make project and make module do not trigger reload anymore - use the dedicated "Apply changes" button
  • Fixed StrictMode violations caused by JRebel for Android
  • Fixed NPE in Lookuputil
  • Fixed using 100% CPU when offline
  • Improved application startup performance

0.9.14 (September 24, 2015)

  • Added the option to restart an app from the crash dialog
  • Implemented support for referencing new methods from android:onClick attribute
  • Fixed compatibility issues with Android Gradle 1.4.0-beta2 plugin
  • Fixed a few issues with reloading lambdas processed by Retrolambda
  • Fixed handling Scala lambdas

0.9.12 (September 21, 2015)

  • Added a new "Apply changes with JRebel for Android" button for applying changes just like "Make Project"
  • Improved PID detection on application startup
  • Fixed a reflection bug surfaced by Otto and EventBus on Android M
  • Fixed handling constructors referencing new static variables
  • Fixed displaying method parameters in the debugger

0.9.10 (September 17, 2015)

  • Implemented automatic app restart on class hierarchy changes
  • Implemented initial support for reloading lambda classes
  • Improved subsequent startup speed
  • Fixed a ClassNotFoundException during initial launch

0.9.8 (September 15, 2015)

  • Implemented support for adding new GreenRobot EventBus subscribers
  • Fixed a bug with debugger where the values of some variables were not available
  • Fixed a bug related to renaming the application id
  • Fixed a crash when reloading apps with TabActivities
  • Fixed a bug with dotted enum names in attr definitions
  • Fixed a bug with overlapping application ids
  • Improved handling in case of crashes caused by OOM

0.9.6 (September 10, 2015)

  • Fixed an issue with Android Studio 1.4 Beta 3
  • Fixed attaching remote debugger
  • Fixed TimeoutException: Could not find PID
  • Fixed RuntimeException: Should never happen with Groovy
  • Fixed NullPointerException in PlainSocketImpl
  • Fixed NullPointerException in StackTraceUtil
  • Fixed IllegalStateException: Could not process class
  • Fixed IOException: Unable to delete file on startup
  • Fixed TimeoutException with Dexing
  • Improved handling INSTALL_FAILED_DUPLICATE_PERMISSION and INSTALL_FAILED_CONFLICTING_PROVIDER

0.9.4 (September 7, 2015)

  • Fixed a building issue with styleable attribute flags
  • Fixed a Dexer simulation error with Kotlin
  • Fixed an issue related to nested anonymous classes
  • Fixed an issue related to installing the application
  • Fixed an issue related to device reconnection
  • Fixed an issue related to class hierarchy changes
  • Fixed an issue with sending feedback
  • Increased dexer heap size if at least 8GB of RAM

0.9.2 (September 3, 2015)

  • Minor plugin metadata changes for publishing

0.9.0 (September 3, 2015)

  • Initial early access release

0.8.0.76 (August 31, 2015)

  • Fixed issues related to device reconnection

0.8.0.74 (August 28, 2015)

  • Improved automatic Gradle configuration
  • Improved adb error handling
  • Increased dexer heap size when on a 64-bit JVM

0.8.0.72 (August 24, 2015)

  • Fixed IDE plugin crash on Android Studio 1.4 Preview 3
  • Fixed thrown exception type when calling Enum.valueOf with non-existant value

0.8.0.70 (August 21, 2015)

  • Fixed VerifyError with abstract methods
  • Fixed startup bug with ActiveAndroid
  • Fixed NullPointerException with processing classes
  • Fixed NullPointerException with splash screen
  • Decreased memory usage on machines with smaller RAM

0.8.0.68 (August 18, 2015)

  • Fixed bugs related to nested anonymous classes

0.8.0.66 (August 14, 2015)

  • Fixed IDE plugin for Android Studio 1.4 preview
  • Fixed several bugs related to nested anonymous inner classes
  • Fixed reloading for Kotlin lambda classes and synthetic classes
  • Fixed startup on 32bit Windows
  • Fixed StackOverflowError for field annotations retrieval

0.8.0.64 (August 13, 2015)

  • Fixed several bugs related to nested anonymous classes
  • Fixed VerifyError for private static native methods
  • Fixed ClassNotFound on only library changes
  • Fixed launch for users with overwritten user.home property
  • Fixed Class.newInstance for classes with protected constructors only
  • Fixed startup bug for applications listening on TCP ports

0.8.0.62 (August 11, 2015)

  • Fixed building project with resource ids containing dots
  • Fixed an issue with INSTALL_FAILED_VERSION_DOWNGRADE
  • Fixed IllegalAccessException with some reflective calls
  • Fixed IllegalStateException on reload
  • Fixed NullPointerException from Throwable.getStackTrace
  • Improved error handling

0.8.0.60 (August 7, 2015)

  • Improved connection stability between the device and JRebel for Android
  • Fixed a regression in startup time for single-module projects
  • Fixed a NPE surfaced by reflective getConstructor call
  • Fixed an issue where Fragment.onViewCreated() callbacks were dropped
  • Fixed a crash during "Make Project" if the project had empty gradle modules
  • Fixed a case where dex2oat would fail during startup
  • Fixed IDE crash when Gradle build failed while JRebel for Android was running

0.8.0.58 (August 5, 2015)

  • Fixed a regression in startup performance for single-module projects
  • Fixed an issue with Make project icon
  • Fixed a bug related to cleaning the project while JRebel for Android was running

0.8.0.56 (August 4, 2015)

  • Fixed a bug surfaced by upgrading butterknife
  • Fixed an app crash when a view type for a given id was changed in layout
  • Fixed a startup failure caused by having an android:backupAgent in manifest
  • Fixed an issue when a library was using Thread.getContextClassLoader()
  • Fixed running projects which did not have gradle direct invocation enabled
  • Fixed a startup issue on Samsung 4.1 and 4.2 devices

0.8.0.54 (July 28, 2015)

  • Improved consecutive startup speed
  • Fixed class loading issue
  • Fixed showing 'make project' dialog when not applicable
  • Improved messaging when attempting to launch JRebel with non-debuggable build variant

0.8.0.52 (July 24, 2015)

  • Improved anonymous inner class reloading
  • Fixed issue causing startup crash
  • Fixed invoking private native methods
  • Fixed an issue causing reloads to fail

0.8.0.50 (July 16, 2015)

  • Strongly advising the usage of 'make project' instead of 'make module' to trigger reloads
  • Fixed picking up library changes at startup
  • Skip compilation of tests if JRebel is running
  • Fixed getting AbstractMethodError and IllegalAccessException with reflection
  • Fixed resource changes not being picked up after restart due to unsupported class change
  • Fix critical startup crash when using JDK 7+ constructors in subclasses

0.8.0.48 (July 8, 2015)

  • Re-enabled startup performance optimizations (instabilities resolved)
  • Fixed a bug impacting first reload time
  • Fixed a NullPointerException with Gson
  • Fixed Gradle configuration issues with in-tree App Engine modules

0.8.0.46 (July 6, 2015)

  • Disabled startup performance optimization due to instability
  • Fixed an issue with Kotlin on Dalvik

0.8.0.44 (July 3, 2015)

  • Improved startup performance
  • Improved reloading .proto changes with the Wire library
  • Fixed an issue with invoking constructors via reflection
  • Fixed an issue with starting application on the device
  • Fixed reloading constructors with try-catch blocks

0.8.0.42 (June 26, 2015)

  • Added launch with debugger support
  • Improved anonymous inner class reloading
  • Fixed a bug surfaced by Jodatime-android
  • Fixed a dexing issue surfaced by the Wire library
  • Fixed invoking package-private methods declared within a reloaded superclass
  • Fixed printing app crash stacktrace in IDE logcat view

0.8.0.40 (June 17, 2015)

  • Fixed a possible IDE hang on startup

0.8.0.38 (June 15, 2015)

  • Improved startup times
  • Fixed printing crash stacktraces on device
  • Fixed an issue with handling anonymous inner class constructors
  • Fixed an occasional IDE hang when switching or closing projects

0.8.0.36 (June 9, 2015)

  • Fixed a StrictMode violation when reloading
  • Fixed a NoMethodFound error when using Otto
  • Add support for buildtools 23-rc1 and 23-rc2

0.8.0.34 (June 5, 2015)

  • Fixed app crash dialog not showing up when running with JRebel
  • Fixed a case where reloads were dropped after a class had been reloaded more than 9 times
  • Improved startup times

0.8.0.32 (June 2, 2015)

  • Fixed a crash with parcelables when reloading
  • Reduced the heap space on device used by JRebel

0.8.0.30 (May 29, 2015)

  • Added support for custom keystore types
  • Fixed issue regarding certain changes to resources causing compilation to fail
  • Fixed an issue with loading custom fonts from assets
  • Reduced heap space usage on the device
  • Added a menu item to Android Studio enabling easy sending of feedback and log files

0.8.0.27 (May 26, 2015)

  • Significantly improved resource reload times
  • Fixed malformed manifest bug on initial install
  • Improved support for using annotation processors in various project configurations
  • Increased initial install timeouts for really large apps
  • Fixed a class processing issue if Kotlin and Butterknife were used in the same project

0.8.0.26 (May 20, 2015)

  • Improved start-up times, especially with large multidex apps
  • Fixed an issue with main dex list being too large for some multidex apps
  • Fixed an activity leak caused by JRebel
  • Fixed app startup on ICS devices

0.8.0.25 (May 18, 2015)

  • Fixed a crash due to a closed AssetManager
  • Fixed reloads not triggering in single-module projects
  • Fixed failing PID detection for apps with numbers in the application id

0.8.0.24 (May 15, 2015)

  • JRebel is now quicker at reacting to changes
  • Improved resource reloading speed
  • Reloading anonymous inner classes is now more robust
  • Fixed a ClassNotFoundException surfaced by annotation processing
  • Fixed a buffer overflow at startup
  • Fixed support for Retrolambda gradle plugin 3.1.0
  • Better support for really large multidex apps
  • Fixed a reload crash if the app uses custom view IDs

0.8.0.23 (May 12, 2015)

  • Fixed an issue with 9-patch drawables not being processed correctly

0.8.0.21 (May 11, 2015)

  • Improved the performance of reloads
  • Improved support for multi-dex applications
  • Fixed a BufferOverflowException on startup
  • Fixed an issue with the Retrolambda library

0.8.0.20 (May 5, 2015)

  • Fixed an issue with stopwatch
  • Fixed duplicate R classes on startup
  • Fixed NullPointerException on startup
  • Improved startup performance on ART

0.8.0.19 (April 30, 2015)

  • Fixed TCP port collision on device
  • Added support for starting JRebel with specific activity in the run configuration
  • Fixed handling custom source generators in Gradle

0.8.0.18 (April 29, 2015)

  • Fixed file watching issues
  • Reloading resources is now triggered by make module, just like code changes
  • Log file location has been moved out of the build dir to $USER/.jrebel-android/logs
  • Improved printing stacktraces

0.8.0.17 (April 27, 2015)

  • Fixed disk space leak on the device
  • Improved automatic configuration of build.gradle files
  • Fixed automatic restarting of the app

0.8.0.16 (April 23, 2015)

  • Fixed loading JNI libraries
22.11.2016
nice plugin,thanks
Please  sign in  to leave a comment.