2016-09-13 17 views
0

大约一年前,我制作了一个iOS应用程序,可以在任何类型的位置附近找到餐馆并显示有关它们的信息。我使用FourSquare API做了一个Web服务调用,以获取以json格式返回的所有数据,然后我解析它并在应用程序的UI上显示信息。现在我想制作一个使用Xamarin.Android的android应用程序,因为我正在学习使用Xamarin工作室和C#。当我制作Xamarin.Android应用程序并转到包时,然后添加包,我看到有一个Foursquare api包,它有一个.NET包装器。这里是网址:在Xamarin中使用.NET打包的API的优点

https://www.nuget.org/packages/Foursquare.Api/

所以我的问题是如何工作的呢?添加这个包是否意味着我不必再进行网络服务调用,而是将所有数据存储在这个包中,我只需要以与从本地数据库获取信息相同的方式获取所有数据?使用这个软件包而不是仅仅向Foursquare发起Web服务调用有什么好处?

+0

使用API​​包装的优点?你写的代码更少。你必须学习包装而不是整个API(这应该更容易)。其他人必须在API更改时更新包装器。可能有更多的好处。我严重怀疑你会发现任何API封装器,它将API中的所有数据嵌入到你的应用中 - 图像需要多少空间! – dylansturg

+0

好吧,我明白你的意思了。谢谢 –

回答

3

认为它是这样的:

这Foursquare的API很简单,你要使用的Web服务的一个.NET包装。因此,有人已经为您做了所有的辛苦工作,以便您可以简单地使用应用程序中返回的数据。

这对您意味着什么?

那么这意味着您不必编写任何REST消耗代码,并且您可以更多地关注实际应用程序以及您需要基于Foursquare对象实现的任何业务逻辑。

为了避免混淆,这些数据的来源与您编写自己的Web服务以访问Foursquare API端点中的数据的方式相同。

优点:

  • 你不需要知道在他们的REST API的方式
  • 一般,所以很容易消耗如下每种语言的最佳实践已经写入(对象创建,方法等)

缺点:

  • REST端点可能被更新,它更新
  • 任何错误,直到包不能反映/框架中的问题是很难解决办法,如果这个项目是不开源
  • 可能是缺乏关于如何使用包装的文档
+0

非常感谢现在。 –