集成百度推送

查看百度官方文档,下载好最新的sdk解压后,按要求放到项目中来,,的jar包还要右键 add lib,然后开始往manifest里面添加权限和服务等,

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.administrator.wisdomkiosks">
    <!-- Push service 运行需要的权限 -->
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
    <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <!-- 富媒体需要声明的权限 -->
    <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/>
    <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION"/>
    <uses-permission android:name="android.permission.EXPAND_STATUS_BAR"/>

    <!-- 适配Android N系统必需的ContentProvider写权限声明,写权限包含应用包名-->
    <uses-permission android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.example.administrator.wisdomkiosks"/>
    <permission
        android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.example.administrator.wisdomkiosks"
        android:protectionLevel="signature">
    </permission>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.AppCompat.NoActionBar">

        <!-- 在百度开发者中心查询应用的API Key -->
        <meta-data
            android:name="api_key"
            android:value="3kE3q1OCNpvRepRaCnrR0A3Q"/>

        <!-- push service start -->
        <!-- 用于接收系统消息以保证PushService正常运行 -->
        <receiver
            android:name="com.baidu.android.pushservice.PushServiceReceiver"
            android:process=":bdservice_v1">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED"/>
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
                <action android:name="com.baidu.android.pushservice.action.notification.SHOW"/>
                <action android:name="com.baidu.android.pushservice.action.media.CLICK"/>
                <!-- 以下四项为可选的action声明,可大大提高service存活率和消息到达速度 -->
                <action android:name="android.intent.action.MEDIA_MOUNTED"/>
                <action android:name="android.intent.action.USER_PRESENT"/>
                <action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
                <action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/>
            </intent-filter>
        </receiver>

        <!-- Push服务接收客户端发送的各种请求-->
        <receiver
            android:name="com.baidu.android.pushservice.RegistrationReceiver"
            android:process=":bdservice_v1">
            <intent-filter>
                <action android:name="com.baidu.android.pushservice.action.METHOD"/>
                <action android:name="com.baidu.android.pushservice.action.BIND_SYNC"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_REMOVED"/>
                <data android:scheme="package"/>
            </intent-filter>
        </receiver>
        <service
            android:name="com.baidu.android.pushservice.PushService"
            android:exported="true"
            android:process=":bdservice_v1">
            <intent-filter>
                <action android:name="com.baidu.android.pushservice.action.PUSH_SERVICE"/>
            </intent-filter>
        </service>

        <!-- 4.4版本新增的CommandService声明,提升小米和魅族手机上的实际推送到达率 -->
        <service
            android:name="com.baidu.android.pushservice.CommandService"
            android:exported="true"/>

        <!-- 适配Android N系统必需的ContentProvider声明,写权限包含应用包名-->
        <provider
            android:name="com.baidu.android.pushservice.PushInfoProvider"
            android:authorities="com.example.administrator.wisdomkiosks.bdpush"
            android:exported="true"
            android:protectionLevel="signature"
            android:writePermission="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.example.administrator.wisdomkiosks"/>

        <!-- push结束 -->

        <!-- 此处Receiver名字修改为当前包名路径 -->
        <receiver android:name="com.example.administrator.wisdomkiosks.MyPushReceiver">
            <intent-filter>
                <action android:name="com.baidu.android.pushservice.action.notification.SHOW"/>
                <!-- 接收push消息 -->
                <action android:name="com.baidu.android.pushservice.action.MESSAGE"/>
                <!-- 接收bind、setTags等method的返回结果-->
                <action android:name="com.baidu.android.pushservice.action.RECEIVE"/>
                <!-- 接收通知点击事件,和通知自定义内容 -->
                <action android:name="com.baidu.android.pushservice.action.notification.CLICK"/>
            </intent-filter>
        </receiver>

        <activity android:name="com.example.administrator.wisdomkiosks.MainActivity">

            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>

    </application>

</manifest>

注意除了权限以外,其他所有的服务等都要放到application标签里面去才可以。

自己新建 MyPushReceiverjicheng继承PushMessageReceiver,并重写父类所有方法 ,用来收云推送回调信息和推送到达信息。

到此,继承基本完成,运行项目,在消息中

看到这样的信息就是成功了,可以去试试做推送了。

时间: 2024-10-20 06:36:24

集成百度推送的相关文章

iOS - 百度推送

