Tan*_*vir 2 google-app-engine android google-cloud-storage
它让我发疯,有人请在这里帮助我。这个谷歌云的东西让我很困惑。我在这里有点不对劲,我的理解中缺少一些东西。我想使用云存储。现在我有一个默认的 Android Studio 项目有一个 android 客户端,一个应用引擎后端,由实体、端点、客户端库等和一个 WEB 客户端组成。在浏览谷歌云存储文档时,我发现了以下内容-
我仍然不确定每个人实际上做了什么。我不知道如何在我的 android 客户端中实现云存储。
如果我使用云存储,为什么我需要应用引擎后端应用?我的后端不需要 API,对吗?我可以像使用 Volley 一样使用 Google Cloud Storage JSON API 直接使用我的存储桶。我在这里错过了什么吗?
是否有关于如何从 android 客户端/应用程序使用云存储的“hello world”教程,或者任何人都可以提供帮助?
如果您 100% 确定您不需要任何后端逻辑,并且永远不会,请参阅在 android 中使用 Google Cloud Storage JSON api进行直接的 Android <-> Google Cloud Storage 操作。
通常,在一个成功的应用程序的生命周期中,最终需要后端的一些逻辑(例如,处理不同版本的客户端——并非所有更新都在同一纳秒内:-),因此通常更加谨慎和未来- 证明让前端转到 App Engine 后端,该后端除了提供对 Cloud Storage 的访问之外,还可以应用所需的任何逻辑。
在 0.1 版本中,所需的逻辑量可能非常小(尽管通常至少需要某种身份验证),但如果应用程序成功,则可能需要新版本,并且后端将能够发展以处理该问题。
然后在评论中你问:
就我所了解的 appengine 而言,如果我需要将数据存储在 NoSQL 数据存储中,那么我可以制作一个具有端点支持的后端,这将反过来使用我的 Restful API。
更常见的安排是让后端提供一个restful API 供前端消费;并且,这就是 Cloud Endpoints 可以为您做的事情(尽管您可以通过许多其他不同的方式设计和实现该 Restful API,如果您愿意的话)。
我的意思是,我可以/应该从我的后端端点内使用云存储休息 API,它本身用于调用我自己的休息 API?
一种健壮的架构基于关注点分离。让在 Android 上运行的前端主要关注整个应用程序的“人机界面”部分——清晰且有用地呈现数据,与用户交互。
前端可以将几乎所有其他问题委托给后端,包括存储和应用程序特定逻辑的大多数方面,这些方面涉及存储内容、是否允许访问(哪种类型——读/写或读) /only) 到某些数据,具体取决于用户的身份验证等。
这种委托可以利用 Cloud Endpoints,或者,您可以选择以不同的方式设计和实现它(例如,通过不同的框架生成和使用应用程序的 REST API)。
为什么我需要后端逻辑来处理不同版本的客户端?
例如,当新版本的客户端想要存储和检索比旧版本更多的数据时,您将需要它——例如,在未来的某个版本中,您可能认为添加 GPS 位置数据很有用,或可选的多张照片或音频片段等,这些在以前的版本中没有使用过。(当然,在不知道您的应用程序的全部内容的情况下很难具体说明,但总的来说,总有一些您在早期版本中没有做的事情,并希望添加到未来的版本中:-)。
在这种情况下,后端需要确切地知道期望从客户端得到哪些数据,反过来哪些数据需要返回给客户端——而这些关键方面将取决于客户端的版本;并且没有后端逻辑来调解,新旧客户端之间的平滑无缝过渡是不可行的,特别是在一些客户端升级到新版本而其他客户端仍然停留在旧版本的过渡期间。
| 归档时间: |
|
| 查看次数: |
1255 次 |
| 最近记录: |