我已经构建了一个基于Flutter的应用程序,它在我的设备上运行良好。
然而,在客户端设备上,它在启动时崩溃(甚至在Centry启动之前)。
当连接到ADB时,我们得到了这个日志:
AndroidRuntime: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.travel.exchange-1/base.apk"],nativeLibraryDirectories=[/data/app/com.travel.exchange-1/lib/arm, /data/app/com.travel.exchange-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]] couldn't find "libflutter.so"
at java.lang.Runtime.loadLibrary (Runtime.java:367)
at java.lang.System.loadLibrary (System.java:1076)
at io.flutter.view.FlutterMain.startInitialization (FlutterMain.java:172)
at io.flutter.view.FlutterMain.startInitialization (FlutterMain.java:149)
at io.flutter.app.FlutterApplication.onCreate (FlutterApplication.java:22)
at android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1037)
at android.app.ActivityThread.handleBindApplication (ActivityThread.java:6496)
at android.app.ActivityThread.access$1800 (ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1887)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:148)
at android.app.ActivityThread.main (ActivityThread.java:7406)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)
我专门使用arm64构建(如果我尝试在arm(32)上运行,即使在我的设备上应用程序也会崩溃。
flutter build apk --release --target-platform=android-arm64
以防万一,有人可能会发现这很有用,如果像我一样,他们在这个线程上跌跌撞撞,而几乎失去理智2天!
背景:我升级到AndroidX并试图集成Braze的flutter插件,该插件依赖于Firebase。
最终奏效的是:我从应用程序/构建中删除了以下依赖项。格拉德尔
实现“com.google.firebase:firebase核心:17.0.1”
实现“com.google.firebase:firebase消息传递:19.0.1”
并将以下依赖项添加到pubspec.yaml
firebase_核心:^0.4.0 8
firebase\u消息:^5.1.2
我怀疑里面有什么东西让它失败了,不确定,但这对我解决这个问题很有效。如果你遇到类似的问题,检查你对Androidbuild.gradle和颤振pubspec.yaml.的依赖可能会有所帮助
在应用级别build.gradle应添加以下行
defaultConfig {
...
ndk { abiFilters "armeabi", "x86", "armeabi-v7a","x86_64", "mips",
"mips64", "arm64-v8a" }
}
在android\app\build.gradle的build dTypes下添加以下代码
buildTypes {
release {
ndk {
abiFilters 'armeabi-v7a','arm64-v8a','x86_64'
}
}
}
在发布模式下构建应用程序时,可以为armeabi-v7a(ARM 32位)、arm64-v8a(ARM 64位)和x86-64(x86 64位)编译Flutter应用程序。Flutter当前不支持为x86 Android构建(请参阅问题9253)。
资料来源:https://docs.flutter.dev/deployment/android
我在做一个增强现实应用程序。这里有Java Eclipse SDK。因此,我没有更改Eclipse SDK和Java中的任何内容。我没有为SDK设置任何路径,我只是下载并安装了cygwin,然后我为它设置了路径。我再次安装了vuforia.exe文件,并将Eclipse首选项中的path设置为vuforia,然后再次下载NDK。我只是扩展那些ndk和复制在sdk根文件夹,我设置路径到ndk。现在我
UnsatifiedDependencyException:创建名为'org.springframework.boot.autoConfigure.orm.jpa.HibernateJPAAutoConfiguration'的bean时出错:通过构造函数参数0表示的不满足的依赖关系;嵌套异常是org.springframework.beans.factory.beanCreationExcepti
我已经做了以前的搜索试图找到一个答案,但我的尝试失败至今。我认为错误很简单,只是没有加载类。 我正在用Intellij运行MacOSX10。我将它与Junit、Spring和Maven&Junit一起使用。 我按照maven Dependencients找到了mvnrepository.com-sikuli-api1.2.0,所以我在想,如果将依赖项添加到pom,那么所有文件都应该在我的类路径中?
我已经克隆了flatterrepo并安装了androidsdk命令行工具,在中进行了设置。然后,我通过将设置为使意识到的安装。通过
我试图编写一个简单的Java程序,通过JNI调用C函数来打印“Hello World”。一切编译都没有错误,但当我运行程序时,我得到一个“UnsatisfiedLinkError:找不到依赖库”。 根据Dependency Walker和dumpbin的说法,唯一的依赖项是“kernel32.dll”,在C:\Windows\System32及其依赖项中,也在System32中。 使命感 返回时没
我正在尝试弄清楚如何将我的本机库集成到android代码中。我创建了一个简单的C函数,它在设备上运行代码时运行良好。但是我目前的目标是让它在单元测试环境(jUnit)中工作,我面临着问题: 因此,在单元测试env不工作,我将其保存到系统中。load(“/full/path/to/lib.so”),但现在此行引发异常: java.lang.不满意的链接错误:app\build\中介\cmake\de