在很多项目开发中,大家都做过推送!例如:极光推送.信鸽推送.个推等等一系列的推送.我们使用的都是集成过后的SDK,其原理都是相同的. 这里我们来做一下百度推送. 1.百度推送 1.1 百度账号的注册申请和审核 登录百度云推送:http://push.baidu.com/fc.填写相关资料.审核. 审核通过后下载SDK,创建应用(上传相应的推送证书格式看要求到出),默认创建的应用是,开发者测试的,上线后要改成生产的. 1.2 SDK的导入与配置 1)所使用的SDK很简单.(里面有个测试音频text

Android消息推送:手把手教你集成小米推送

前言 在Android开发中,消息推送功能的使用非常常见. 为了降低开发成本,使用第三方推送是现今较为流行的解决方案. 今天,我将手把手教大家如何在你的应用里集成小米推送 该文档基于小米推送官方Demo,并给出简易推送Demo 看该文档前,请先阅读我写的另外两篇文章: 史上最全解析Android消息推送解决方案 Android推送:第三方消息推送平台详细解析 目录 1. 官方Demo解析 首先,我们先对小米官方的推送Demo进行解析. 请先到官网下载官方Demo和SDK说明文档 1.1 Demo

iOS开发三步搞定百度推送

iOS开发三步搞定百度推送 百度推送很简单,准备工作:在百度云推送平台注册应用,上传证书. 步骤一: 百度云推送平台 http://push.baidu.com/sdk/push_client_sdk_for_ios  在这里下载iOS端SDK包,如下图: 把SDK包里面的下图文件夹拖到你的工程中,如下图,第一步就这么简单. 步骤二: 在工程中AppDelegate.m中的- (BOOL)application:(UIApplication *)application didFinishLaun

整合百度推送碰到的问题

今天在整合百度推送到我的.NET项目中的时候发现,百度官网上下的.NET DEMO是4.5版本的,但是WIN2003安装不了.NET 4.5的, 然后又从网上搜索到4.0版本的整合进项目中了,结果在测试的时候总是出错,但是用.NET 4.5版本的DEMO测试就不会出错, 仔细看了一下,发现是参数问题...NET 4.5里的参数是msg和msg_type,而.NET 4.0里的参数是message和message_type, 我全改为msg和msg_type就好了...然后我上去官网看文档,发现竟

Swift集成极光推送

今天介绍一下用swift集成极光推送 一.首先到极光推送的官网下载iOS对应的SDK包   SDK下载地址 二.第二步在极光的官网创建账号配置对应的应用信息,推送证书的这些就不介绍了很基本,官网的很详细 配置应用地址 三.第三创建一个工程,导入下载的SDK包,并且导入依赖的库文件,编译看有没有错误提示 四.配置工程的相关信息 五.开始代码编写,集成Jpush 六.运行工程,检测是否集成正确 七.后台测试,来到极光推送的应用后台测试 滑动消息进入前台,控制台打印通知消息 以上便是极光推送的集成步骤

百度推送证书在终端如何合成?一行代码将.p12证书合成.pem证书

在开发者中心生成推送证书,格式为:证书.cer 在mac电脑的钥匙串导出证书,格式为:证书.p12 打开终端,打开证书.p12所在目录,然后输入: openssl pkcs12 -in 证书.p12 -out 证书.pem -nodes 按下回车键(如果设置密码,请输入密码,继续按一下回车键)---->生成格式为.pem的推送证书 百度推送的开发证书和生产证书合成方法相同

iOS百度推送的基本使用

一.iOS证书指导 在 iOS App 中加入消息推送功能时,必须要在 Apple 的开发者中心网站上申请推送证书,每一个 App 需要申请两个证书,一个在开发测试环境下使用,另一个用于上线到 AppStore 后的生产环境. 7.1 为你的 App 创建 App ID iOS 中每个 App 都需要对应一个 App ID,同一个公司可能会使用类似于 com.example.* 这样通用的 App ID,但是如果要在 App 中加入消息推送功能,那么是不能使用通用 ID 的,需要为之单独创建一个

百度推送代码备份

首先查看百度推送开发者文档,这里主要是用Java实现. http://push.biadu.com Java项目jar 引用,这里使用maven管理jar 包. HomePage : https://github.com/featherfly/sorm.git <dependency> <groupId>cn.featherfly</groupId> <artifactId>bccs-api</artifactId> <version>

李洪强iOS之集成极光推送一iOS SDK概述

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; color: #000000 } span.s1 { } span.s2 { font: 18.0px Menlo } 李洪强iOS之集成极光推送一iOS SDK概述 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #000000 } span.s1 { } JPus