Parse 构建移动APP后台服务(一)

目前正在开发的产品告一段落,有时间总结下经验,也顺便分享一下我们主要使用的平台-Parse。

什么是Parse?

Parse是一群美国人开发的专为移动APP服务的云计算平台,与现有的其他云计算平台相比,Parse除了提供Restful的service
之外,也提供了官方的iOS和Android
SDK。个人认为高质量的client端SDK是Parse区分与其他云服务的核心优势。为什么呢?看完我的文章就知道了。

为什么要用Parse?

先想想开发一个简单的需要保存用户数据的APP,你需要做什么。非技术背景的人多半会认为只需要找个人做几个手机界面就行了。慢!身为程序员的我
们会告诉这个不懂技术的朋友(也许是投资人,也许是你的老板),为了保存用户数据及密码,我们需要建立一个数据库,建立一个服务器,找一个虚拟主机提供商
部署服务,花费几天到几个月的时间开发服务器的代码,尽管这些事情看上去与一个运行在手机上的程序毫无关系,却是必须而不可或缺的。这些与iPhone开
发无关的前期准备工作阻止了大多数个人或者小团体的创业想法变成实际行动。这时候,小团队的拯救者Parse出现了。只需专著于iPhone上具体需求的
开发,繁琐的后台服务全由Parse包办。

Parse提供的服务?

