smstuebe / xamarin-fingerprint

Xamarin and MvvMCross plugin for authenticate a user via fingerprint sensor
Microsoft Public License
494 stars 118 forks source link

Plugin Not Supported in .NET cross platform Xamarin.Forms Portable Project #44

Closed Binaryraja closed 7 years ago

Binaryraja commented 7 years ago

Steps to reproduce

  1. Install the Latest Version of Plugin.FingerPrint 1.4.2 (Problem exists from 1.3.0) into Xamarin.Forms Portable Project.

  2. Refer Plugin.Fingerprint.Abstractions in a class and Compile.

  3. Build fails and Says that "The primary reference "Plugin.Fingerprint.Abstractions, Version=1.4.2.0, Culture=neutral, processorArchitecture=MSIL" could not be resolved because it was built against the ".NETPortable,Version=v5.0" framework. This is a higher version than the currently targeted framework ".NETPortable,Version=v4.5,Profile=Profile259"

Expected behavior

It should compile successfully.

Actual behavior

Exception pasted in the 3rd Step. Verified the source code and it's targeted to .NET Portable Version only. But Plugin.FingerPrint is targeted to .NETStandard 1.0.

Crashlog

Not There Yet.

smsissuechecker commented 7 years ago

Hi @Binaryraja,

I'm the friendly issue checker. It seems like (50.00 %) you haven't used our issue template :cry: I think it is very frustrating for the repository owners, if you ignore them.

If you think it's fine to make an exception, just ignore this message. But if you think it was a mistake to delete the template, please close the issue and create a new one.

Thanks!

smstuebe commented 7 years ago

We had this issue several times here. Update your VS. I know... it's hard and the .NET standard tooling isn't perfect. https://msdn.microsoft.com/en-us/library/mt752379.aspx I hope it will go away with VS 2017.

smstuebe commented 7 years ago

Btw. If you have still a bug, just convert your PCLs to .NET standard. It's the future! :sparkles:

Binaryraja commented 7 years ago

Thanks.. I just figured out the way to look into the Closed Issues. Thanks for your Help. I tried to update the project to .NET Standard. But Xamarin.Forms Package failed to install and says its not compatible to .NETStandard 1.0. Am I missing anything? I am applying the VS Update and validate one more time.

smstuebe commented 7 years ago

Ye, that's a mess. You have to uninstall the package via nuget (just deleting it from the package.config doesn't help). Convert the project and then Install the Xamarin.Forms again.

smstuebe commented 7 years ago

Did it work?

Binaryraja commented 7 years ago

Yes. It worked. Thanks. I haven't updated the code to .NETStandard. Will update on that later.

RanaInside commented 7 years ago

No offence meant, but this is a sure way to ensure lot less developers would be using your package; advice like "Update your VS. I know... it's hard" is of no use; and the thought of changing existing and working solutions profile just to use this one package and risk breaking a ton of other stuff - thanks... I'll give it a pass.

If someone really want to use it without the mess: I have a simple idea, and not sure if it will work; basically create own interface in portable, and apply the implementation from ios/droid fingerprint.

smstuebe commented 7 years ago

@RanaInside Sorry... I'll not support legacy stuff. netstandard is the way to go. All other xamarin plugins will start to switch over to netstandard this year.

robinmanuelthiel commented 7 years ago

Compiles for me with PCLs also. Doesn't matter that the Plugin itself targets .NET Standard...

renzska commented 7 years ago

When I change my solution to be a .NET Standard solution to be able to use this, I get a ton of errors for other packages that aren't compatible. Any work around to keep my project as a PCL but reference the .NET Standard Fingerprint Plugin?

