Skip to content

Commit 8d03a81

Browse files
committed
Add version 3.1.0
1 parent 83fd896 commit 8d03a81

File tree

14 files changed

+71
-99
lines changed

14 files changed

+71
-99
lines changed

CHANGELOG.md

+13-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
## [3.1.0]
2+
3+
### Changed
4+
5+
* [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.
6+
* [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.
7+
8+
### Fixed
9+
10+
* Fixed potential crash on Android: `IllegalStateException "You need to use a Theme.AppCompat theme (or descendant) with this activity."`.
11+
* Fixed potential compiling issues due to missing namespace for Android.
12+
113
## [3.0.0]
214

315
### Changed
@@ -108,7 +120,7 @@
108120

109121
### Changed
110122

111-
* 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.
123+
* 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.
112124
* Added support for PhotoEditor SDK and VideoEditor SDK for Android version 9.
113125

114126
### Added

LICENSE

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ In order to run any samples or use any wrapper without a watermark,
44
you'll have to purchase a commercial PhotoEditor SDK or VideoEditor SDK
55
license. Visit https://img.ly for more details.
66

7-
Copyright (c) 2014-2023, img.ly GmbH
7+
Copyright (c) 2014-2024, IMG.LY GmbH
88
All rights reserved.
99

1010
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:
1717
notice, this list of conditions and the following disclaimer in the
1818
documentation and/or other materials provided with the distribution.
1919

20-
3. Neither the name img.ly GmbH, img.ly, PhotoEditor SDK, VideoEditor SDK
20+
3. Neither the name IMG.LY GmbH, IMG.LY, PhotoEditor SDK, VideoEditor SDK
2121
nor the names of its developers may be used to endorse or promote products
2222
derived from this software without specific prior written permission.
2323

README.md

+14-63
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Add the plugin package to the `pubspec.yaml` file in your project:
3030

3131
```yaml
3232
dependencies:
33-
video_editor_sdk: ^3.0.0
33+
video_editor_sdk: ^3.1.0
3434
```
3535
3636
Install the new dependency:
@@ -39,66 +39,14 @@ Install the new dependency:
3939
flutter pub get
4040
```
4141

42-
### Known Issues
43-
44-
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`.
45-
46-
If you don't use a newer Android Gradle Plugin version you'll most likely encounter a build error similar to:
47-
48-
```
49-
FAILURE: Build failed with an exception.
50-
51-
* Where:
52-
Build file 'flutter_test_application/android/build.gradle' line: 30
53-
54-
* What went wrong:
55-
A problem occurred evaluating root project 'android'.
56-
> A problem occurred configuring project ':app'.
57-
> Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager.
58-
59-
* Try:
60-
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.
61-
62-
* Get more help at https://help.gradle.org
63-
```
64-
65-
**As a workaround you can either:**
66-
67-
1. Upgrade your Android Gradle Plugin version:
68-
69-
Inside `android/build.gradle` update the version to at least `7.0.0`:
70-
71-
```diff
72-
buildscript {
73-
...
74-
dependencies {
75-
- classpath 'com.android.tools.build:gradle:4.1.1'
76-
+ classpath 'com.android.tools.build:gradle:7.0.0'
77-
...
78-
}
79-
}
80-
```
81-
82-
After this, you need to update the Gradle version as well in `android/gradle/gradle-wrapper.properties`:
83-
84-
```diff
85-
- distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
86-
+ distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip
87-
```
88-
89-
2. **Or** create the following symlinks:
90-
91-
- 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`.
92-
- From there, go to `./lib/` and create a `dx.jar` symlink for the `d8.jar` file with `ln -s d8.jar dx.jar`.
93-
9442
### Android
9543

96-
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:
44+
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:
9745

9846
```diff
9947
buildscript {
10048
- ext.kotlin_version = '1.3.50'
101-
+ ext.kotlin_version = '1.5.32' // Minimum version.
49+
+ ext.kotlin_version = '1.7.21'
10250
repositories {
10351
...
10452
mavenCentral()
@@ -107,13 +55,16 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
10755
}
10856
dependencies {
10957
...
110-
+ classpath 'ly.img.android.sdk:plugin:10.4.1'
58+
+ classpath 'com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:1.7.21-1.0.8' // Depending on your `kotlin_version` version.
59+
+ classpath 'ly.img.android.sdk:plugin:10.9.0'
11160
...
11261
}
11362
}
11463
```
11564

116-
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).
65+
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).
66+
67+
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).
11768

11869
2. Still in the `android/build.gradle` file (**not** `android/app/build.gradle`), add these lines at the bottom:
11970

@@ -125,13 +76,13 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
12576
}
12677
```
12778

128-
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:
79+
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`:
12980

13081
```diff
13182
android {
13283
- compileSdkVersion flutter.compileSdkVersion
133-
+ compileSdkVersion 31
134-
+ buildToolsVersion "31.0.0"
84+
+ compileSdkVersion 34
85+
+ buildToolsVersion "34.0.0"
13586
...
13687
defaultConfig {
13788
...
@@ -148,8 +99,8 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
14899
```diff
149100
android {
150101
- compileSdkVersion 30
151-
+ compileSdkVersion 31
152-
+ buildToolsVersion "31.0.0"
102+
+ compileSdkVersion 34
103+
+ buildToolsVersion "34.0.0"
153104
...
154105
defaultConfig {
155106
...
@@ -168,7 +119,7 @@ Run with --stacktrace option to get the stack trace. Run with --info or --debug
168119
apply plugin: 'kotlin-android'
169120
170121
// Comment out the modules you don't need, to save size.
171-
imglyConfig {
122+
IMGLY.configure {
172123
modules {
173124
include 'ui:text'
174125
include 'ui:focus'

android/build.gradle

+8-5
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ group 'ly.img.flutter.video_editor_sdk'
22
version '1.0-SNAPSHOT'
33

44
buildscript {
5-
ext.kotlin_version = '1.5.32'
5+
ext.kotlin_version = '1.7.21'
66

77
repositories {
88
google()
99
mavenCentral()
1010
}
1111

1212
dependencies {
13-
classpath 'com.android.tools.build:gradle:4.1.1'
13+
classpath 'com.android.tools.build:gradle:8.1.2'
1414
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1515
}
1616
}
@@ -26,7 +26,7 @@ apply plugin: 'com.android.library'
2626
apply plugin: 'kotlin-android'
2727
apply plugin: 'ly.img.android.sdk'
2828

29-
imglyConfig {
29+
IMGLY.configure {
3030
vesdk {
3131
enabled true
3232
}
@@ -39,7 +39,7 @@ imglyConfig {
3939
}
4040
}
4141

42-
def MIN_LY_IMG_ANDROID_SDK_PLUGIN_VERSION = "10.4.1"
42+
def MIN_LY_IMG_ANDROID_SDK_PLUGIN_VERSION = "10.9.0"
4343

4444
task checkVersion {
4545
if (imglyConfig.convertToVersionNumber(imglyConfig.getVersion()) < imglyConfig.convertToVersionNumber(MIN_LY_IMG_ANDROID_SDK_PLUGIN_VERSION)) {
@@ -58,7 +58,10 @@ task checkVersion {
5858
preBuild.dependsOn checkVersion
5959

6060
android {
61-
compileSdkVersion 31
61+
if (project.android.hasProperty("namespace")) {
62+
namespace "ly.img.flutter.video_editor_sdk"
63+
}
64+
compileSdkVersion 34
6265

6366
sourceSets {
6467
main.java.srcDirs += 'src/main/kotlin'

android/src/main/AndroidManifest.xml

+3-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88
android:exported="false"
99
android:enabled="false"
1010
android:name="ly.img.android.IMGLYAutoInit" />
11-
<activity android:name="FlutterVESDKActivity" />
11+
<activity
12+
android:theme="@style/Theme.Imgly"
13+
android:name="FlutterVESDKActivity" />
1214
</application>
1315
</manifest>

example/android/app/build.gradle

+4-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ apply plugin: 'kotlin-android'
2626
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
2727
apply plugin: 'ly.img.android.sdk'
2828

29-
imglyConfig {
29+
IMGLY.configure {
3030
modules {
3131
include 'ui:text'
3232
include 'ui:focus'
@@ -62,7 +62,8 @@ imglyConfig {
6262
}
6363

6464
android {
65-
compileSdkVersion 31
65+
namespace 'ly.img.flutter.video_editor_sdk_example'
66+
compileSdkVersion 34
6667

6768
sourceSets {
6869
main.java.srcDirs += 'src/main/kotlin'
@@ -76,7 +77,7 @@ android {
7677
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
7778
applicationId "ly.img.flutter.video_editor_sdk_example"
7879
minSdkVersion 21
79-
targetSdkVersion 29
80+
targetSdkVersion 34
8081
versionCode flutterVersionCode.toInteger()
8182
versionName flutterVersionName
8283
}

example/android/app/src/main/AndroidManifest.xml

+2-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
android:theme="@style/LaunchTheme"
1818
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
1919
android:hardwareAccelerated="true"
20-
android:windowSoftInputMode="adjustResize">
20+
android:windowSoftInputMode="adjustResize"
21+
android:exported="true">
2122
<!-- Specifies an Android theme to apply to this Activity as soon as
2223
the Android process has started. This theme is visible to the user
2324
while the Flutter UI initializes. After that, this theme continues

example/android/build.gradle

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
buildscript {
2-
ext.kotlin_version = '1.5.32'
3-
ext.vesdk_version = '10.4.1'
2+
ext.kotlin_version = '1.7.21'
3+
ext.vesdk_version = '10.9.0'
44

55
repositories {
66
google()
@@ -9,7 +9,8 @@ buildscript {
99
}
1010

1111
dependencies {
12-
classpath 'com.android.tools.build:gradle:4.1.1'
12+
classpath 'com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:1.7.21-1.0.8'
13+
classpath 'com.android.tools.build:gradle:8.1.2'
1314
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1415
classpath "ly.img.android.pesdk:plugin:$vesdk_version"
1516
}
@@ -30,7 +31,7 @@ subprojects {
3031
project.evaluationDependsOn(':app')
3132
}
3233

33-
task clean(type: Delete) {
34+
tasks.register("clean", Delete) {
3435
delete rootProject.buildDir
3536
}
3637

example/android/gradle/wrapper/gradle-wrapper.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip
6+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip

example/ios/Podfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Uncomment this line to define a global platform for your project
2-
# platform :ios, '11.0'
2+
# platform :ios, '12.0'
33

44
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
55
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

example/ios/Podfile.lock

+10-10
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
PODS:
22
- Flutter (1.0.0)
3-
- imgly_sdk (3.0.0):
3+
- imgly_sdk (3.1.0):
44
- Flutter
55
- imglyKit (~> 11.4)
6-
- imglyKit (11.5.1)
7-
- video_editor_sdk (3.0.0):
6+
- imglyKit (11.8.1)
7+
- video_editor_sdk (3.1.0):
88
- Flutter
9-
- imgly_sdk (= 3.0.0)
9+
- imgly_sdk (= 3.1.0)
1010

1111
DEPENDENCIES:
1212
- Flutter (from `Flutter`)
@@ -26,11 +26,11 @@ EXTERNAL SOURCES:
2626
:path: ".symlinks/plugins/video_editor_sdk/ios"
2727

2828
SPEC CHECKSUMS:
29-
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
30-
imgly_sdk: a114555e1d98e4a4fa5cc8f2b258353198c64e8b
31-
imglyKit: b1b3b827799a50b090433ca7c61f90b078944898
32-
video_editor_sdk: f113d4a2fc8838fdeee99a8461fb4c55ba6b9e3f
29+
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
30+
imgly_sdk: a1eb428ecbe210db5e089a06ee4e5a64d2f94c10
31+
imglyKit: daebaf36406434d9efaa475386522d09456cee95
32+
video_editor_sdk: 1d450fa61d41b424666023ea1fdf463ad47aa279
3333

34-
PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3
34+
PODFILE CHECKSUM: c4c93c5f6502fe2754f48404d3594bf779584011
3535

36-
COCOAPODS: 1.10.2
36+
COCOAPODS: 1.15.2

example/ios/Runner.xcodeproj/project.pbxproj

+5-4
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@
155155
97C146E61CF9000F007C117D /* Project object */ = {
156156
isa = PBXProject;
157157
attributes = {
158-
LastUpgradeCheck = 1300;
158+
LastUpgradeCheck = 1510;
159159
ORGANIZATIONNAME = "";
160160
TargetAttributes = {
161161
97C146ED1CF9000F007C117D = {
@@ -204,6 +204,7 @@
204204
files = (
205205
);
206206
inputPaths = (
207+
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
207208
);
208209
name = "Thin Binary";
209210
outputPaths = (
@@ -341,7 +342,7 @@
341342
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
342343
GCC_WARN_UNUSED_FUNCTION = YES;
343344
GCC_WARN_UNUSED_VARIABLE = YES;
344-
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
345+
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
345346
MTL_ENABLE_DEBUG_INFO = NO;
346347
SDKROOT = iphoneos;
347348
SUPPORTED_PLATFORMS = iphoneos;
@@ -427,7 +428,7 @@
427428
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
428429
GCC_WARN_UNUSED_FUNCTION = YES;
429430
GCC_WARN_UNUSED_VARIABLE = YES;
430-
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
431+
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
431432
MTL_ENABLE_DEBUG_INFO = YES;
432433
ONLY_ACTIVE_ARCH = YES;
433434
SDKROOT = iphoneos;
@@ -476,7 +477,7 @@
476477
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
477478
GCC_WARN_UNUSED_FUNCTION = YES;
478479
GCC_WARN_UNUSED_VARIABLE = YES;
479-
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
480+
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
480481
MTL_ENABLE_DEBUG_INFO = NO;
481482
SDKROOT = iphoneos;
482483
SUPPORTED_PLATFORMS = iphoneos;

0 commit comments

Comments
 (0)