移动开发者的便捷服务器bmob
2016-01-25 16:19
246 查看
对于很多Android/ios/wp个人移动开发者来说,开发一个具有网络功能的应用不是一件容易的事,不仅需要购买/租赁服务器,还必须掌握一门诸如Java/.net/php这类的服务器开发语言(尽管我在开始学习服务器开发),每开发一款移动应用程序,就必须开发维护对应的服务器程序。这一切对于移动开发者来说,都是一个冗长的噩梦。
然后看了下小伙伴们推荐的这个bmob,发现还真是简单无脑。推荐
也可以在在main.m文件中,引入头文件
对于很多Android/ios/wp个人移动开发者来说,开发一个具有网络功能的应用不是一件容易的事,不仅需要购买/租赁服务器,还必须掌握一门诸如Java/.net/php这类的服务器开发语言(尽管我在开始学习服务器开发),每开发一款移动应用程序,就必须开发维护对应的服务器程序。这一切对于移动开发者来说,都是一个冗长的噩梦。
然后看了下小伙伴们推荐的这个bmob,发现还真是简单无脑。推荐
注册Bmob帐号
在网址栏输入www.bmob.cn或者在百度输入Bmob进行搜索,打开Bmob官网后,点击右上角的“注册”,在跳转页面填入你的姓名、邮箱、设置密码,确认后到你的邮箱激活Bmob账户,你就可以用Bmob轻松开发应用了。网站后台创建应用
登录账号进入bmob后台后,点击后台界面左上角“创建应用”,在弹出框输入你应用的名称,然后确认,你就拥有了一个等待开发的应用。获取应用密钥和下载SDK
选择你要开发的应用,点击该应用下方对应的“应用密钥”在跳转页面,获取Application ID,此ID将会在初始化SDK中使用到。获取Application ID后,下载SDK,开发者可以根据自己的需求选择相应的iOS SDK 或Android SDK,点击下载即可。安装BmobSDK
直接添加类库方式使用BmobSDK
1)将BmobSDK引入项目:在你的XCode项目工程中,添加BmobSDK.framework2)添加使用的系统framework:在你的XCode工程中Project -> Edit Active Target -> Build Settings->Link Binary With Libraries引入CoreLocation.framework、Security.framework、CoreGraphics.framework、MobileCoreServices.framework、CFNetwork.framework、CoreTelephony.framework、SystemConfiguration.framework、libz.1.2.5.dylib、libicucore.dylib、libsqlite3.dylib、***Foundation.framework、MediaPlayer.framework使用CocoaPods安装BmobSDK
如何使用CocoaPods安装BmobSDK可查看我们提供的文档: https://github.com/bmob/bmob-ios-sdk/blob/master/InstallCocoaPods.md设置应用的BmobKey
在你的XCode工程中的AppDelegate.m文件中创建应用Key,填入申请的授权Key(SDK使用的是应用密钥里的Application ID),示例如下:[code]- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ [Bmob registerWithAppKey:@"申请的Application ID"]; return YES; }
也可以在在main.m文件中,引入头文件
#import <BmobSDK/Bmob.h>
[code]int main(int argc, char * argv[])
{ @autoreleasepool {
NSString *appKey = @"申请的Application ID";
[Bmob registerWithAppKey:appKey]; return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
添加一行数据
[code]//往GameScore表添加一条playerName为小明,分数为78的数据 BmobObject *gameScore = [BmobObject objectWithClassName:@"GameScore"]; [gameScore setObject:@"小明" forKey:@"playerName"]; [gameScore setObject:@78 forKey:@"score"]; [gameScore setObject:[NSNumber numberWithBool:YES] forKey:@"cheatMode"]; [gameScore saveInBackgroundWithResultBlock:^(BOOL isSuccessful, NSError *error) { //进行操作 }];
获取一行数据
[code]//查找GameScore表 BmobQuery *bquery = [BmobQuery queryWithClassName:@"GameScore"]; //查找GameScore表里面id为0c6db13c的数据 [bquery getObjectInBackgroundWithId:@"0c6db13c" block:^(BmobObject *object,NSError *error){ if (error){ //进行错误处理 }else{ //表里有id为0c6db13c的数据 if (object) { //得到playerName和cheatMode NSString *playerName = [object objectForKey:@"playerName"]; BOOL cheatMode = [[object objectForKey:@"cheatMode"] boolValue]; NSLog(@"%@----%i",playerName,cheatMode); } } }];
修改一行数据
[code]//查找GameScore表 BmobQuery *bquery = [BmobQuery queryWithClassName:@"GameScore"]; //查找GameScore表里面id为0c6db13c的数据 [bquery getObjectInBackgroundWithId:@"0c6db13c" block:^(BmobObject *object,NSError *error){ //没有返回错误 if (!error) { //对象存在 if (object) { BmobObject *obj1 = [BmobObject objectWithoutDatatWithClassName:object.className objectId:object.objectId]; //设置cheatMode为YES [obj1 setObject:[NSNumber numberWithBool:YES] forKey:@"cheatMode"]; //异步更新数据 [obj1 updateInBackground]; } }else{ //进行错误处理 } }];
删除一行数据
[code]BmobQuery *bquery = [BmobQuery queryWithClassName:@"GameScore"]; [bquery getObjectInBackgroundWithId:@"0c6db13c" block:^(BmobObject *object, NSError *error){ if (error) { //进行错误处理 } else{ if (object) { //异步删除object [object deleteInBackground]; } } }];
源码下载
快速入门相关源码下载案例教程和源码是快速入门的最简单方法,Bmob也为大家准备了相关的案例教程和源码,欢迎大家下载和查看。这个是你的bmob账号的管理里面的 可以操作数据库而且bmob似乎不只是服务器的,什么支付即时通讯的也都涉及(我并不了解),感觉应该挺不错的,网上也有bmob的视频教程 有兴趣的可以看看相关文章推荐
- 常见C++笔试题目整理(含答案)
- 4.6 Routing -- Rendering A Tempalte
- 模指数运算
- SpringMVC表单标签&处理静态资源
- Delphi XE8 用HttpClient下载文件
- gitinspector+jenkins 开发代码统计CI
- 报错 sal.h(2367): error
- 负载均衡的几种常用方案
- Drupal常用开发工具(一)——Devel模块
- 保证统计信息的准备性
- 腾讯邮箱邮件正文存储型漏洞
- 2016.01.22-2016.01.24回顾
- 热烈祝贺Polymer中文组织站点上线
- Windows OS上安装运行Apache Kafka教程
- [置顶] 每天进步一点点——五分钟理解一致性哈希算法(consistent hashing)
- 项目用druid,长时间不访问应用,再访问又连接不上了数据库了
- Fluentd(td-agent)安装
- Kettle本机编译
- Android点击EditText之外地方隐藏键盘
- Android关于JavaScript与Native方法相互调用