Android集成新版极光推送服务(4.0.6版)

2024-04-14 16:18

本文主要是介绍Android集成新版极光推送服务(4.0.6版),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Android集成新版极光推送服务(4.0.6版)

  • 关于
    • 使用第一步
    • 修改androidmanifest.xml配置文件
    • 初始化

关于

  虽然极光推送官方文档和对应的demo里面都有介绍使用,但是还是感觉云里雾里,可能会有人和我一样要花个大半天时间才能集成好,这也是本篇要记录的原因,以备后面其余项目使用。

使用第一步

  首先去官网新建一个应用,获取对应的一个appkey。然后点击消息推送进行集成:
在这里插入图片描述
  输入我们要集成的项目的包名(build里面的applicationId),下面的其他推送渠道我没去勾选,有需要的童鞋可以去配置。
在这里插入图片描述
  然后我们选择下载SDK,里面会有我们需要的配置的jar包和.so库文件:
在这里插入图片描述
  复制到我们的项目中:
在这里插入图片描述

  并且将上面两个jar包添加到libray中,添加ndk到build中:

 defaultConfig {applicationId "com.tobey.newstest"   manifestPlaceholders = [JPUSH_PKGNAME: applicationId,JPUSH_APPKEY : "d292495db1604dd08bbexxxx", //JPush 上注册的包名对应的 Appkey.JPUSH_CHANNEL: "developer-default", //暂时填写默认值即可.]ndk {//cpu类型对应的.so库。abiFilters 'arm64', 'armeabi-v7a'}}

修改androidmanifest.xml配置文件

  添加权限:

  <permission android:name="${applicationId}.permission.JPUSH_MESSAGE"android:protectionLevel="signature"/><uses-permission android:name="${applicationId}.permission.JPUSH_MESSAGE" /><uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" /><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

  在application内部添加如下:

<serviceandroid:name="cn.jpush.android.service.PushService"android:enabled="true"android:exported="false"android:process=":pushcore"><intent-filter><action android:name="cn.jpush.android.intent.REGISTER" /><action android:name="cn.jpush.android.intent.REPORT" /><action android:name="cn.jpush.android.intent.PushService" /><action android:name="cn.jpush.android.intent.PUSH_TIME" /></intent-filter></service><serviceandroid:name="cn.jpush.android.service.DaemonService"android:enabled="true"android:exported="true"><intent-filter ><action android:name="cn.jpush.android.intent.DaemonService" /><category android:name="${applicationId}"/></intent-filter></service><service android:name=".jiguanPush.PushService"android:enabled="true"android:exported="false"android:process=":pushcore"><intent-filter><action android:name="cn.jiguang.user.service.action" /></intent-filter></service><receiverandroid:name="cn.jpush.android.service.PushReceiver"android:enabled="true" ><intent-filter android:priority="1000"><action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY" /><category android:name="${applicationId}"/></intent-filter><intent-filter><action android:name="android.intent.action.USER_PRESENT" /><action android:name="android.net.conn.CONNECTIVITY_CHANGE" /></intent-filter><!-- Optional --><intent-filter><action android:name="android.intent.action.PACKAGE_ADDED" /><action android:name="android.intent.action.PACKAGE_REMOVED" /><data android:scheme="package" /></intent-filter></receiver><!-- since 3.3.0 Required SDK核心功能 --><activityandroid:name="cn.jpush.android.service.JNotifyActivity"android:exported="true"android:taskAffinity="jpush.custom"android:theme="@android:style/Theme.Translucent.NoTitleBar" ><intent-filter><action android:name="cn.jpush.android.intent.JNotifyActivity" /><category android:name="${applicationId}" /></intent-filter></activity><!-- 3.3.0开始所有事件将通过该类回调 --><!-- 该广播需要继承 JPush 提供的 JPushMessageReceiver 类, 并如下新增一个 Intent-Filter --><receiverandroid:name=".jiguanPush.PushMessageReceiver"android:enabled="true"android:exported="false" ><intent-filter><action android:name="cn.jpush.android.intent.RECEIVE_MESSAGE" /><category android:name="${applicationId}" /></intent-filter></receiver><receiver android:name="cn.jpush.android.service.AlarmReceiver" /><meta-dataandroid:name="JPUSH_CHANNEL"android:value="developer-default" /><!-- 添加appkey--><meta-dataandroid:name="JPUSH_APPKEY"android:value="d292495db1604dd08bxxxx" /><!-- since 3.0.9 Required SDK 核心功能--><providerandroid:authorities="${applicationId}.DataProvider"android:name="cn.jpush.android.service.DataProvider"android:exported="false"android:process=":pushcore"/>

初始化

public class App extends Application {@Overridepublic void onCreate() {super.onCreate();JPushInterface.setDebugMode(true);JPushInterface.init(this);}
}

  然后在对应权限都获取了以后,在极光推送平台上发送一条推送:
在这里插入图片描述

  然后在手机上收到通知:
在这里插入图片描述
  如果提示没有没有满足条件的推送目标或推送目标超过 255 天不活跃,被排除在推送目标之外,说明没配置好,严格检查build文件、用户权限、包名、appkey、配置文件是否配置好。
  到此本篇结束,有问题欢迎批评指正!

这篇关于Android集成新版极光推送服务(4.0.6版)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/903449

相关文章

Android中Dialog的使用详解

《Android中Dialog的使用详解》Dialog(对话框)是Android中常用的UI组件,用于临时显示重要信息或获取用户输入,本文给大家介绍Android中Dialog的使用,感兴趣的朋友一起... 目录android中Dialog的使用详解1. 基本Dialog类型1.1 AlertDialog(

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

Android自定义Scrollbar的两种实现方式

《Android自定义Scrollbar的两种实现方式》本文介绍两种实现自定义滚动条的方法,分别通过ItemDecoration方案和独立View方案实现滚动条定制化,文章通过代码示例讲解的非常详细,... 目录方案一:ItemDecoration实现(推荐用于RecyclerView)实现原理完整代码实现

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

Spring Boot 集成 Quartz 使用Cron 表达式实现定时任务

《SpringBoot集成Quartz使用Cron表达式实现定时任务》本文介绍了如何在SpringBoot项目中集成Quartz并使用Cron表达式进行任务调度,通过添加Quartz依赖、创... 目录前言1. 添加 Quartz 依赖2. 创建 Quartz 任务3. 配置 Quartz 任务调度4. 启

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D