我正在为 android 开发一个 xamarin 应用程序,它通过 WiFi 从本地服务器下载一个大文件 (500 MB)。 最初,我使用 .NET 中的 DownloadFileAsync API 下载文件。我得到大约的下载速度。 1兆每秒。 同样的文件,当我使用内置的 Android DownloadManager (Context.DownloadService API) 下载时,我的时钟速度为 3.5+ MPBS。
是由于 Xamarin 用来运行应用程序的 Monodroid 运行时的某些限制,还是由于 Android 普遍支持 DownloadManager?
最佳答案
我从 support@xamarin.com 得到这个:
native 实现总是会更快,这也是伟大的 Paul Betts 创建 ModernHttpClient 的原因:https://github.com/paulcbetts/ModernHttpClient
还有我们自己的 Rob Gibbens 关于这些库的精彩指南:http://arteksoftware.com/resilient-network-services-with-xamarin/
您的观察很接近,但主要是原生功能应该比位于它们之上的一些类表现得更好。
希望对您有所帮助!
关于android - Xamarin Android : Downloading file using DownloadManager is much faster then using . NET DownloadFileAsync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27950645/