昨天下载了Bmob官网云端逻辑的Demo,结果呢,代码不报错,客户端也没效果。好吧,我承认,不仅Demo过时了,官网介绍文档中的代码也TMD的过时了

放气

原因在于官方Demo用的sdk版本已过时

所以我打算重新探一遍坑,Go

第1步【新建工程,导入Bmob的sdk】

maven { url "https://raw.github.com/bmob/bmob-android-sdk/master" }

compile 'cn.bmob.android:bmob-sdk:3.5.0'

多的不说老司机都懂

第2步【编写云端逻辑方法】

跳至Bmob项目的云逻辑处,添加方法,这里举例起名叫test,然后确定,在编写代码的区域内,清空原有代码,粘贴以下代码

编写云端逻辑方法

function onRequest(request, response, modules) {

//获取SDK客户端上传的name参数

var name = request.body.name;

if(name == 'bmob')

response.end('Hello,简书');

else

response.end('输入错误,请重新输入');

}

Ok,代码解释一下,参照客户端请求的参数正确与否,实现返回字符串的功能,在线调试如下

云端逻辑在线调试

第3步【初始化Bmob,写入云端逻辑】

官网新建项目,设置里复制Appkey

Appkey

初始化

Bmob.initialize(this,"你的Appkey");

创建云端逻辑对象,并处理

//创建云端逻辑对象

AsyncCustomEndpoints ace = new AsyncCustomEndpoints();

//test对应你刚刚创建的云端逻辑名称

String cloudCodeName = "test";

JSONObject params = new JSONObject();

//name是上传到云端的参数名称,值是bmob,云端逻辑可以通过调用request.body.name获取这个值

try {

params.put("name","bmob");

} catch (JSONException e) {

e.printStackTrace();

}

ace.callEndpoint(cloudCodeName, params, new CloudCodeListener() {

@Override

public void done(Object object, BmobException e) {

if (e == null) {

Toast.makeText(

BmobCloudActivity.this

,object.toString()

,Toast.LENGTH_LONG).show();

} else {

Toast.makeText(

BmobCloudActivity.this

,e.getMessage()

,Toast.LENGTH_LONG).show();

}

}

});

重点是这句

ace.callEndpoint(cloudCodeName, params, new CloudCodeListener(){});

第一个参数是云端的代码的方法名,即合云端相符的test

第二个参数是传入的参数列表,即和云端相符的name对应的bmob值

第三个参数是监听回调器,用e判断连接状况,做出响应

然后object.toString()就能得到云端response.end()中的内容

编译看看效果吧

当参数name对应值是bmob时的回调结果

当参数name对应值非bmob时的回调结果

【探坑到此结束】

嘿嘿嘿

云端调用android函数,【探坑】Bmob的云端逻辑相关推荐

  1. 【Android 逆向】函数拦截原理 ( 通过修改 GOT 全局偏移表拦截函数 | 通过在实际被调用的函数中添加跳转代码实现函数拦截 )

    文章目录 一.通过修改 GOT 全局偏移表拦截函数 二.通过在实际被调用的函数中添加跳转代码实现函数拦截 一.通过修改 GOT 全局偏移表拦截函数 使用 GOT 全局偏移表 拦截函数 , 只需要将 G ...

  2. 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 远程调用 目标进程中 libc.so 动态库中的 mmap 函数 二 | 准备参数 | 远程调用 mmap 函数 )

    文章目录 一.准备 mmap 函数的参数 二.mmap 函数远程调用 一.准备 mmap 函数的参数 上一篇博客 [Android 逆向]Android 进程注入工具开发 ( 注入代码分析 | 远程调 ...

  3. Android之jni调用java函数总结

    1.先看之前jni的如何实现动态注册 先看我之间的例子 http://blog.csdn.net/u011068702/article/details/71375920 Android之JNI动态注册 ...

  4. android java调用参数,如何从命令行调用Android JNI函数并传递Java对象参数

    一.前言 当我们对某个使用原生库(native library)的恶意软件或者应用进行分析或渗透测试时,如果能够对库函数进行隔离和执行是再好不过的事情,这样做我们就可以使用其自身的代码来调试对抗恶意软 ...

  5. Android Studio与Bmob关联

    Android Studio与Bmob关联 SDK下载 登录账号进入bmob后台后,点击后台界面左上角"创建应用".选择你要开发的应用,进入该应用.获取Application ID ...

  6. Android实践——使用Bmob实现登录、注册等功能

    Bmob云可以用于云端数据库,使用方便简单,只需要我们在Bmob云注册之后,获取产品apk即可,下面代码就简单介绍了一下 我们可以写一个User类,包含name.password import cn. ...

  7. [原] Unity调用android版新浪微博

    本文提供unity调用微博android版 SDK 分享图片,现有sdk支持路径调用分享图片 雨凇MOMO已实现; 本文教会大家如何通过byte流分享图片(官方API pic true binary ...

  8. 【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(上)

    本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/android-game/725.html ☞ ...

  9. 【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(下)

    示例代码段2: Xcode 代码: //静态函数示例2.有参数,无返回值------------------------------$$$$$$$--------------------------- ...

最新文章

  1. 最好用的货币:货币发展史和BCH
  2. Supervisor行为分析和实践
  3. mysql忽略大小写配置cnetos_CentOS7下安装MYSQL8.X并设置忽略大小写
  4. HTML 统一资源定位器(Uniform Resource Locators)URL
  5. 关于ESP8266 GPIO中断使用的总结
  6. 【PP操作手册】运行MRP产生计划订单
  7. word 公式编号 右侧对齐_写论文要求公式居中编号右对齐的方法
  8. C/C++ OpenCV设置感兴趣区域ROI
  9. xmpp 常见错误 一
  10. MyBatis查询返回类型为int,查询结果为空NULL,报异常解决
  11. 数据挖掘:数据清洗——异常值处理
  12. 洛谷P1978 集合 [2017年6月计划 数论08]
  13. PortableApps使用入门
  14. Proxmark3系列教程1——PM3用法
  15. cso(布谷鸟)算法优化神经网络参数
  16. 软件工程专业职业规划发展路线
  17. adprw指令教程_三菱FX5U模拟量,通信,运动控制详解
  18. 普惠联接,让人类诗意地栖居在大地上
  19. 实践▍用大数据扒一扒蔡徐坤的真假流量粉 | Alfred数据室
  20. Android多维商品属性SKU选择

热门文章

  1. python抽奖简单小程序游戏_python——(分别用两种方式实现)公司年会抽奖小程序...
  2. 3dmax导出fbx ue4_耗子尾汁马保国—CC3快速相片建模到UE4实时面部,动作捕捉
  3. 设计灵感|如何设计出简洁吸引人的字体海报?
  4. 文字排版不可不看的优秀案例合集
  5. UI设计素材|图标在UI设计界面当中起到什么作用
  6. echarts grid的样式位置_vue使用Echarts vue使用Echarts滚动条
  7. Linux TCP/IP网络协议栈:IP协议源码分析
  8. ZooKeeper分布式应用程序的分布式协调服务:概述,入门,发布版本
  9. libcurl overview
  10. 总线驱动:Bus driver - USB driver for example