Releases: ericwlange/AndroidJSCore
AndroidJSCore-3.0.1
Go get it at JitPack!
- Combined all javascriptcore libraries into a single .so
- Fixed issue #27 (Confirmed that it plays nice with React Native)
- Fixed issue #22 (Removed use of
libgnustl_shared.soand instead used static version) - Closed issues #28 (does not work for my purposes)
- Fixed issue where legacy versions of Android might crash
AndroidJSCore-3.0.0
Official 3.0.0 release
- Completed instrumentation tests
- Typed arrays complete
- Cleaned up APIs
Step 1. Add the JitPack repository to your build file
Add it in your root build.gradle at the end of repositories:
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
Step 2. Add the AndroidJSCore dependency
dependencies {
compile 'com.github.ericwlange:AndroidJSCore:3.0.0'
}
Please see the Javadocs for detailed API documentation.
AndroidJSCore-3.0-pre2
Please upgrade to this version.
- Finally fixed the hanging bug for reals
- Correctly set package as
org.liquidplayer.webkit.javascriptcore - Fixed bug where JS and Java garbage collectors could get out of sync
- Completely revamped
JSArrayimplementation that implements both Javajava.util.Listand all the JavaScript functions; now parameterized for convenience (your previousJSArrayimplementations will break -- sorry) - Full Java support for typed arrays (tests not complete)
- This version is substantially faster than previous versions when run outside of the main thread
To use, simply download AndroidJSCore-3.0-pre2-release.aar, drop it into your project somewhere (e.g. libs/), and add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'AndroidJSCore-3.0-pre2-release', ext:'aar')
}
Please see the Javadocs for detailed API documentation.
Once 3.0 is fully tested and debugged, I will add it to a remote repository, simplifying the process further.
AndroidJSCore-3.0-pre1
Please upgrade to this version. It contains some significant improvements.
- Fixed all known memory leaks and instabilities
- Deprecated all function code from
JSObjectand createdJSFunctionfor simplicity - Corrected how functions and constructors are handled -- this was very broken before (especially constructors)
- Fixed a bunch of little inconsistencies between the way JavaScript handles things and how the AndroidJSCore Java wrapper handled them (example, returning
nullinstead ofundefinedin certain circumstances)
To use, simply download AndroidJSCore-3.0-pre1-release.aar, drop it into your project somewhere (e.g. libs/), and add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'AndroidJSCore-3.0-pre1-release', ext:'aar')
}
Please see the Javadocs for detailed API documentation.
Once 3.0 is fully tested and debugged, I will add it to a remote repository, simplifying the process further.
AndroidJSCore-2.2-pre2
Please upgrade to this version. The deadlocking bug has finally been isolated and neutralized. Please test and report any issues.
- Fixed major P0 bug - deadlocking in long ops
- A number of other stability fixes
- Fixed some bugs where edge cases in Java give different results than, say, Node (example: returning null instead of undefined in some instances)
- Fixed broken (but barely used) string functions
- Added
JSValue.isArray()andJSValue.isDate() - Correctly implemented
JSValue.isInstanceOfConstructor() - Added some more convenience functions
- Better array handling (e.g. functions can now return arrays)
To use, simply download AndroidJSCore-2.2-pre2-release.aar, drop it into your project somewhere (e.g. libs/), and add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'AndroidJSCore-2.2-pre2-release', ext:'aar')
}
Please see the Javadocs for detailed API documentation.
Once 2.2 is fully tested and debugged, I will add it to a remote repository, simplifying the process further.
AndroidJSCore-2.2-pre1
This is a pre-release of AndroidJSCore-2.2. It may still have some issues, but it would be great if you could start testing it in your apps. Added in this release:
- Stability fixes and memory leak plugs -- please help me test if this fixes the hanging problems
- JIT on ARM. Just-in-time compilation now works on all non-MIPS processors
- Compiles against API 9 (Gingerbread) for greater legacy support
To use, simply download AndroidJSCore-2.2-pre1-release.aar, drop it into your project somewhere (e.g. libs/), and add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'AndroidJSCore-2.2-pre1-release', ext:'aar')
}
Please see the Javadocs for detailed API documentation.
Once 2.2 is fully tested and debugged, I will add it to a remote repository, simplifying the process further.
AndroidJSCore 2.1
- Now supports 64-bit architectures (
arm64-v8a,x86_64, andmips64) - Includes support for Jellybean 4.1.x and newer (API 16+), representing 94.1% of devices
- Fixed stack overflow issues when executing from main thread
- Thread-safety ensured
- Added context-level exception handler
- Fixed memory leak with UTF8 strings
- Updated example app
To use, simply download AndroidJSCore-2.1-release.aar, drop it into your project somewhere (e.g. libs/), and add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'AndroidJSCore-2.1-release', ext:'aar')
}
Please see the Javadocs for detailed API documentation.
AndroidJSCore 2.0
This is a major new release, though the Java API is unchanged. Highlights:
- Updated for Android Studio 1.5+
- Library footprint substantially smaller than 1.0
- No longer depends on JavaScriptCore for Android project
- Now contained in a single
.aarlibrary file for better portability - libJavaScriptCore and wrapper lib now combined into single lib
To use, simply download AndroidJSCore-2.0-release.aar, drop it into your project somewhere (e.g. libs/), and add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'AndroidJSCore-2.0-release', ext:'aar')
}
Please see the Javadocs for detailed API documentation.
Version 1.0
First complete release. Most bugs have been swatted and it is ready for use. The easiest way to use it is to simply untar AndroidJSCoreJNI-1.0.tar.gz in the root directory of your Android project and have fun!
Updated 06 Dec 2015! Nothing has changed code-wise, but I did manage to get the MIPS and X86 targets to build, so I've added them to the tarball.