Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support UWP / Windows 10 #383

Closed
Odonno opened this issue Apr 28, 2017 · 7 comments
Closed

Support UWP / Windows 10 #383

Odonno opened this issue Apr 28, 2017 · 7 comments

Comments

@Odonno
Copy link

Odonno commented Apr 28, 2017

I wanted to use the Monogame.Extended package in my project but I can't install the NuGet package.

image

@craftworkgames
Copy link
Collaborator

yeah, we currently don't officially support UWP but it should be possible to get it working if you build from source.

It'd be nice to support it if we can but I'm not sure it's possible without breaking other platforms in the process. Maybe there is a way to do it, I'm not sure. The hard part is testing all the other platforms to make sure they still work too.

If you do get it working I'd love to know about it.

@claudiuslollarius
Copy link
Contributor

claudiuslollarius commented May 8, 2017

I am facing the same issue and think it is caused by how you create your nuget packages.

In the nuspec files, I see lines like:

<file src="..\MonoGame.Extended.Tweening\bin\Release\MonoGame.Extended.Tweening.dll" target="lib" />

Following the convention for multi-targeting nuget packages, by changing to something like:

<file src="..\MonoGame.Extended.Tweening\bin\Release\MonoGame.Extended.Tweening.dll" target="lib\portable45-net45+win8+wpa81" />

should fix this.

@claudiuslollarius
Copy link
Contributor

Created pull request #387 to fix issue. No actual code needed to be changed and should not impact functionality on other platforms.

@lithiumtoast
Copy link
Contributor

lithiumtoast commented May 8, 2017

Perhaps we should use .NET standard now. Profile 111 is portable-net45+win8+wpa81 which is equivalent to netstandard1.1.

https://docs.microsoft.com/en-us/nuget/schema/target-frameworks

Warning
PCLs are not recommended
Although PCLs are supported, package authors should support netstandard instead. The .NET Platform Standard is an evolution of PCLs and represents binary portability across platforms using a single moniker that isn't tied to a static like like portable-a+b+c monikers.

@craftworkgames
Copy link
Collaborator

Yep. We definitely should got to .NET standard.

It's just not something I've really looked into whole lot. The last time I checked I was under the impression that it wouldn't work because MonoGame would also need to be .NET standard (which I figured wasn't going to happen anytime soon). Maybe?

In a more recent conversation I had with @Genbox (Velcro Physics formerly Farseer) I realized that .NET standard is actually PCL compatible, so it might not be as difficult as I first thought.

If anyone's interested in looking into this more I'm certainly curious of the pros and cons.

@claudiuslollarius
Copy link
Contributor

Why is MonoGame not going to move to .NET standard though?

It doesn't look like they have dependencies on anything and moving the shared parts of the codebase from PCL to .NET standard is straightforward.

@craftworkgames
Copy link
Collaborator

Why is MonoGame not going to move to .NET standard though?

MonoGame is quite a complicated beast. To be honest I'm not sure of the reasons other than those already mentioned on the .NET Core issue.

Of course, if you have something contribute, or questions, you should post them on MonoGame's issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants