代码之家  ›  专栏  ›  技术社区  ›  Remy

统一的条带集成

  •  0
  • Remy  · 技术社区  · 6 年前

    我使用的Unity2017.2.1f1运行的是实验性的.NET 4.6脚本运行时版本,兼容级别为.net4.6。

    但是当我安装最新版本的 Stripe.net (这需要.NET 4.0)使用nuget数据包管理器我得到错误 Error CS0246 The type or namespace name 'Stripe' could not be found (are you missing a using directive or an assembly reference?) 尝试使用条带命名空间时。

    我很确定这是由于Monodevelop的干扰造成的,因为我可以使用 Stripe 当我创建一个干净的.net项目并获得与nuget完全相同的包时。

    是否有不同的方法来安装Stripe.net库以允许我使用命名空间?

    using Stripe; // not found (in a Unity project)
    public class StripeAuthenticate 
    {
       void InitStripe()
       {
           StripeConfiguration.SetApiKey("stripe_key");
       }
    }
    

    我试着去除单一行为遗传,但这也没有起到任何作用。

    我试过按步骤走 here 但因为我从一开始就在使用nuget,这对我没有任何帮助。

    编辑:我知道 UniStripe 但这几年都没有更新,加上负面评价,我觉得用这个不舒服

    1 回复  |  直到 6 年前
        1
  •  1
  •   Remy    6 年前

    显然,问题在于裸体而不是单一行为。

    当Unity从/Assets/文件夹中提取所有资源时,它找不到任何通过nuget包管理器安装的库,该管理器将其下载位置默认为 $(Solutiondir)/packages/<packageName> 在unity的资产文件夹上面。

    我通过以下步骤解决了这个问题:

    • 使用nuget安装条带
    • 导航到SolutionDir/packages
    • 复制 将条带和newtonsoft/lib/文件夹移到临时位置
    • 不偏不倚的 使用nuget的包
    • 将/lib/文件夹移到/assets内的目录中/

    在没有首先使用nuget卸载包的情况下,我得到了大量的错误消息,说stripe已经定义好了。