起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 15990|回复: 38

[分享] 极光推送(根据手机号进行推送)

  [复制链接]

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
发表于 2016-8-14 13:24:50 | 显示全部楼层 |阅读模式
本帖最后由 不羁的风 于 2016-8-14 13:26 编辑

先说实现的效果:
1、根据手机号进行推送,只要用户用手机号登陆了App就能接受到推送!
(写在button的点击事件下面)以下是遍历获取到数据库的手机号码,一个个进行推送,基础差只能这样写,欢迎指正!!!
  1. // 遍历获取数据库的手机号
  2. //debugger;
  3. var names = [];
  4. merchantData.eachAll(function(param) {
  5.         names.push(param.row.val('telephone'));
  6. });
  7. for (var i = 0; i < names.length; i++) {
  8.         // x为获取到的手机号
  9.         var x = names[i];
  10.         Baas.sendRequest({
  11.                 "method" : "post",
  12.                 "url" : "/hy/jpush",
  13.                 "action" : "push",
  14.                 "anync" : false,
  15.                 "params" : {
  16.                         registrationId : x
  17.                 }
  18.         });
  19. }
复制代码




qq:7953899

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-16 09:51:40 | 显示全部楼层
淡陌 发表于 2016-8-16 09:33
谢谢,看了感觉明白了很多,弹药实现像我给你推,你给他推,他给她推得这种个人之间的推送问题该怎么取解决 ...

把具体需求描述清楚我看下
qq:7953899
回复 支持 1 反对 0

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-16 10:52:57 | 显示全部楼层
淡陌 发表于 2016-8-16 09:57
用户之间可以相互推送消息

完全可以的呀!  比如说你给B推送信息,你在B接收推送的页面把这句话写上,这句话就是把该用户的手机号作为标识!
  1. var registrationId = merchantData.val("telephone");
  2. window.plugins.jPushPlugin.setAlias(registrationId);
复制代码
qq:7953899
回复 支持 1 反对 0

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-16 10:54:26 | 显示全部楼层
淡陌 发表于 2016-8-16 09:57
用户之间可以相互推送消息
  1. Baas.sendRequest({
  2.                 "method" : "post",
  3.                 "url" : "/hy/jpush",
  4.                 "action" : "push",
  5.                 "anync" : false,
  6.                 "params" : {
  7.                         registrationId : x
  8.                 }
  9.         });
复制代码

然后把以上参数x,改为B的手机号!  只要B在App里面登陆了,就会收到推送!
qq:7953899
回复 支持 1 反对 0

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-14 13:29:58 | 显示全部楼层
baas/jpush/Push.java文件中的
  1. .setAudience(Audience.registrationId(registrationId))
复制代码

改为:
  1. .setAudience(Audience.alias(registrationId))
复制代码


qq:7953899
回复 支持 反对

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-14 13:32:12 | 显示全部楼层
记得将jpush.config.xml中的参数,配置成自己申请的JPush应用的参数,然后重新模型编译! 没有的话到官网申请!  极光推送 官网传送门:https://www.jiguang.cn/
qq:7953899
回复 支持 反对

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-14 13:34:04 | 显示全部楼层
在要接收推送的App登录页面,登录成功之后:
//获取到该登录用户的手机号
  1. var registrationId = merchantData.val("telephone");
  2. window.plugins.jPushPlugin.setAlias(registrationId);
复制代码
qq:7953899
回复 支持 反对

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
 楼主| 发表于 2016-8-14 13:34:53 | 显示全部楼层
以上即可!欢迎指正
qq:7953899
回复 支持 反对

使用道具 举报

130

主题

357

帖子

1012

积分

金牌会员

Rank: 6Rank: 6

积分
1012
QQ
发表于 2016-8-16 09:33:32 | 显示全部楼层
谢谢,看了感觉明白了很多,弹药实现像我给你推,你给他推,他给她推得这种个人之间的推送问题该怎么取解决呢
回复 支持 反对

使用道具 举报

130

主题

357

帖子

1012

积分

金牌会员

Rank: 6Rank: 6

积分
1012
QQ
发表于 2016-8-16 09:57:16 | 显示全部楼层
不羁的风 发表于 2016-8-16 09:51
把具体需求描述清楚我看下

用户之间可以相互推送消息
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 06:29 , Processed in 0.079607 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表