ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

如何创建基于MonoGame的类库,以便在UWP,iOS和Android中使用

2019-06-28 04:12:48  阅读:213  来源: 互联网

标签:android ios visual-studio win-universal-app monogame


我安装了VisualStudio 2015,Xamarin和MonoGame 3.5.我将为Windows UWP,iOS和Android构建我的XNA应用程序.

我有一些基于XNA的库……我需要为三个目标系统(Windows UWP,iOS和Android)构建它们,但无法为Windows UWP创建库.我试图创建一个MonoGame Windows 10 Universal Project,但是这样的项目无法转换为生成DLL.

我还试图创建一个类库(通用Windows)项目,但后来我无法将MonoGame.Framework添加到引用.

我在创建MonoGame Android项目时遇到同样的问题……无法切换到库项目.唯一可以修改为图书馆项目的MonoGame项目是MonoGame iOS Project.

也就是说,我如何创建一个基于XNA(MonoGame)的类库来从UWP,iOS和Android中使用?

解决方法:

据我所知,你这里只有两个选择.

> Portable Class Libraries
> Shared Projects

我还没有真正使用过共享项目.我理解它们的方式是它们允许您在多个项目之间共享代码,就像它存在于库中一样,但它实际上直接编译到引用项目中.它们可以被认为是高级文件链接.

便携式类库是一个不同的野兽.我在MonoGame.Extended项目中使用它们取得了巨大的成功,但并不总是那么容易.他们的工作方式是提供适用于所有目标平台的功能子集.它们编译为可由任何项目引用的DLL,您可以确信代码将是相同的.

使用PCL有几个缺点:

>您只能使用功能的子集.令人惊讶的是,这并不会太频繁.
>如果PCL引用另一个库,它也必须是PCL.

第二点是MonoGame让事情变得有点棘手.通常,MonoGame不作为PCL发货,但PCL版本可以使用published on NuGet.

就目前而言,NuGet软件包是官方版本背后的版本,但令人惊讶的是,这并不重要,因为它是一个bait and switch PCL,这实际上意味着它只是提供了在运行时使用的真实DLL的接口.换句话说,即使PCL是版本3.2,只要界面没有改变,你的游戏仍然会很乐意参考版本3.5.

在版本3.6中有关于改善这种情况的some talk.

标签:android,ios,visual-studio,win-universal-app,monogame
来源: https://codeday.me/bug/20190628/1311896.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有