【问题标题】:Android/iPhone apps... Using an internet based API vs a local APIAndroid/iPhone 应用程序...使用基于 Internet 的 API 与本地 API
【发布时间】:2011-10-16 00:03:50
【问题描述】:

我正在为 Android 开发一个图表应用程序。我找到了一些可以在我的项目中导入以绘制图表的 API。另一个不错的选择是使用 Google Charts API,它似乎比其他 API 更易于使用且更可靠。

我的问题是,如果我使用 Google API,大部分处理都在 Google 服务器上完成,但响应可能会有所延迟,因此显示图表时可能会有所延迟。另一方面,如果我将 API 导入到我的项目中,它会执行得更快,但可能会消耗更多内存。所以我应该选择哪一个,在基于 Internet 的 Google API 或可以导入到我的项目中的本地 API 之间进行选择时应该考虑哪些因素

【问题讨论】:

    标签: android ios performance optimization memory


    【解决方案1】:

    我认为您已经回答了自己的问题,您只需要根据用户需求、应用程序要求、环境等进行优先级排序。

    速度 资源 功能集 连接可用性和带宽

    根据您的客户要求订购,我想您会得到答案。

    我从不考虑什么是“最容易”的开发,这似乎是许多开发人员的首要任务。

    我个人会避免任何需要连接的事情,除非它是唯一可行的选择,或者应用程序本身需要它(例如实时股票图表,显然连接成为一项要求并且可以从列表中向下移动),因为有时会当连接不可用时

    只有您和您的用户才能确定什么是重要的以及按什么顺序,但至少您自己的想法!

    【讨论】:

      【解决方案2】:

      这最终取决于你,但我会为下面的每个提供一个小的优缺点列表(不全面)。

      Local Api:
          Pro:
            -No network latency
          Con:
            -Additional memory consumption (to hold the library).
      
      Remote Api:
          Pro:
            -No additional dependencies to external libraries.
            -Less memory consumption.
          Con:
            -Potential server downtime (Planned and unplanned).
            -Additional latency for creating charts.
      

      显然,由于您的目标是移动平台,因此还需要考虑一些其他事项。有时,由于服务器停机或缺少无线网络连接,Remote Api 可能不可用。因此,您可能会被推向 Local Api。另一方面,您可能希望内存占用尽可能小,因为您正在使用有限的内存设备,这可能建议使用 Remote Api。

      同样,这完全取决于(或您的业务部门)认为对您的而言最重要的是什么>(或您的业务部门的)应用程序。

      【讨论】:

      • 谢谢大家...我现在可以得出结论,应该尽可能避免使用远程 API。我同意@Idistic ......“避免任何需要连接的东西,除非它是唯一可行的选择,或者应用程序本身需要它(比如实时股票图表,显然连接成为一个要求并且可以向下移动)因为有时连接不可用”
      【解决方案3】:

      我会选择本地 API。纯粹是因为不是所有的安卓用户都能上网(很多人做出了错误的假设)。其次,人们会关注带宽的使用情况。

      除非您的应用与其他应用相比较大,否则我不会担心内存使用情况。

      【讨论】:

      • 是的,你是对的......这是一个错误的假设,即所有安卓用户都可以访问互联网,而那些拥有互联网的用户将关注带宽使用情况。
      猜你喜欢
      • 2014-01-28
      • 1970-01-01
      • 1970-01-01
      • 2011-10-11
      • 2013-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多