【问题标题】:How to Modify and Test Nuget Package Xamarin Media Plugin?如何修改和测试 Nuget Package Xamarin Media Plugin?
【发布时间】:2017-03-20 19:28:59
【问题描述】:

在 Xamarin 媒体插件中,当我拍照时,我有两个选择,保存或丢弃照片。但我想添加一个弹出问题,询问用户是否真的想丢弃照片。我已经从 github https://github.com/jamesmontemagno/MediaPlugin 下载了包,并在我认为必须更改的地方进行了一些更改。我只对 Android 进行了更改,因此在 src/Media.Plugin.Android/MediaImplementation.cs 中,当用户按下取消按钮时,我将设置 null 的行更改为媒体选择器。

为了进行更改,我在 Visual Studio 上打开了 src/Media.sln 解决方案。这是对的还是我必须做其他事情?

无论如何,我现在的问题实际上不是要更改什么,我会尝试弄清楚如果我的更改是错误的怎么办,我想知道的是如何测试该更改?我必须创建自己的 Nuget 包吗?我该怎么做?当我输入 Nuget Spec no Package Manager Console 时,它​​没有被识别,所以我有点卡在这个问题上。

【问题讨论】:

  • 对不起我的英语不好。

标签: xamarin xamarin.forms nuget nuget-spec


【解决方案1】:

这里有几个选项,我会简单解释一下。

  • fork 存储库,进行更改,编译并引用 DLL
  • fork 存储库,更改代码,提交 PR 并希望 James 接受它
  • 分叉,进行更改并发布 NuGet

我认为第一个最有意义。这是一个非常具体的要求,大多数人可能没有。因此,我不相信詹姆斯会急于接受增加这种行为的公关。此外,发布一个单独的、非常相似的 NuGet 只会引起混乱;人们会寻找原始的,但会下载你的。然后再次;此更改对您来说非常具体。

我的选择是分叉存储库,进行更改并直接链接 DLL,或者如果代码是可移植的,则将其作为一个整体纳入您的项目中。最后,您可以做的是在MyGet.org 创建一个帐户并创建您自己的私人 NuGet 提要并将其放在那里。如果您正在使用此功能,现在也可以从 VSTS 获得此功能。

【讨论】:

  • 感谢您的回答。我会做第一个,我已经克隆了代表并进行了自己的修改之后我在发布模式下构建了解决方案,但我现在不知道该怎么做。那么,如何引用 DLL?我不知道该怎么做,或者我不明白什么是引用 DLL,你能给我一个例子吗?我有一个 PCL 代码。我必须将整个 Media.sln 导入我的解决方案吗?
  • 此方法的缺点是您需要将 dll 添加到您的项目并将其提交到您的存储库。这不漂亮。构建您的 dll,将其添加到您的项目中,在您想要的文件夹中,然后右键单击项目中的引用节点,浏览到 dll 并在那里添加引用。如果对您有帮助,也请接受此作为答案。
  • 嘿伙计们,你引用了哪个 DLL(PCL?Android?iOS?)?我也对 Plugin.Connectivitiy 进行了修改,并在同一个解决方案中创建了 TestApp (PCL),现在参考部分对我来说似乎很模糊。尝试引用一些匹配项并继续获得Exception NotImplementedInReferenceAssembly() 非常感谢一些帮助!
  • 您似乎只引用了 PCL DLL。您是否在平台项目中引用了特定于平台的实现?
猜你喜欢
  • 2022-12-23
  • 1970-01-01
  • 2011-03-09
  • 1970-01-01
  • 2020-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多