免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

appcan开发之消息推送

AppCan是一款综合性的移动开发平台,为开发人员提供了一系列的工具和API来开发移动应用程序。其中之一重要的功能就是消息推送,本文将详细介绍AppCan中的消息推送原理和使用方法。

一、消息推送概述

消息推送是移动应用程序中非常重要的一个功能,它允许应用程序将消息短信等通知信息及时推送给用户,提高用户体验和应用程序的互动性。在AppCan中,消息推送是一种跨平台的通知方式,可以实现向Android和iOS设备发送消息通知。具体而言,消息推送有两种类型:

1.本地推送:是指应用程序在本地生成的通知,一般在应用程序内部进行处理,与外部服务器无关。比如在购物应用程序中使用本地通知告诉用户有新订单。

2.远程推送:与本地推送不同的是,远程推送需要连接外部的服务器。当外部服务器收到一个消息请求,该消息会被处理然后异步推送给设备上的应用程序。与本地推送相比,远程推送可以根据客户端的需要动态调整消息内容。

二、AppCan消息推送架构

AppCan消息推送分为客户端和服务端两部分。客户端负责从服务端接收并展示推送消息。服务端负责生成和发送推送消息。

1.服务端架构

AppCan平台采用BaaS(Backend as a Service)的云服务方式,将所有推送配置和数据存储在云端。如下图所示:

图1 AppCan消息推送服务端架构

AppCan的消息推送服务端包含iBuild、iFly和iPush三个方面的服务,主要功能包括:

(i) iBuild:该服务负责创建推送消息的内容和格式,支持多种推送方式,如定时、立即和条件推送等。

(ii) iFly:该服务负责处理推送消息的内容和格式,主要用于外部服务器的消息格式转换,以保证AppCan客户端可以正确识别和接收消息。

(iii) iPush:该服务负责维护推送通道,同时也负责将消息推送给客户端。

2.客户端架构

在客户端中,推送消息会通过阿里云移动推送SDK推送到设备。AppCan客户端包含“AliPush”和“JPush”两种推送方式,主要功能包括:

(i) AliPush:该推送方式是阿里云提供的消息推送SDK,主要用于发送和接收消息,其详细使用流程可参考阿里云官方文档。

(ii) JPush:该推送方式是极光推送提供的消息推送SDK,用于解决AliPush在一些细节上不够完善的问题。其详细使用流程可参考极光推送官方文档。

三、AppCan消息推送使用方法

在AppCan中,消息推送的使用方法共分为四步:

1.在AppCan平台注册推送功能,获得AppID、AppKey和MasterSecret等关键参数。最终得到的信息如下图所示:

图2 AppCan消息推送配置参数

2.在业务代码中执行配置推送消息的相关内容,如下图所示:

```

//定义UserInfo对象

var userInfo = api.require('userInfo');

//定义JPUSH提供的 alias 和 tags 对象

var alias = api.require('alias');

var tags = api.require('tags');

//设置APS内容

var ios = {

alert: '推送到iOS身上',

badge: 10,

sound: 'default',

extras: {

"key": "value",

"key2": "value2"

}

};

var android = {

title: '推送到Android身上',

content: '这里是内容',

extras: {

"key": "value",

"key2": "value2"

}

};

//设置推送的配置信息

var data = {

target:params.target,

platform:params.platform,

audience:params.audience,

message:{

ios:ios,

android:android

},

options:{

apns_production:true,

time_to_live:86400*3,

**big_push_duration:10000**

}

};

//定义回调函数

function callback(ret,err) {

if (ret) {

alert(JSON.stringify(ret));

}else {

alert(JSON.stringify(err));

}

}

//发送推送消息

var jpush = api.require('jpush');

jpush.sendPush(data, callback);

```

3.在应用程序运行时连接服务器,初始化SDK,如下图所示:

```

```

4.在设备中添加推送,并在接收到信息后处理相应的操作,如下图所示:

```

```

四、总结

本文详细介绍了AppCan消息推送的原理和使用方法,以及消息推送架构和客户端与服务器端的关系。通过深入了解AppCan消息推送,可以大大提高应用程序的互动性和用户体验,使得应用程序具备更高的竞争力。


相关知识:
汽配商城软件app开发
随着互联网的普及和移动设备的广泛使用,汽车配件商城应用程序的开发成为了一个越来越重要的领域。汽配商城软件app是一种为消费者提供汽车配件的电子商务平台。本文将详细介绍汽配商城软件app的开发原理。汽配商城软件app是基于移动设备和互联网技术的应用程序。汽配
2024-01-10
厦门定制app开发大概价格多少钱
厦门定制APP开发的价格因项目需求不同而有所变化。APP开发的价格与项目的复杂性、功能需求、开发周期、开发人员的工资等因素有关。因此,APP开发的价格不是固定的,而是需要根据项目的实际情况进行评估。下面我们来详细介绍一下厦门定制APP开发的价格原理:1.
2024-01-10
app自助在线制作与开发app
App自助在线制作与开发是一种简单、便捷的方式,允许用户在线创建并定制自己的移动应用程序。这种方法适用于不懂编程的用户,不需要任何编码技能就能创建和发布自己的应用程序。本文将详细介绍App自助在线制作与开发的原理和步骤。一、原理介绍App自助在线制作与开发
2023-07-14
app开发广告语
App开发是一项极具挑战性的工作,但随着技术的不断发展和创新应用,现如今的App开发难度已经大不相同。为了开发出令人满意的应用程序,我们需要紧跟潮流,拥有深厚的技术积累。在这篇文章中,我们将介绍App开发中的原理和技术,以及开发者应该如何选择合适的开发工具
2023-06-29
apple进入开发者模式可以做什么
苹果公司提供了一种名为“开发者模式”的功能,可以在macOS、iOS和iPadOS操作系统上使用。一旦进入开发者模式,用户可以进行一些高级操作,例如从未经授权的应用商店安装应用程序、访问隐藏的系统文件夹、修改系统设置以及进行其他一些高级功能。下面我们将介绍
2023-05-06
手机端开发框架有那些类型?
混合框架:这类框架主要通过JS和Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制。这类框架的优点是维护容易,能调用部分系统硬件,兼容多平台;缺点是可能需要会原生开发以支持更多的硬件调用,性能跟原生还是有差距。例如:Ionic、React Native、一门APP、Weex等。
2023-03-22