【问题标题】:ClassNotFoundException for android/util/Sizeandroid/util/Size 的 ClassNotFoundException
【发布时间】:2017-01-19 22:47:15
【问题描述】:

当我尝试实例化 Android.Util.Size 对象时,我的 Xamarin 应用程序抛出 ClassNotFoundException。该错误发生在我的 Android 4.2 设备上,而不是我的 Android 5.1 设备上。这让我怀疑它与 MultiDex 有关,但我不确定从哪里开始寻找。

【问题讨论】:

  • 你能显示导致错误的代码吗?尤其要说明在创建 Size 对象后如何使用它。
  • 谢谢乔恩。我的愚蠢错误。将其替换为 Android.Gms.Common.Images.Size 现在可以正常工作了。

标签: android xamarin xamarin.android


【解决方案1】:

你很接近,但它实际上与 Multidex 无关(不过好主意!)它实际上必须处理这个 API 是在 API 21 中引入的事实:

https://developer.android.com/reference/android/util/Size.html

因此它可以在 Android 5.1 上运行而在 Android 4.2 上失败

【讨论】:

  • OP 如何解决问题?支持库中是否提供此类?
  • 我会说 OP 可以在 Pre-Lollipop 设备上使用 android.graphics.Rectandroid.graphics.Point (stackoverflow.com/a/29094229/1048571
  • 当然这取决于 OP 如何使用Size。如果他将其传递给仅在 >= API 21 中可用的方法,RectPoint 将无济于事。即便如此,您也可以通过展示如何做到这一点来改进您的答案。尤其是展示如何测试 API 级别。
  • 如果问题发生变化,我会更新答案。如果没有看到他们在做什么,我真的无法提供代码帮助。
猜你喜欢
  • 2011-03-06
  • 2011-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多