blinkid-xamarin icon indicating copy to clipboard operation
blinkid-xamarin copied to clipboard

.Net core

Open sonfire186 opened this issue 6 years ago • 8 comments

Why used .Net Core?

sonfire186 avatar Sep 06 '19 10:09 sonfire186

Hello @sonfiree

If I correctly understood your question, we are using the .net core, because we currently do not need the whole .net framework.

If I missed something, can you please specify the question?

Best regards

mparadina avatar Sep 06 '19 12:09 mparadina

I want to use your library in .Net Core.That is, on a PC

sonfire186 avatar Sep 06 '19 19:09 sonfire186

Hi @sonfiree

Unfortunately, no, that is not possible. BlinkID has been built using native Android and iOS SDKs and Xamarin version is only a c# wrapper around the native SDKs. The native SDKs do not support PC, only iOS and Android.

mparadina avatar Sep 09 '19 09:09 mparadina

Hi @sonfiree

Unfortunately, no, that is not possible. BlinkID has been built using native Android and iOS SDKs and Xamarin version is only a c# wrapper around the native SDKs. The native SDKs do not support PC, only iOS and Android.

Since Xamarion is a C # shell, why can't you run it on a PC in C #?

sonfire186 avatar Sep 09 '19 10:09 sonfire186

Since Xamarion is a C # shell, why can't you run it on a PC in C #?

As they just said, the C# layer in Xamarin is a wrapper over the native iOS and Android code.

Your question is like asking why can't you stick a smartphone screen protector on a regular PC display and then use it as a touch screen.

It only accepts touch input when it is mounted on a touchscreen.

Likewise, Xamarin wrapper libraries allow you to call mobile native functionalities only when used on a mobile platform...

irreal avatar Sep 09 '19 10:09 irreal

Since Xamarion is a C # shell, why can't you run it on a PC in C #?

As they just said, the C# layer in Xamarin is a wrapper over the native iOS and Android code.

Your question is like asking why can't you stick a smartphone screen protector on a regular PC display and then use it as a touch screen.

It only accepts touch input when it is mounted on a touchscreen.

Likewise, Xamarin wrapper libraries allow you to call mobile native functionalities only when used on a mobile platform...

They had a sequence. C# -> xamarin. Or i didn't understand

sonfire186 avatar Sep 09 '19 10:09 sonfire186

@sonfiree, C# is a language for writing code. Xamarin is a library written in C# which provides the functionalities of iOS and Android to C# language. It achieves that by providing concepts like Forms which can be used to present the UI, while actually implementing the logic of those using native iOS view controllers and Android activities. Yes, you can use Xamarin.Forms also on PC because Xamarin implemented Forms on PC using WPF, which is part of .NET Framework, which is another library written in C# which targets Windows apps specifically.

This makes it possible for you to write your app once using Xamarin.Forms and deploy it on all supported platforms (UWP, iOS, Android) as long as every dependency of your application is also written in a way that supports all those platforms (i.e. it is either implemented purely in C# with Xamarin framework or has native wrappers for each platforms specifically).

As mentioned above, BlinkID is implemented as native iOS/Android SDK and does not support running on PC. It is not implemented with C# nor with Xamarin. The BlinkID Xamarin SDK is just a thin c# wrapper around native code, which enables you to simply call a c# scan function without going through process of binding native Android and iOS SDKs directly into your app (if you wish to do that, here is the howto).

The part where BlinkID Xamarin uses .net core is only because it is a dependency of the Xamarin framework (i.e. we need it to provide APIs that are compatible with Xamarin applications), not for the actual implementation of scanning. You can verify that by checking C# Android native sample dependencies list; also for iOS or by extracting the APK of your Android app (or IPA of your iOS app) where you will see that during scanning a lot of java/objc/c++ code is being executed and no c# code.

I hope this explains now the differences and interconnections between C#, Xamarin, .NET Core, .NET framework and BlinkID for Xamarin.

DoDoENT avatar Sep 09 '19 13:09 DoDoENT

Xamarin.Forms supported platforms UWP or does not support running on PC. 🤔🤔🤔🤔🤔🤔

sonfire186 avatar Sep 10 '19 02:09 sonfire186