iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >Android使用个推实现三方应用的推送功能
  • 531
分享到

Android使用个推实现三方应用的推送功能

Android 2022-06-06 07:06:16 531人浏览 安东尼
摘要

PS:用了一下个推.感觉实现第三方应用的推送功能还是比较简单的.官方文档写的也非常的明确. 学习内容: 1.使用个推实现第三方应用的推送. 所有的配置我最后会给一个源代码,内

PS:用了一下个推.感觉实现第三方应用的推送功能还是比较简单的.官方文档写的也非常的明确.

学习内容:

1.使用个推实现第三方应用的推送.

所有的配置我最后会给一个源代码,内部有相关的配置和文档来帮助大家完成配置,在这里就不进行介绍了.

感觉需要写的东西不是非常的多,因为官方的文档已经写的非常的明确了,如何进行配置,导入jar包,.so文件,以及AndroidManifest的文件的相关配置都写的非常的明确.我这里就稍微的简单介绍一下.注册账号什么的我就不说了,这些基本的东西没有减少的必要性.

i.PushManager

PushManager是实现推送的核心类,可以进行推送控制,设置标签,设置别名,设置默认时间等.所有的接口都由这个对象去调用.因此我们需要初始化PushManager对象.

代码如下:PushManager.getInstance().initialize(context);

对象的创建方式是单列的.因此拿到的对象也就具有唯一性.这里获取到PushManager对象的同时去初始化个推服务,接口调用之后个推服务后台运行,通过广播的方式将CID发送给App.这里其实最重要的就是这个广播,其他的东西都没有什么重点的地方.只需要稍微的注意一下即可.

ii.GeTuiPushReceiver app接收CID的广播


package com.example.totem.getuidemo.receiver;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import com.igexin.sdk.PushConsts;
import com.igexin.sdk.PushManager;

public class GeTuiPushReceiver extends BroadcastReceiver {
 public static String KEY_CLIENT_ID = "push_notification_client_id";
 public static String message;
 public static void init(Context context){
  
  PushManager.getInstance().initialize(context);
  
  String clientId = PushManager.getInstance().getClientid(context);
  if(clientId != null){
   KEY_CLIENT_ID = clientId;
  }
 }
 @Override
 public void onReceive(Context context, Intent intent) {
  //相关处理
 }
 private static OnGetPushMessageListener onGetPushMessageListener;
 public static void setOnGetPushMessageListener(OnGetPushMessageListener onGetPushMessageListener) {
  GeTuiPushReceiver.onGetPushMessageListener = onGetPushMessageListener;
 }
 
 public interface OnGetPushMessageListener{
  void getOstfMessage(String message);
 }
}

这个广播是接收推送消息的核心类,其实实现起来也是比较简单的,首先就是获取PushManager对象,然后初始化个推服务,在OnReceiver方法中对传递过来的数据进行判断,这里只对两种状态进行了判断,一种是推送通知,另一种则是透传消息.


@Override
 public void onReceive(Context context, Intent intent) {
  Bundle bundle = intent.getExtras();
  switch (bundle.getInt(PushConsts.CMD_ACTION)){
   
   case PushConsts.GET_CLIENTID:
    String cid = bundle.getString("clientid");
    break;
   
   case PushConsts.GET_MSG_DATA:
    String appid = bundle.getString("appid");
    byte[] payload = bundle.getByteArray("payload");
    String taskid = bundle.getString("taskid");
    String messageid = bundle.getString("messageid");
    if(payload != null){
     
     message = new String(payload);
     onGetPushMessageListener.getOstfMessage(message);
    }else{
     message = "";
    }
    break;
  }
 }

这样通过判断,我们就可以得知,是推送通知,还是透传消息等等.最后写了一个对外界暴露的接口,其实就对Activity暴露接口,当我们在广播中接收到了数据发生了变化,或者是有数据传递过来,需要通过这个接口的方式,告知数据产生了变化,需要主进程做相关的处理,这是暴露接口的目的.然后在主页面中,我们只需要实现这个接口就可以了.


GeTuiPushReceiver.setOnGetPushMessageListener(new GeTuiPushReceiver.OnGetPushMessageListener() {
  @Override
  public void getOstfMessage(String message) {
   if(message!=null){
    MessageData.add(message);
   }
  }
 });

iii.打开推送

turnOnPush(context)方法,用于打开推送,如果我们不主动打开推送的话,就算是后台发送了推送消息,我们也是接收不到的.在默认的状态下是开启状态.

代码如下:GeTuiPushReceiver.init(getApplicationContext());pushManager = PushManager.getInstance();pushManager.turnOnPush(this);

iv.关闭推送服务