Package Acr.UserDialogs 6.3.8 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Acr.UserDialogs 6.3.8 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - uap10.0 (UAP,Version=v10.0)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package CommonServiceLocator 1.3.0 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package CommonServiceLocator 1.3.0 supports: portable-net40+sl5+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile328)
    Package Microsoft.Bcl 1.1.10 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Microsoft.Bcl 1.1.10 supports:
      - monoandroid (MonoAndroid,Version=v0.0)
      - monotouch (MonoTouch,Version=v0.0)
      - net40 (.NETFramework,Version=v4.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net40+sl4+win8 (.NETPortable,Version=v0.0,Profile=net40+sl4+win8)
      - portable-net40+sl4+win8+wp71+wpa81 (.NETPortable,Version=v0.0,Profile=net40+sl4+win8+wp71+wpa81)
      - portable-net40+sl4+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=net40+sl4+win8+wp8+wpa81)
      - portable-net40+sl5+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile328)
      - portable-net40+win8 (.NETPortable,Version=v0.0,Profile=Profile5)
      - portable-net40+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=net40+win8+wp8+wpa81)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - portable-net45+win8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile111)
      - portable-net451+win81 (.NETPortable,Version=v0.0,Profile=Profile44)
      - portable-net451+win81+wpa81 (.NETPortable,Version=v0.0,Profile=Profile151)
      - portable-win81+wp81+wpa81 (.NETPortable,Version=v0.0,Profile=Profile157)
      - sl4 (Silverlight,Version=v4.0)
      - sl4-wp71 (Silverlight,Version=v4.0,Profile=WindowsPhone71)
      - sl5 (Silverlight,Version=v5.0)
      - win8 (Windows,Version=v8.0)
      - wp8 (WindowsPhone,Version=v8.0)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package Microsoft.Net.Http 2.2.29 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Microsoft.Net.Http 2.2.29 supports:
      - monoandroid (MonoAndroid,Version=v0.0)
      - monotouch (MonoTouch,Version=v0.0)
      - net40 (.NETFramework,Version=v4.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net40+sl4+win8+wp71+wpa81 (.NETPortable,Version=v0.0,Profile=net40+sl4+win8+wp71+wpa81)
      - portable-net45+win8 (.NETPortable,Version=v0.0,Profile=Profile7)
      - portable-net45+win8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile111)
      - sl4-wp71 (Silverlight,Version=v4.0,Profile=WindowsPhone71)
      - win8 (Windows,Version=v8.0)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package MR.Gestures 1.4.1 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package MR.Gestures 1.4.1 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - portable-monoandroid10+monotouch10+net45+win+win81+wp8+wpa81+xamarinios10 (.NETPortable,Version=v0.0,Profile=win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10)
      - uap10.0 (UAP,Version=v10.0)
      - win81 (Windows,Version=v8.1)
      - wp8 (WindowsPhone,Version=v8.0)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package MvvmLightLibs 5.3.0 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package MvvmLightLibs 5.3.0 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - net35 (.NETFramework,Version=v3.5)
      - net40 (.NETFramework,Version=v4.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - sl5 (Silverlight,Version=v5.0)
      - win81 (Windows,Version=v8.1)
      - wp8 (WindowsPhone,Version=v8.0)
      - wp81 (WindowsPhone,Version=v8.1)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package NControl 0.9.1 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package NControl 0.9.1 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - win81 (Windows,Version=v8.1)
      - wp8 (WindowsPhone,Version=v8.0)
      - wp81 (WindowsPhone,Version=v8.1)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package NControl.Controls 0.9.4.1 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package NControl.Controls 0.9.4.1 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - wp8 (WindowsPhone,Version=v8.0)
      - wp81 (WindowsPhone,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package NGraphics 0.4.0 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package NGraphics 0.4.0 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - win81 (Windows,Version=v8.1)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
      - xamarinmac20 (Xamarin.Mac,Version=v2.0)
    Package PCLStorage 1.0.2 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package PCLStorage 1.0.2 supports:
      - monoandroid (MonoAndroid,Version=v0.0)
      - monotouch (MonoTouch,Version=v0.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-monoandroid+monotouch+net45+sl5+win8+wp8+wpa81+xamarinios+xamarinmac (.NETPortable,Version=v0.0,Profile=net45+sl5+wp8+wpa81+win8+monoandroid+monotouch+Xamarin.iOS+Xamarin.Mac)
      - portable-monoandroid+monotouch+net45+win8+wp8+wpa81+xamarinios+xamarinmac (.NETPortable,Version=v0.0,Profile=net45+wp8+wpa81+win8+monoandroid+monotouch+Xamarin.iOS+Xamarin.Mac)
      - portable-win8+wpa81 (.NETPortable,Version=v0.0,Profile=win8+wpa81)
      - portable-xamarinios+xamarinmac (.NETPortable,Version=v0.0,Profile=Xamarin.iOS+Xamarin.Mac)
      - sl5 (Silverlight,Version=v5.0)
      - wp8 (WindowsPhone,Version=v8.0)
    Package Splat 1.6.2 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Splat 1.6.2 supports:
      - monoandroid (MonoAndroid,Version=v0.0)
      - monomac (MonoMac,Version=v0.0)
      - monotouch (MonoTouch,Version=v0.0)
      - net45 (.NETFramework,Version=v4.5)
      - netcore45 (.NETCore,Version=v4.5)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - portable-win81+wpa81 (.NETPortable,Version=v0.0,Profile=Profile32)
      - wp8 (WindowsPhone,Version=v8.0)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
      - xamarinmac10 (Xamarin.Mac,Version=v1.0)
    Package Xam.Plugin.Connectivity 2.3.0 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Xam.Plugin.Connectivity 2.3.0 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - uap10 (UAP,Version=v1.0)
      - win8 (Windows,Version=v8.0)
      - wp8 (WindowsPhone,Version=v8.0)
      - wp81 (WindowsPhone,Version=v8.1)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package Xam.Plugins.Settings 2.5.4 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Xam.Plugins.Settings 2.5.4 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
      - uap10 (UAP,Version=v1.0)
      - win8 (Windows,Version=v8.0)
      - wp8 (WindowsPhone,Version=v8.0)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
      - xamarinmac20 (Xamarin.Mac,Version=v2.0)
    Package Xamarin.Forms 2.3.3.193 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Xamarin.Forms 2.3.3.193 supports:
      - monoandroid10 (MonoAndroid,Version=v1.0)
      - portable-monoandroid10+net45+win+win81+wp8+wpa81+xamarinios10+xamarinmac20 (.NETPortable,Version=v0.0,Profile=win+net45+wp80+win81+wpa81+MonoAndroid10+Xamarin.iOS10+xamarinmac20)
      - uap10.0 (UAP,Version=v10.0)
      - win81 (Windows,Version=v8.1)
      - wp8 (WindowsPhone,Version=v8.0)
      - wpa81 (WindowsPhoneApp,Version=v8.1)
      - xamarinios10 (Xamarin.iOS,Version=v1.0)
    Package Microsoft.Bcl.Async 1.0.165 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package Microsoft.Bcl.Async 1.0.165 supports:
      - net40 (.NETFramework,Version=v4.0)
      - net45 (.NETFramework,Version=v4.5)
      - portable-net40+sl4+win8+wp71 (.NETPortable,Version=v0.0,Profile=net40+sl4+win8+wp71)
      - portable-net45+win8 (.NETPortable,Version=v0.0,Profile=Profile7)
      - portable-net45+win8+wp8 (.NETPortable,Version=v0.0,Profile=Profile78)
      - sl4 (Silverlight,Version=v4.0)
      - sl4-wp71 (Silverlight,Version=v4.0,Profile=WindowsPhone71)
      - win8 (Windows,Version=v8.0)
      - wp8 (WindowsPhone,Version=v8.0)
    One or more packages are incompatible with .NETStandard,Version=v1.5.
smstuebe commented 7 years ago

It should just work out of the box... :< Everything up to date? Visual Studio?

renzska commented 7 years ago

Visual Studio for Mac Preview 4

I'll try loading it in Visual Studio 2017 here soon.