gpt4 book ai didi

sqlite - Xamarin.Forms/Xamarin iOS 中 Akavache 中可能存在的错误

转载 作者:行者123 更新时间:2023-12-03 18:33:05 30 4
gpt4 key购买 nike

Akavache 的实现适用于 Android 调试和发布以及 iOS Debug模式。但是,它在 iOS Release模式下崩溃。

从 Raygun 截获的引发的异常是“Akavache.Sqlite3.Internal.SQLiteConnection”的类型初始化程序引发了异常。

只需部署 iOS Release模式并获得异常提示。感谢遇到类似问题的人是否可以提供帮助。

Akavache 版本是 6.0.0-alpha0038。

完整的堆栈跟踪如下:

Akavache.Sqlite3.SQLitePersistentBlobCache..ctor(System.String databaseFile, System.Reactive.Concurrency.IScheduler scheduler) in :0 Akavache.Sqlite3.Registrations+<>c__DisplayClass0_0.b__2() in :0

Akavache.Sqlite3.Registrations+<>c__DisplayClass0_0.b__3() in :0 Splat.ModernDependencyResolver.GetService(System.Type serviceType, System.String contract) in <412cf7afb8e84872aee33a6b0acc7f20#a572ceb4cff14caae1629fe17a67dfc3>:0 Splat.DependencyResolverMixins.GetService[T](Splat.IDependencyResolver This, System.String contract) in <412cf7afb8e84872aee33a6b0acc7f20#a572ceb4cff14caae1629fe17a67dfc3>:0 Akavache.BlobCache.get_UserAccount() in <6b3110b6f37348ddb9bd9456cdb85f61#a572ceb4cff14caae1629fe17a67dfc3>:0 XXX.UI.CompositionRoot.CreateBlobCache() in <2815cf10ecb04f8fa012a0a005f4202e#a572ceb4cff14caae1629fe17a67dfc3>:0

XXX.UI.CompositionRoot.CreateApp() in <2815cf10ecb04f8fa012a0a005f4202e#a572ceb4cff14caae1629fe17a67dfc3>:0 XXX.UI.CompositionRoot.LoggedCreation[T](System.Func`1[TResult] factory) in <2815cf10ecb04f8fa012a0a005f4202e#a572ceb4cff14caae1629fe17a67dfc3>:0 XXX.UI.CompositionRoot.CreateApp() in <2815cf10ecb04f8fa012a0a005f4202e#a572ceb4cff14caae1629fe17a67dfc3>:0

XXX.UI.CompositionRoot.ResolveApp() in <2815cf10ecb04f8fa012a0a005f4202e#a572ceb4cff14caae1629fe17a67dfc3>:0 XXX.UI.iOS.AppDelegate.ResolveApplication(XXX.UI.CompositionRoot compositionRoot) in :0 XXX.UI.iOS.AppDelegate.FinishedLaunching(UIKit.UIApplication app, Foundation.NSDictionary options) in :0 UIKit.UIApplication.Main(System.String[] args, System.IntPtr principal, System.IntPtr delegate) in :0 UIKit.UIApplication.Main(System.String[] args, System.String principalClassName, System.String delegateClassName) in :0 XXX.UI.iOS.Application.Main(System.String[] args) in :0

最佳答案

可能是链接的问题...

您可以尝试跳过 Akavache Dll 的链接吗?

或者使用链接器文件排除它们并查看是否有效?

还要确保你有 https://github.com/PureWeen/Akavache/blob/3bd03246a6e198bde5eb93a54646dd9f25fc15a1/src/Akavache.Sqlite3/content/AkavacheSqliteLinkerOverride.cs.pp

平台项目中的文件

iOS 的主要问题是 Xamarin 工具使用静态分析来删除它不认为您的任何代码引用的 dll。 Akavache 使用反射来查找您是否正在使用 Xamarin 无法检测到的 SqlLite Dll,因此使用删除 DLL 的发布版本:-/

Override 类只是给出了你想要那个 Dll 的工具信息

关于sqlite - Xamarin.Forms/Xamarin iOS 中 Akavache 中可能存在的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47279254/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com