Change Log - Version 8.0.0 - Release Date November 28, 2016
This release of PreEmptive Protection – DashO includes a wide range of enhancements, changes, and fixes. One major new feature is the ability to inject Debug Checks that can detect and respond to debugging at runtime. This release also includes a few backwards-incompatible changes, including that the minimum-required Java version is now 1.7. Please review the Changes section carefully, before upgrading.
- Added the ability to inject Debug Checks (
@DebugEnabledResponse), with new code annotations and a new user interface.
- New Tamper and Shelf Life UI screens.
- The User Guide is now in an easy-to-read HTML format.
- Lucidator now provides a command-line mode and ships with DashO.
- A new map file conversion tool:
- Added an Android debug check sample.
- Updated the injected code annotations and virtual annotations to include a
customDataSourceelement which replaces
- Improved logging of injected code.
- Improved the Android project wizard.
- Added the ability to inject Debug Checks (
- DashO now requires a 1.7 JVM or higher, to run.
- Changed product name from DashO to PreEmptive Protection - DashO.
- The DashO GUI now saves modified projects before building.
- Ant-based configuration of
.doxfiles is deprecated.
- DashO builds now stop immediately if an error is encountered. Existing projects expecting output from DashO after errors will need to be updated to fix the errors.
HALTONFIRSTERRORglobal option has been removed, as its behavior is now the default. The option will be silently ignored for existing projects.
PRE_7_0_EXIT_BEHAVIORglobal option has been removed. A warning will be emitted for existing projects using this option.
.doxconfiguration format has changed. Opening an older project file in this new version of DashO will perform a one-way migration of the project file.
<instrumentation>section has been moved under a new
@TamperResponsevirtual annotations are now under new
@ExpiryCheckvirtual annotation has been replaced with the new
@ExpiryTokenSourcevirtual annotations have been replaced with attributes on the new
@SignerInfovirtual annotation was replaced with
<signerInfo>inside the new
- Lucidator output has been changed to better mimic actual stack traces, rather than the prior report-style output.
- The Instrumentation UI has been updated.
- Method-level virtual annotations can no longer be applied at the class level.
@PropertySourceannotation is deprecated and replaced with the per-annotation property
@SignerInfoannotation is deprecated and replaced with properties inside
@ExpiryCheckannotation has been renamed to
@ExpiryTokenSourceannotations have been deprecated in favor of properties of the new
@ReportCaughtExceptionsannotations will emit build warnings if the injection site has no throw statements or catch blocks, respectively.
responseattribute is now an enumeration.
@TamperResponsecode annotation now requires the
sourceattribute to be set.
- Setting the
0in a Tamper Response now disables the response, instead of triggering it every time.
- A Tamper Response with an incorrectly configured probability will generate a build error.
- A Tamper Check with no valid action, response, or message will generate a build error.
- Checks, responses, and code injection virtual annotations that are configured but unused during injection will produce a build error. Other unused annotations will produce a build warning.
- The Android Ant project wizard was removed.
- The Android project wizard now defaults
- The reflection report no longer includes classes from the merged PreEmptive Analytics runtime.
- The renaming map file will now contain all classes, methods, and fields processed by DashO and not just ones which were renamed.
- An error will be output when a renaming input map contains a new name for a class, method, or field which is configured as non-renameable.
- Updated to use ASM version 5.1.
- Includes apktool-2.2.1.
- The incremental renaming report no longer includes the globally excluded classes.
- Fixed the probability calculation for injected responses.
- Tamper Response will now send a message (when configured) even when
responseis set to
- Tamper Check no longer causes a validation issue on Android devices when using an old version of the Android build tools (e.g. v19.1 or v20.0) and a custom private
- Fixed an exception when processing configuration files under certain circumstances.
- Fixed an exception when processing the
athrowbytecode under certain circumstances.
- Direct APK processing no longer compresses assets, which prevented some apps from working properly.