turnOffPush(context)方法,用于关闭推送服务.这个方法执行之后,就无法收到推送服务了,需要注意的是,想要再次接收到推送,必须使用turnOnPush(context)方法.其他方法无效.

代码如下:GeTuiPushReceiver.init(getApplicationContext());pushManager = PushManager.getInstance();pushManager.turnOffPush(this);

v.停止SDK服务.

stopService(context).停止SDK服务之后,服务不会终止运行,而是终止推送和联网功能.重新启动需要调用initalize()方法或者是turnOnPush()方法.

代码如下:GeTuiPushReceiver.init(getApplicationContext());pushManager = PushManager.getInstance();pushManager.stopService(this);

基本的东西都介绍完了,还有一些设置标签,静默时间,绑定别名什么的,大家如果有兴趣可以自己去研究下,反正我是暂时没有使用到.因此就先不动这几个模块了.我们就来看看如何使用个推后台来实现推送吧.

首先我们需要创建自己的应用,然后我们可以在应用配置当中获取到我们想要的数据,具体效果如下.

这里有我们想要的数据,AppId,AppKey等等,这些东西都需要在AndroidManifest文件中进行配置.自己做好Demo之后,就可以通过后台发送推送了.

标题和内容都是必填项,然后一直确定就可以了,这样消息就被推送出去了.在App上打开推送服务,就可以接收到推送了.透传消息我就不进行截图了.需要注意的一点就是透传消息是JSON格式的字串.个推为我们提供好了json的格式化工具.

最后放上一个源代码,这个源代码是无法运行的,因为这里是使用我自己的后台,大家也需要去创建账号,用自己的后台去创建应用,然后把AndroidManifest文件中的AppId,AppKey,AppSecret进行修改.并且内部提供了很多文档,帮助大家去集成,点击下载。

您可能感兴趣的文章:Android手机端小米推送Demo解析和实现方法Android中使用Socket通信实现消息推送的方法详解Android顶栏定时推送消息Android中使用websocket实现群聊和消息推送功能(不使用WEBView)android push推送相关基本问答总结Android、iOSwindows Phone中的推送技术详解Erlang实现的百度云推送Android服务端实例使用SignalR推送服务在Android的实现 SignalAAndroid中利用App实现消息推送机制的代码Android 推送原理(Android Push Notification)详解


--结束END--

本文标题: Android使用个推实现三方应用的推送功能

