【发布时间】:2017-05-24 07:00:16
【问题描述】:
我为我的公司创建了一个 Xamarin.Forms 项目,其中包括一个 PCL、Xamarin.Android、Xamarin.iOS 和 UWP 项目。 在 Xamarin.Android 中遇到 65k 方法限制后,我启用了 Multidex 并处理了 ex.multidex.keep 文件中的启动类。 整个解决方案构建良好,但是当我在手机上以调试模式启动应用程序(模拟器工作正常)时,我面临以下问题:
下面的构建日志显示了 System.Net.dll 的某种重新加载/重新映射。 当我点击应用程序上的登录按钮时,它会出现大约 20 到 50 次。该应用程序冻结,大约 5 分钟后再次正常工作。 我有使用 System.Net.Http.dll 的 serval 操作,每次我遇到同样的问题。花费的时间从大约 5s。
05-23 09:59:42.879 D/Mono (27301): 图像地址 System.Net.Http[0x918b6a40] -> System.Net.Http.dll[0x97053600]:23 05-23 09:59:42.879 D/Mono (27301): 配置试图解析: 'System.Net.Http.dll.config'。 05-23 09:59:42.879 D/单声道 (27301): 尝试解析的配置: '/usr/local/etc/mono/assemblies/System.Net.Http/System.Net.Http.config'。
我根据以下2篇文章/博文实现了Multidex:
https://przemekraciborski.eu/2016/09/30/multidex-in-xamarin/ http://www.jon-douglas.com/2016/09/05/xamarin-android-multidex/
我猜这是 Xamaring 特有的问题,因为当我第一次登录我的应用程序时会发生这种情况。 如果我注销并尝试再次登录,则所需的时间应该是正常的(大约 2-5 秒)。
我在论坛中找到了一些关于此的其他条目,但我不确定它是否已修复,或者我在为 Xamarin.Android 实现 Multidex 时是否犯了错误。
有人知道这个问题以及如何解决吗?
亲切的问候, 丹尼尔
【问题讨论】:
标签: c# android .net xamarin mono