多数功能免费,少数功能只开放给Pro用户(199$/month),具体情况可以访问官网(https://www.parse.com/plans)。

1. JASON格式的数据保存读取。可以理解为数据库+DAO+Service。No
Schema,前台程序员无需预定义表结构,只要建立Object C
对象,保存时就可以自动建立对应面向对象的“数据库表”。传统开发过程中,整个后台服务的开发工作全部都省去了。

2. 用户管理。用户对象是最常用的,Parse提供了PFUser对象,包含了注册登陆重设密码等常用用户操作,并引入ACL管理对象的权限。

3. 消息推送:支持iOS和Android平台的消息推送。具体的说就是iOS开发者无须再建立自己的消息发送服务器了。

4. 文件存贮:除了类数据库的方式保存对象也支持二进制文件的保存。

5. 隐藏Parse: 默认情况,重设密码,验证油箱等功能使用带有Parse logo的网页和邮件地址。Pro用户可以自定义邮件模版,网页模版,或者要求Parse redirect到自己应用的官网。

6. Facebook和Twitter账户绑定。就是建立PFUser和Facebook和Twitter账户的关联。同时Parse的SDK也包含了Facebook和Twitter的SDK。这个应该只对那些面向国外市场的同学有用。

Parse的SDK包括什么?

第三方的云服务满天飞,好用才是关键。看看Parse团队的介绍,都是些牛人,放出来的SDK的质量也没话说。官方的有iOS和Android,
非官方的基本都全了,包括WP,PHP,Flex Java等等。这里只谈iOS的SDK。除了基本的和后台Restful
API的接口外,还包括了一个封装了下来刷新的table view
controller,挺漂亮的登陆,注册界面,异步读取保存数据接口和Cache。官网上除了各种例子之外,最近还放出了个真正上App
Store的项目AnyWall。有兴趣的同学可以去看看。

好了说了那么多,可以看看代码了。英语好的同学可以参考官方文档:www.parse.com,或者听我讲讲实际使用的经历,代码例子来自
Parse官方文档和我本人的项目。可以参考 https://www.parse.com/apps/quickstart  建立本地开发环境。

最简单的Parse对象就是下面这个:

Object c代码  

  1. score: 1337, playerName: "Sean Plott", cheatMode: false

如果用parse保存的话就是:

Object c代码  

  1. PFObject *gameScore = [PFObject objectWithClassName:@"GameScore"];
  2. [gameScore setObject:[NSNumber numberWithInt:1337] forKey:@"score"];
  3. [gameScore setObject:@"Sean Plott" forKey:@"playerName"];
  4. [gameScore setObject:[NSNumber numberWithBool:NO] forKey:@"cheatMode"];
  5. [gameScore save];

对应的Request格式为:

复制代码

Object c代码  

  1. objectId: "xWMyZ4YEGZ", score: 1337, playerName: "Sean Plott", cheatMode: false,createdAt:"2011-06-10T18:33:42Z", updatedAt:"2011-06-10T18:33:42Z"

保存成功后可以在Parse的Data Browser里看到对应的纪录。

时间: 2024-10-13 10:08:17

Parse 构建移动APP后台服务(一)的相关文章

Parse 构建移动APP后台服务(二)

Parse支持的数据类型 目前Parse的table column支持NSString, NSNumber, NSDate, NSData, 或者另外一个PFObject.同时也可以使用NSDictionary and NSArray保存结构化的数据.其中NSArray 支持相对应的查询.虽然可以使用NSData保存二进制数据,但是推荐先使用PFFile保存文件,比如照片等,而在对应的column保存PFFile 的引用. 常用的查询 类似SQL,查询时先创建PFQuery对象,然后设置查询条件

专业移动APP 手机APP后台服务端开发

专业移动APP 手机APP后台服务端开发优势:8年PHP 9年JAVA开发经验采用THINKPHP 和JFINAL ,SBadmin 2框架进行开发完善的开发文档免费一年BUG维护 可签协议,可先预付20%,也可分段付款, 亲 请带好需求文档! QQ 184377367 报价原则1:功能列表2:兼容性3:安全要求等级4:是否需要完善的开发文档5:后台UI是否有要求

app后台服务

一个免费的后台服务 能够上传保存数据和获取后台数据,支持推送服务,相当于一个简单的后台.基本能够满足小型app的后端需求. https://www.parse.com/ 注册后就可以创建app. 添加parse库的方法: 1. 添加sdk库到工程 2.下述系统库 AudioToolbox.framework CFNetwork.framework CoreGraphics.framework CoreLocation.framework MobileCoreServices.framework

android 实现后台服务及源码下载

android APP后台服务可以长期与服务器进行长期的交互,保证数据的实时性,这个小项目主要实现的是在app退出之后依然可以运行服务.使用系统的Intent.ACTION_TIME_TICK进行实现,这个系统的广播每隔一分钟就进行广播一次,可以在程序中接收该广播消息,接收到之后检测app中的service服务是否在运行,如果在运行,则不处理,如果没有运行,则重新启动该service服务. 值得注意的是,虽然本示例可以实现后台运行服务的功能,但是当用户按home键进行清楚内存的时候依然可以把ap

Win10/UWP开发—使用Cortana语音与App后台Service交互

上篇文章中我们介绍了使用Cortana调用前台App,不熟悉的移步到:Win10/UWP开发—使用Cortana语音指令与App的前台交互,这篇我们讲讲如何使用Cortana调用App的后台任务,相比调用前台的App,调用后台任务有个有点就是App不用被启动即可为用户提供服务. 要想使用Cortana调用App后台任务,首先我们需要定义VCD文件,我们依旧使用上篇中的代码,让它支持Cortana调用后台任务. 创建后台任务 新增一个[Windows运行时组件]项目,暂时起名叫做:XiaoMiBa

你用什么作为app应用的后台服务?

?? 你用什么作为app应用的后台服务? Ruby on Rails还是PHP? PHP+Mysql作为Android app的后台:http://www.tutorialspoint.com/android/android_php_mysql.htm PHP+Mysql作为IOS app的web service后台: http://www.raywenderlich.com/2941/how-to-write-a-simple-phpmysql-web-service-for-an-ios-a

OData(01) - 使用OData高效构建后台服务

使用OData高效构建后台服务 如题本文是要说OData的,无论了解还是不了解都可以看下,本文的前半段无论是做NET还是JAVA或者其他的朋友都同样适用,不过还是以NET为样例说明,后半段就有点晦涩看大家心情了. 开发后台的问题 这里要先称述下后台服务的发展历程,从WebService的出现后到现在出现了很多后台服务相关的概念及框架概念有服务化.Restful.微服务等等,NET中的框架例如WCF.WCF数据服务.WCF Rest.MVC最后到WebAPI. 到目前为止,无论出现了多少概念还是框

Android官方开发文档Training系列课程中文版:后台服务之IntentService的创建

原文地址:http://android.xsoftlab.net/training/run-background-service/index.html 引言 除非特别指定,否则所有的操作都是在UI线程中执行的.不过这会引起问题,因为长时间的耗时操作会妨碍UI线程的运行.这会惹恼用户,并可能会引起系统错误.为了避免这样的情况出现,Android为此提供了一些类,可以使这些耗时操作放在单独的线程中执行.这里用到最多的就是IntentService了. 这节课主要学习如何实现IntentService

《App 后台开发运维和架构实践》目录

ps:由于书的目录太长了,各大网店(京东,当当,亚马逊)都显示不完整,所以这里列出目录的完整版. 第1章 App后台入门 16 1.1 App后台的功能 16 1.2 App后台架构 17 1.3 App和App后台的通信 19 1.4 App后台和Web后端的区别 22 1.5 选择服务器 23 1.6 选择编程语言 24 1.7 快速入门新技术 25 1.7.1 思维模式 25 1.7.2 4种快速入门新技术的方法 25 1.8 App是怎样炼成的 26 1.8.1 项目启动阶段 26 1.