本文链接: https://www.lsjlt.com/news/24330.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android第三方消息推送功能怎么实现
    要实现Android第三方消息推送功能,可以使用以下步骤: 注册一个第三方消息推送平台,例如Firebase Cloud Mes...
    99+
    2023-10-25
    Android
  • android离线推送功能怎么实现
    在Android中实现离线推送功能,可以通过以下步骤来操作:1. 首先,你需要选择一个适合的推送服务提供商,这些服务提供商通常会提供...
    99+
    2023-09-28
    android
  • 使用php开发Websocket,实现实时推送功能
    标题:使用PHP开发Websocket,实现实时推送功能Websocket是一种基于TCP协议的通信协议,在Web开发中,可以使用Websocket实现实时推送功能,以实现实时通信或实时更新数据的需求。在本文中,我们将使用PHP语言开发We...
    99+
    2023-12-09
  • 如何使用socket.io实现消息实时推送功能
    本篇文章给大家分享的是有关如何使用socket.io实现消息实时推送功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Socket.io 介绍...
    99+
    2024-04-02
  • 怎么在SpringBoot2.0中使用MQTT实现一个消息推送功能
    今天就跟大家聊聊有关怎么在SpringBoot2.0中使用MQTT实现一个消息推送功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。springboot是什么springboot一种...
    99+
    2023-06-14
  • 利用Socket.io 实现消息实时推送功能
    项目背景介绍最近在写的项目中存在着社交模块,需要实现这样的一个功能:当发生了用户被点赞、评论、关注等操作时,需要由服务器向用户实时地推送一条消息。最终完成的项目地址为:https://github.com/noiron/socket-mes...
    99+
    2023-05-30
    socket.io 消息 推送
  • 如何利用Redis实现实时推送功能
    如何利用Redis实现实时推送功能,需要具体代码示例概述:实时推送功能是指当服务器端有更新时,能够实时将这些消息推送给客户端,例如在线聊天、消息通知等场景。Redis作为一款高性能的内存数据库,有着快速读写的特性,可以很好地支持实时推送功能...
    99+
    2023-11-07
    redis 功能实现 实时推送
  • 消息推送实现|使用WebSocket主动推送消息到客户端方案
    一. 前言 在开发中,我们经常会遇到这样一类需求:需要在网页上显示天气预报,股票数据或者实时排行榜单等实时变化的数据。对于此类需求,一种较为原始的做法就是让客户端每隔一段时间主动去轮询服务器。但这种做法有一个很大的弊端:如果客户端的数量很大...
    99+
    2023-09-18
    websocket 服务器 网络协议
  • 如何使用ChatGPT PHP实现个性化推荐功能
    如何使用ChatGPT PHP实现个性化推荐功能引言:在当今互联网时代,个性化推荐已经成为了各大平台普遍采用的一种策略。而使用ChatGPT PHP实现个性化推荐功能,可以帮助我们更好地满足用户需求,提升用户体验。本文将以ChatGPT P...
    99+
    2023-10-27
    实现 编程关键词: ChatGPT PHP 个性化推荐功能
  • 使用Java第三方实现发送短信功能
    目录一、介绍二、使用步骤1. 平台注册2. 短信签名和短信模板2.1 设置签名文字短信 -> 短信设置 -> 签名管理 -> 添加新的签名2.2 设置模板文字短信 ...
    99+
    2023-03-24
    Java第三方 Java发送短信 第三方发送短信
  • Android微信公众号开发消息推送功能怎么实现
    这篇文章主要讲解了“Android微信公众号开发消息推送功能怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Android微信公众号开发消息推送功能怎么实现”吧!微信公众号简介微信公众...
    99+
    2023-07-05
  • 如何使用MongoDB实现数据的推荐和个性化功能
    如何使用 MongoDB 实现数据的推荐和个性化功能概述:随着互联网的发展,推荐系统和个性化功能在用户体验和商业价值中扮演着重要的角色。MongoDB是一种灵活且易于使用的非关系型数据库,与其它传统的关系型数据库相比,在推荐和个性化功能的实...
    99+
    2023-10-22
    MongoDB推荐个性化
  • 利用spring boot+WebSocket实现后台主动消息推送功能
    目录前言:有个需求:WebSocket 主要能实现的场景:总结前言: 使用此webscoket务必确保生产环境能兼容/支持!使用此webscoket务必确保生产环境能兼容/支持!使用...
    99+
    2024-04-02
  • 如何使用Redis和Python开发实时消息推送功能
    如何使用Redis和Python开发实时消息推送功能随着实时通信的需求日益增长,开发实时消息推送功能变得越来越重要。在本文中,将介绍如何使用Redis和Python来实现这样的功能,同时提供具体的代码示例。一、什么是实时消息推送功能?实时消...
    99+
    2023-10-22
    Python redis 实时消息推送
  • 如何使用PHP实现商品推荐功能
    随着电子商务的不断发展,商品推荐功能已经成为了所有网站不可或缺的一部分。商品推荐功能可以为用户提供更加个性化的购物体验,从而提高网站用户的活跃度和转化率。而PHP作为最流行的Web开发语言之一,可以很好地实现商品推荐功能。本文将介绍如何使用...
    99+
    2023-05-25
    PHP数据分析 PHP推荐算法 商品推荐逻辑
  • 如何在MongoDB中实现数据的实时推送功能
    如何在MongoDB中实现数据的实时推送功能MongoDB是一种面向文档的NoSQL数据库,其特点是具有高可扩展性和灵活的数据模型。在一些应用场景中,我们需要实时地推送数据更新给客户端,以便及时地更新界面或做出相应的操作。本文将介绍如何在M...
    99+
    2023-10-22
    数据处理 MongoDB 实时推送
  • Java应用层协议WebSocket实现消息推送
    目录前言浏览器端服务器端前言   大部分的web开发者,开发的业务都是基于Http协议的:前端请求后端接口,携带参数,后端执行业务代码,再返回结果给前端。作者参与...
    99+
    2023-02-22
    Java WebSocket Java WebSocket消息推送
  • ChatGPT Python API使用指南:实现个性化的聊天推送
    ChatGPT Python API使用指南:实现个性化的聊天推送导言:在当今互联网时代,人们对个性化服务的需求越来越高。而ChatGPT是一种基于剪贴板模型的自然语言处理模型,非常适合用于实现个性化的聊天推送系统。本文将介绍如何使用Cha...
    99+
    2023-10-25
    ChatGPT Python API 聊天推送
  • 如何使用MongoDB实现数据的智能推荐功能
    如何使用MongoDB实现数据的智能推荐功能引言:如今,在互联网的发展下,智能推荐功能已经成为了很多应用的重要组成部分。而MongoDB作为一种非关系型数据库,其存储模型的灵活性和查询速度的快捷性,使得其成为了实现数据智能推荐功能的一个优选...
    99+
    2023-10-22
    MongoDB 数据推荐 智能功能
  • 怎么使用Java第三方实现发送短信功能
    本文小编为大家详细介绍“怎么使用Java第三方实现发送短信功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Java第三方实现发送短信功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、介绍在项目开发...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作