You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter调用video_editor_sdk打开编辑器崩溃:ExceptionInInitializerError

问题描述

从相册选取视频后,调用video_editor_sdk插件的编辑功能时应用直接崩溃,调用代码如下:

final result = await VESDK.openEditor(
        Video(path)
);

崩溃错误日志

E/AndroidRuntime(  663): FATAL EXCEPTION: main
E/AndroidRuntime(  663): Process: com.example.video_edit, PID: 663
E/AndroidRuntime(  663): java.lang.ExceptionInInitializerError
E/AndroidRuntime(  663):    at ly.img.android.pesdk.backend.model.state.manager.ImglyEventDispatcher.init(Unknown Source:0)
E/AndroidRuntime(  663):    at ly.img.android.pesdk.backend.model.state.manager.SettingsList.<init>(SettingsList.java:88)
E/AndroidRuntime(  663):    at ly.img.android.pesdk.VideoEditorSettingsList.<init>(VideoEditorSettingsList.kt:32)
E/AndroidRuntime(  663):    at ly.img.flutter.video_editor_sdk.FlutterVESDK.present(FlutterVESDK.kt:133)
E/AndroidRuntime(  663):    at ly.img.flutter.video_editor_sdk.FlutterVESDK.onMethodCall(FlutterVESDK.kt:92)
E/AndroidRuntime(  663):    at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:258)
E/AndroidRuntime(  663):    at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
E/AndroidRuntime(  663):    at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:322)
E/AndroidRuntime(  663):    at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(Unknown Source:12)
E/AndroidRuntime(  663):    at android.os.Handler.handleCallback(Handler.java:938)
E/AndroidRuntime(  663):    at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(  663):    at android.os.Looper.loop(Looper.java:236)
E/AndroidRuntime(  663):    at android.app.ActivityThread.main(ActivityThread.java:8057)
E/AndroidRuntime(  663):    at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(  663):    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:620)
E/AndroidRuntime(  663):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1011)
E/AndroidRuntime(  663): Caused by: java.lang.RuntimeException: ┌───────────────────────────────────────────────────────────────────────┐
E/AndroidRuntime(  663): │ Unable to find autogenerated SDK classes!                             │ 
E/AndroidRuntime(  663): │ This might be due to some Gradle mis-configuration.                   │
E/AndroidRuntime(  663): │ Please follow our Getting Started guide to properly setup the SDK.    │
E/AndroidRuntime(  663): │ If this issue persists,                                               │
E/AndroidRuntime(  663): │ please contact Support with information about your project structure. │
E/AndroidRuntime(  663): └───────────────────────────────────────────────────────────────────────┘
E/AndroidRuntime(  663):    at ly.img.android.pesdk.backend.model.state.manager.ImglyEventDispatcher$Companion.genClassNotFound(ImglyEventDispatcher.kt:143)
E/AndroidRuntime(  663):    at ly.img.android.pesdk.backend.model.state.manager.ImglyEventDispatcher$Companion.access$genClassNotFound(ImglyEventDispatcher.kt:126)
E/AndroidRuntime(  663):    at ly.img.android.pesdk.backend.model.state.manager.ImglyEventDispatcher.<clinit>(ImglyEventDispatcher.kt:133)
E/AndroidRuntime(  663):    ... 16 more
I/Process (  663): Sending signal. PID: 663 SIG: 9

环境信息

  • 使用插件:video_editor_sdk
  • Flutter SDK版本:3.7.7
  • 已按照插件官方README完成项目配置
解决方案

错误核心是Gradle配置缺失导致SDK自动生成类无法被找到,按以下步骤修复:

  1. 检查并升级Gradle插件版本
    修改项目根目录build.gradle中的Gradle插件版本至7.0及以上:

    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.2'
        // 其他依赖项保留
    }
    
  2. 启用数据绑定
    在app/build.gradle的android代码块中添加数据绑定配置:

    android {
        // 其他现有配置
        buildFeatures {
            dataBinding true
        }
    }
    
  3. 清理重建项目

    • 执行终端命令:flutter clean && flutter pub get
    • 重启Android Studio,依次执行Build -> Clean Project和Build -> Rebuild Project
  4. 添加混淆豁免规则
    若项目开启混淆,在proguard-rules.pro中添加:

    -keep class ly.img.android.pesdk.** { *; }
    -keep class ly.img.flutter.video_editor_sdk.** { *; }
    
  5. 验证Maven仓库配置
    确认项目根目录build.gradle的allprojects -> repositories中包含以下仓库:

    allprojects {
        repositories {
            // 其他现有仓库
            maven { url "https://artifactory.img.ly/artifactory/imgly" }
            mavenCentral()
        }
    }
    

内容的提问来源于stack exchange,提问作者Devansh Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 07:07:53