diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4a8e3b9..d538af3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,15 @@
+## [3.1.0]
+
+### Changed
+
+* [video_editor_sdk] Raised minimum VideoEditor SDK for Android version to 10.9.0. See the [migration guide](https://img.ly/docs/vesdk/flutter/getting-started/migration-guides/3-1-0/) for more information.
+* [photo_editor_sdk] Raised minimum PhotoEditor SDK for Android version to 10.9.0. See the [migration guide](https://img.ly/docs/pesdk/flutter/getting-started/migration-guides/3-1-0/) for more information.
+
+### Fixed
+
+* Fixed potential crash on Android: `IllegalStateException "You need to use a Theme.AppCompat theme (or descendant) with this activity."`.
+* Fixed potential compiling issues due to missing namespace for Android.
+
## [3.0.0]
### Changed
@@ -108,7 +120,7 @@
### Changed
-* The img.ly maven repository is no longer automatically added to your Android project by the plugin. Please refer to the new step 3 in the [getting started](https://github.com/imgly/vesdk-flutter#android) section of the README for instructions on how to add it.
+* The IMG.LY maven repository is no longer automatically added to your Android project by the plugin. Please refer to the new step 3 in the [getting started](https://github.com/imgly/vesdk-flutter#android) section of the README for instructions on how to add it.
* Added support for PhotoEditor SDK and VideoEditor SDK for Android version 9.
### Added
diff --git a/LICENSE b/LICENSE
index e05de9e..d3dda20 100644
--- a/LICENSE
+++ b/LICENSE
@@ -4,7 +4,7 @@ In order to run any samples or use any wrapper without a watermark,
you'll have to purchase a commercial PhotoEditor SDK or VideoEditor SDK
license. Visit https://img.ly for more details.
-Copyright (c) 2014-2023, img.ly GmbH
+Copyright (c) 2014-2024, IMG.LY GmbH
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -17,7 +17,7 @@ modification, are permitted provided that the following conditions are met:
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
-3. Neither the name img.ly GmbH, img.ly, PhotoEditor SDK, VideoEditor SDK
+3. Neither the name IMG.LY GmbH, IMG.LY, PhotoEditor SDK, VideoEditor SDK
nor the names of its developers may be used to endorse or promote products
derived from this software without specific prior written permission.
diff --git a/README.md b/README.md
index e26f182..238c748 100644
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@ Add the plugin package to the `pubspec.yaml` file in your project:
```yaml
dependencies:
- video_editor_sdk: ^3.0.0
+ video_editor_sdk: ^3.1.0
```
Install the new dependency:
@@ -39,66 +39,14 @@ Install the new dependency:
flutter pub get
```
-### Known Issues
-
-With version `2.4.0`, we recommend using `compileSdkVersion` not lower than `31` for Android. However, this might interfere with your application's Android Gradle Plugin version if this is set to `4.x`.
-
-If you don't use a newer Android Gradle Plugin version you'll most likely encounter a build error similar to:
-
-```
-FAILURE: Build failed with an exception.
-
-* Where:
-Build file 'flutter_test_application/android/build.gradle' line: 30
-
-* What went wrong:
-A problem occurred evaluating root project 'android'.
-> A problem occurred configuring project ':app'.
- > Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager.
-
-* Try:
-Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
-
-* Get more help at https://help.gradle.org
-```
-
-**As a workaround you can either:**
-
-1. Upgrade your Android Gradle Plugin version:
-
- Inside `android/build.gradle` update the version to at least `7.0.0`:
-
- ```diff
- buildscript {
- ...
- dependencies {
- - classpath 'com.android.tools.build:gradle:4.1.1'
- + classpath 'com.android.tools.build:gradle:7.0.0'
- ...
- }
- }
- ```
-
- After this, you need to update the Gradle version as well in `android/gradle/gradle-wrapper.properties`:
-
- ```diff
- - distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
- + distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip
- ```
-
-2. **Or** create the following symlinks:
-
-- Inside `/Users/YOUR-USERNAME/Library/Android/sdk/build-tools/31.0.0/`: Create a `dx` symlink for the `d8` file with `ln -s d8 dx`.
-- From there, go to `./lib/` and create a `dx.jar` symlink for the `d8.jar` file with `ln -s d8.jar dx.jar`.
-
### Android
-1. Add the img.ly repository and plugin by opening the `android/build.gradle` file (**not** `android/app/build.gradle`) and changing the following block:
+1. Add the IMG.LY repository and plugin by opening the `android/build.gradle` file (**not** `android/app/build.gradle`) and changing the following block:
```diff
buildscript {
- ext.kotlin_version = '1.3.50'
- + ext.kotlin_version = '1.5.32' // Minimum version.
+ + ext.kotlin_version = '1.7.21'
repositories {
...
mavenCentral()
@@ -107,13 +55,16 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
}
dependencies {
...
- + classpath 'ly.img.android.sdk:plugin:10.4.1'
+ + classpath 'com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:1.7.21-1.0.8' // Depending on your `kotlin_version` version.
+ + classpath 'ly.img.android.sdk:plugin:10.9.0'
...
}
}
```
- In order to update VideoEditor SDK for Android replace the version string `10.4.1` with a [newer release](https://github.com/imgly/pesdk-android-demo/releases).
+ The KSP version depends on the Kotlin version that you are using. In order to find the correct version, please visit the [official KSP release page](https://github.com/google/ksp/releases?page=1).
+
+ In order to update VideoEditor SDK for Android replace the version string `10.9.0` with a [newer release](https://github.com/imgly/pesdk-android-demo/releases).
2. Still in the `android/build.gradle` file (**not** `android/app/build.gradle`), add these lines at the bottom:
@@ -125,13 +76,13 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
}
```
-3. In the `android/app/build.gradle` file (**not** `android/build.gradle`) you will need to modify the `minSdkVersion` to at least `21`. We also recommend to update the `buildToolsVersion` to `31.0.0` or higher as well as the `compileSdkVersion` to `31` or higher:
+3. In the `android/app/build.gradle` file (**not** `android/build.gradle`) you will need to modify the `minSdkVersion` to at least `21` depending on the version of Flutter that you are using. We also recommend to update the `buildToolsVersion` to `34.0.0` as well as the `compileSdkVersion` to `34`:
```diff
android {
- compileSdkVersion flutter.compileSdkVersion
- + compileSdkVersion 31
- + buildToolsVersion "31.0.0"
+ + compileSdkVersion 34
+ + buildToolsVersion "34.0.0"
...
defaultConfig {
...
@@ -148,8 +99,8 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
```diff
android {
- compileSdkVersion 30
- + compileSdkVersion 31
- + buildToolsVersion "31.0.0"
+ + compileSdkVersion 34
+ + buildToolsVersion "34.0.0"
...
defaultConfig {
...
@@ -168,7 +119,7 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
apply plugin: 'kotlin-android'
// Comment out the modules you don't need, to save size.
- imglyConfig {
+ IMGLY.configure {
modules {
include 'ui:text'
include 'ui:focus'
diff --git a/android/build.gradle b/android/build.gradle
index 98c695d..7bc6ed4 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -2,7 +2,7 @@ group 'ly.img.flutter.video_editor_sdk'
version '1.0-SNAPSHOT'
buildscript {
- ext.kotlin_version = '1.5.32'
+ ext.kotlin_version = '1.7.21'
repositories {
google()
@@ -10,7 +10,7 @@ buildscript {
}
dependencies {
- classpath 'com.android.tools.build:gradle:4.1.1'
+ classpath 'com.android.tools.build:gradle:8.1.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
@@ -26,7 +26,7 @@ apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'ly.img.android.sdk'
-imglyConfig {
+IMGLY.configure {
vesdk {
enabled true
}
@@ -39,7 +39,7 @@ imglyConfig {
}
}
-def MIN_LY_IMG_ANDROID_SDK_PLUGIN_VERSION = "10.4.1"
+def MIN_LY_IMG_ANDROID_SDK_PLUGIN_VERSION = "10.9.0"
task checkVersion {
if (imglyConfig.convertToVersionNumber(imglyConfig.getVersion()) < imglyConfig.convertToVersionNumber(MIN_LY_IMG_ANDROID_SDK_PLUGIN_VERSION)) {
@@ -58,7 +58,10 @@ task checkVersion {
preBuild.dependsOn checkVersion
android {
- compileSdkVersion 31
+ if (project.android.hasProperty("namespace")) {
+ namespace "ly.img.flutter.video_editor_sdk"
+ }
+ compileSdkVersion 34
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
diff --git a/android/src/main/AndroidManifest.xml b/android/src/main/AndroidManifest.xml
index 44f75dc..46522ce 100644
--- a/android/src/main/AndroidManifest.xml
+++ b/android/src/main/AndroidManifest.xml
@@ -8,6 +8,8 @@
android:exported="false"
android:enabled="false"
android:name="ly.img.android.IMGLYAutoInit" />
-
+
diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle
index 8185d1a..9c475f0 100644
--- a/example/android/app/build.gradle
+++ b/example/android/app/build.gradle
@@ -26,7 +26,7 @@ apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
apply plugin: 'ly.img.android.sdk'
-imglyConfig {
+IMGLY.configure {
modules {
include 'ui:text'
include 'ui:focus'
@@ -62,7 +62,8 @@ imglyConfig {
}
android {
- compileSdkVersion 31
+ namespace 'ly.img.flutter.video_editor_sdk_example'
+ compileSdkVersion 34
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
@@ -76,7 +77,7 @@ android {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "ly.img.flutter.video_editor_sdk_example"
minSdkVersion 21
- targetSdkVersion 29
+ targetSdkVersion 34
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml
index 8516f92..beb5a0f 100644
--- a/example/android/app/src/main/AndroidManifest.xml
+++ b/example/android/app/src/main/AndroidManifest.xml
@@ -17,7 +17,8 @@
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
- android:windowSoftInputMode="adjustResize">
+ android:windowSoftInputMode="adjustResize"
+ android:exported="true">