【问题标题】:Xamarin Android Build Errors After Adding MvvmCross.Plugins.Fingerprint Package 2.1.3添加 MvvmCross.Plugins.Fingerprint 包 2.1.3 后 Xamarin Android 构建错误
【发布时间】:2021-01-26 18:03:16
【问题描述】:

我需要帮助。一次又一次。

迁移到 AndroidX 后,我的应用程序构建和运行良好。我需要实现 Biometrics,所以我安装了 MvvmCross.Plugins.Fingerprint。现在我得到 3 个错误:

  1. “Mvx”不包含“警告”的定义 (CS0117)
  2. “资源”不包含“布局”的定义 (CS0117)
  3. “Resource.Id”不包含“text1”的定义 (CS0117)

我也将把它发布到包的 GitHub 页面上。

我在谷歌上搜索了所有错误,但没有任何希望。

谢谢! 拉里

【问题讨论】:

  • 对于错误CS0117,如果您的项目之前运行良好,请删除obj和bin文件夹以清理并重建项目。通常,此错误将得到修复。
  • 不幸的是,这不起作用。我已经试过了。还有其他想法吗?帮助我解决这个问题的 200 美元捐款。谢谢!
  • 如果之前的代码可以运行,并且您不更改代码,我认为该错误不会影响项目运行。您是否尝试卸载MvvmCross.Plugins.Fingerprint?我想确认是否由此引起的错误。
  • 我还原了代码并验证它运行了。
  • 如果可能的话,您能否提供一个示例代码让我使用MvvmCross.Plugins.Fingerprint 包进行测试?

标签: xamarin xamarin.android fingerprint biometrics


【解决方案1】:

问题很可能是该插件针对 MvvmCross 6.0.0,而您使用的是 7.x.x,因为您提到了 AndroidX。

MvvmCross.Plugins.Fingerprint 包只是为您在 IoC 容器中注册指纹。

因此,请尝试将 Plugin.Fingerprint 包添加到您的项目中。然后在Setup.cs 中,您可以自己注册,覆盖InitializeLastChance 或任何其他相关的生命周期方法:

protected override void InitializeLastChance()
{
    base.InitializeLastChance();

    Mvx.IoCProvider.LazyConstructAndRegisterSingleton(() => CrossFingerprint.Current);
}

现在您可以在 ViewModel 中解析 IFingerprint

【讨论】:

  • 感谢您的回复!我也需要实现人脸和虹膜检测。我相信 MvvmCross.Plugins.Fingerprint 包得到了增强,可以处理人脸和虹膜。 Git 页面说要迁移到 Android X。你怎么看?
  • 完全没有,里面的唯一就是一个Plugin.cs文件,你自己看看:github.com/smstuebe/xamarin-fingerprint/tree/master/src/…
  • 对不起,我不明白。您可以通过屏幕共享提供帮助吗?可捐款!谢谢。
  • 当我尝试添加以下内容时,我收到错误“Mvx”不包含“IOCProvider”的定义。谢谢! Mvx.IoCProvider.LazyConstructAndRegisterSingleton(() => CrossFingerprint.Current);
  • 它就在那里。从 MvvmCross 6 开始。github.com/MvvmCross/MvvmCross/blob/…
猜你喜欢
  • 2016-12-31
  • 1970-01-01
  • 1970-01-01
  • 2020-01-10
  • 1970-01-01
  • 1970-01-01
  • 2021-01-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多