Happy new year and hope you enjoy this release with lots of exciting updates!
This release brings support of lots of Java 8+ APIs!
Breaking changes
- Need to refresh the xcode project settings through Inject/Refresh Xcode Project Settings option in Android Studio/Intellij, or with the
moeUpdateXcodeSettings
gradle task. - Changes to the return type of the new_objc() & allocWithZone() methods could lead to incompatibility issue with user binding classes. You may need to regenerate bind classes.
- Name of some of the gradle tasks have been updated
Changelog
SDK changes
- Add lots of frequently used Java 8+ APIs, including (but not limited to):
java.util.stream
java.util.function
java.time
java.nio.file
- Recent additions to
java.util.{Map,Collection,Comparator}
- Optionals
- Add
org.moe.MOE.Build
class with following constants:-
boolean DEBUG
: whether the app is built with debug mode -
String PLATFORM_NAME
: the app platform, “iphoneos” or “iphonesimulator” -
boolean IS_SIMULATOR
: whether it’s running in simulator
-
- Updated API binding to iOS 15.3 SDK
- Deprecated iOS APIs are marked properly
-
Locale.getDefault()
now returns the same value asNSLocale.currentLocale()
Gradle plugin changes
- Remove retrolambda
- Allow disable proguard shrinking
- Allow enable proguard obfuscation
- Allow excluding files & classes completely
- Allow specifying different proguard configurations for debug & release mode
- Allow specifying build arch when launching app
- Improve app shrinking config so less manual configuration is needed when enable shrinking
- More improvements and bug fixes
Install / Upgrade
Simply change you build script to use the new plugin and SDK:
buildscript {
dependencies {
classpath group: 'org.multi-os-engine', name: 'moe-gradle', version: '1.9.0'
}
}