Rango
Rango
  • 发布:2017-02-16 15:15
  • 更新:2019-03-23 09:21
  • 阅读:1990

使用socket.io,创建本地消息,收到消息问什么屏幕不会点亮呢?

分类:HTML5+

大家好,我的APP需要一个推送功能,但是没有使用第三方的平台,而是自己用socket.io做的。
当手机端收到服务器端的事件触发,则执行plus.push.createMessage来创建本地消息,目前是消息可以创建,但是在锁屏时不能点亮屏幕。并且显示的方式也和QQ、微信之类的不一样,只是响了一声,然后下拉通知栏才可以看见,怎么样才能收到消息后显示一下,然后再隐藏呢?就想QQ或微信那样,或者锁屏时自动点亮屏幕并显示在锁屏界面呢?

问题整理:

  1. 收到消息后如何点亮屏幕?
  2. 收到消息后如何像系统其他消息一样显示在隐藏?
  3. 在锁屏时收到消息,如何在锁屏界面上显示?
  4. receive貌似没有用,是不是我哪儿写错了?

如果5+不能实现,njs改怎么写呢?我没做过Android原生,还请各位帮忙,谢谢!!

$.init();  
  
$.plusReady(function() {  
  
	plus.push.setAutoNotification(true);  
  
	plus.push.addEventListener('receive', function(msg) {  
		alert('好像没用??');  
	});  
  
	// Socket.IO  
	var client = io('http://192.168.1.116:3000');  
	client.on('connect', function() {  
		this.emit('login', {  
			name: 'ZTE',  
			type: 'phone',  
			cid: uuid  
		});  
	}).on('test', function(err, imgs) {  
		plus.push.createMessage(imgs.toString(), {  
			title: '哈哈哈哈哈',  
			cover: false  
		});  
	});  
});
2017-02-16 15:15 负责人:无 分享
已邀请:
DCloud_App_Array

DCloud_App_Array

如果没有用到第三方推送平台,是不会触发receive事件的,这个事件时第三方推送平台发送透传消息才会触发的。
使用socket.io来实现推送,只能是通过plus.push.createMessage()在消息中心创建一条消息,点击后可以触发“click”事件。存在以下缺陷:

  1. 无法离线推送消息;
  2. 在iOS平台锁屏或应用切换到后台就不可使用。
    推荐使用第三方平台来实现推送功能,socket.io更适合做一些在线消息的场景。

对于其它问题:

  1. 收到消息后如何点亮屏幕? // 目前没有封装此API,可以尝试使用native.js来实现
  2. 收到消息后如何像系统其他消息一样显示在隐藏? // 调用plus.push.createMessage创建消息应该就是这样的,可能在不同的ROM上存在差异
  3. 在锁屏时收到消息,如何在锁屏界面上显示? // 与问题2一样

另外,以上需求再iOS平台上都无法实现, 推荐使用第三方推送平台。

  • Rango (作者)

    好吧,既然这样我就想想别的办法吧,谢谢你的回答


    2017-02-17 10:20

1***@qq.com

1***@qq.com - JackMe

emmm其实还是要用第三方的因为自己做很多局限性,离线推送,第三方api推送,你的程序总会用到微信,qq,支付宝等等第三方平台的吧!你开发手的appid起主要作用,即使你用第三方推送也需要appid和企业证书申请的

该问题目前已经被锁定, 无法添加新回复