I've developed a UWP project with Behaviors SDK in VS2015 (Windows 10).
Then I've installed VS2017 and tried to run the app without any changes. Unfortunately I'm getting below error for Behaviors SDK.
Are there any solution or workaround for this problem?
Reference Image:
Error Output:
error MSB3774: Could not find SDK "BehaviorsXamlSDKManaged, Version=12.0"
You should use the Microsoft.Xaml.Behaviors.Uwp.Managed nuget package instead (or Microsoft.Xaml.Behaviors.Uwp.Native if you develop your application in C++). The source code of these packages are available on GitHub.
Behaviors SDK was created for WinRT projects (Windows 8.0/8.1). Microsoft.Xaml.Behaviors.Uwp.Managed package seems to be a recommended replacement for the Behaviors SDK for the UWP applications (even in VS2015).
Related
I am hoping to work with Xamarin for a project, primarily to learn a little about cross-platform app development, and would prefer to stick to developing on Linux. This led me to attempt to work with the JetBrains Rider IDE, something that I believed to be fairly well documented, as per these resources:
Xamarin.Android on Linux (in coordination with its Ubuntu 19.04 update post)
Failed to load Xamarin Forms project with .NET Standard 2.0 Lib in Rider
0xFireball's Xamarin.Android on Linux guide with associated Rider/IDE setup
I've been able to install everything just fine, Android Studio and Rider were installed via JetBrains Toolbox (I also tried installing Rider manually, but it made no change), and I am able to create the project and configure the Android settings for the Xamarin project.
This is where my luck ends, since despite trying the various resources I've linked above, including reinstalling mono and dotnet-sdk multiple times, I get this error no matter what I try:
Xamarin SDK was not found: Rider was unable to find Xamarin SDK on
this machine. Xamarin-based projects will not be loaded. Please
install Xamarin SDK or change toolset.
I've tried following the instructions both on a manually installed Rider 2019.1.3 (Build #RD-191.7141.460) and Rider 2019.2 EAP (Build #RD-192.5895.291).
I'm fairly new to the world of Xamarin, so I'm not sure where to begin looking. What exactly is the Xamarin SDK (is it just Xamarin.Android?), and what should I be checking my setup for in order for Rider to detect the Xamarin SDK?
It appears that what Rider installs via its Environment page, is only the Xamarin Android package. Not the actually Android Studio SDK, which is needed to develop any android apps. You have to download that separately.
We are using Unity 2018.3.8f1.
We have added Android Build Support from Unity Hub - Add Component:
But if we go to Unity Preferences - External Tools, the Android SDK location is empty:
I have not been able to find the location of the Android SDK folder anywhere. I'm wondering if the component installed by Unity Hub is something different to Android SDK. Maybe it must be installed separately from: https://developer.android.com/studio?pkg=tools#downloads?
UPDATE
So far I have installed "Command line tools only" from the previous link. Then, I have installed OpenSDK (Vistual Studio did it for me: it asked me to update and install it as one of the things to update).
But when I opened tools/bin/sdkmanager, it said "Java is not installed". So I also installed Oracle Java SDK. Unfortunately tools/bin/sdkmanager returned errors after it. I applied a few workarounds I found by googling the errors. Still not luck.
So I have moved to the easy way: installing the full version of Android Studio. If we choose custom, we'll see that Android SDK Platform is going to be installed:
So it is working, but I still have not idea of how many things I have duplicated on my system wasting space. I have:
The Android component installed from Unity Hub
Android Studio installed, which comes with the emulator and the IDE (I don't need them)
OpenSDK (installed by Visual Studio)
An embedded version of Java in Unity
Oracle Java
Are they all actually needed? I don't think so!
It seems the only thing you are wondering is if the component installed by Unity hub is something different to Android SDK... the short answer is yes. You have to download it on the Android Developer SDK website you linked in the question. You only need the SDK under "Command line tools only" at the bottom of the page. If you do this you also need to download the jdk separatly here.
Has anyone encountered this error when adding the Xamarin.Forms package through the "Add NuGet package" option?
PS I'm using Xamarin Studio and I only encounter this with Windows.
Error message is:
Could not install package 'Xamarin.Forms 2.2.0.31'. You are trying to
install this package into a project that targets
'.NETFramework,Version=v4.5,Profile=Profile78', but the package does
not contain any assembly references or content files that are
compatible with that framework.
Here is the screenshot
You are having a profile which has portable class Profile78.Profiles are the type of your portable class where you select the target projects which can use your PCL. The more you select the less functionality can be provided.
You need to change it to another one. Usually most classes (including Xamarin.Forms) are supporting Profile111. Profile111 is a profile which does not support Silverlight in contast du Profile78. So you need to go to Properties and deselect Windows Phone Silverlight and Silverlight. You can select everything else (.Net 4.5, Windows 8, Windows Phone 8.1, Android, iOS/iOS classic and ASP.NET Core 1).
Then try adding Xamarin.Forms again.
You can see more information with a list of all(?) profiles here.
Here you see how to change in Visual Studio project Properties:
And here in Xamarin Studio project Option:
The problem is that you do not have the Portable Class Library (PCL) profiles installed on Windows. Xamarin.Forms 2.2.0.31 supports Profile78 so changing it to Profile111 will not fix the problem.
The error message itself indicates that this is the problem since it refers to Profile78. If the NuGet package was really incompatible then NuGet would show the frameworks in the PCL profile in its error message not the profile number. If I try to install Xamarin.Forms 2.2.0.31 into a PCL project that targets Profile1 which is not supported by Xamarin.Forms then I get an error:
Could not install package 'Xamarin.Forms 2.2.0.31'. You are trying to install this package into a project that targets 'portable-net40+sl40+win+wp+Xbox40', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.
Note that Profile1 is not mentioned.
There are detailed instructions on installing Portable Class Libraries for Xamarin Studio which I will summarize here:
To install the Portable Class Libraries on Windows you have three options:
Install Visual Studio 2013 (full or Express version). Update 2 or
above is required.
Install the Portable Library Tools and the Portable Library Reference Assemblies 4.6.
Install the Portable Library Tools and copy the .NETPortable directory from Mono over to Windows.
I have some confusions About the IDE to use for MvvmCross
a) VisualStudio (VS) uses Xamrarin.iOS and Xamarin.Android plugin for iOS and Android development. But can we also use PCL(Portable Class libraries) and MVVMCross/Monocross frameworks in VS? I see the PCL option on VS but, i don't see the support for Android & iOS. Do i need to install additional plugin for PCL to support these two platforms as well?
b) Xamarin IDE supports Android and iOS development on Mac but, is it true that Xamarin doesn't support Mono.iOS on windows? Isn't it strange that Visual studio can use the network mac for iOS development but why not Xamarin Studio?
Thank You for your time.
Regards,
Saurav
a) VisualStudio (VS) uses Xamrarin.iOS and Xamarin.Android plugin for iOS and Android development. But can we also use PCL(Portable Class libraries) and MVVMCross/Monocross frameworks in VS? I see the PCL option on VS but, i don't see the support for Android & iOS. Do i need to install additional plugin for PCL to support these two platforms as well?
MvvmCross currently uses Profile104 for Portable Class Library development. You can easily develop for this profile without installing Android and iOS. The mapping of PCL profile to platforms is, however, quite confusing (it's not exactly obvious) so the easiest way I find to create a Profile104 PCL is:
to create any PCL
then to manually edit the csproj file to say Profile104 - look for a line like: https://github.com/slodge/MvvmCross-Tutorials/blob/master/Babel/Babel.Core/Babel.Core.csproj#L14 in the csproj
I have customers who develop in medium size teams where only some people have the Xamarin tools installed - most people have just Windows tools and work on the PCLs using Unit Tests and using WindowsPhone/Store user interfaces.
b) Xamarin IDE supports Android and iOS development on Mac but, is it true that Xamarin doesn't support Mono.iOS on windows?
Yes, this is true.
Isn't it strange that Visual studio can use the network mac for iOS development but why not Xamarin Studio?
This may feel strange, but I believe this is actually this is Xamarin listening to their customers.
I believe, that the reason customers wanted Windows support for iOS was because they wanted to use Visual Studio and they wanted to use plugins like Resharper. Xamarin provided this in their 2.0 release.
It is true that they could also have added iOS functionality to XamarinStudio for Windows as well - but this (I believe) wasn't what any of their customers were asking for - so adding it would have created more work (both in creating and maintaining it) without adding any significant benefit (IMO)
I'm following this tutorial for mvvmcross and I'm trying to get the "Windows Phone UI" project working. However when I try to set references to the mvvmcross binaries, Visual Studio (2012 Premium) displays an error: a reference to a higher version or incompatible assembly cannot be added to the project.
I am using the mvvmcross binaries from 2013_01_28 as specified in the tutorial and have installed Windows Phone SDK (7.1 and 8.0). I have tried with both WP7.1 and WP8 projects but same error occurs.
Are there perhaps different binaries I should be using for WP8 VS2012?
What am I missing here?
Thanks in advance!
My guess is that you downloaded the files from the Interweb and Windows is protecting you from evil.
Try unblocking the assemblies:
http://pcmusings.wordpress.com/2012/10/31/vs2012-windows-phone-and-the-reference-to-a-higher-version-error/