一步步教你接入个推 推送

2024-09-07 08:48
文章标签 推送 一步步 接入

本文主要是介绍一步步教你接入个推 推送,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一: manifast中的配置
权限: <!-- 个推SDK权限配置开始 -->
<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.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<!-- ibeancon 需要蓝牙权限 -->
<uses-permission android:name="android.permission.BLUETOOTH"/>  
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<!-- 支持个推3.0 电子围栏功能 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- 浮动通知权限 -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<!-- 自定义权限 -->  
<uses-permission android:name="getui.permission.GetuiService. com.example.youzhen" />      
<permission
android:name="getui.permission.GetuiService. com.example.youzhen"
android:protectionLevel="normal" >
</permission>
<!-- 个推SDK权限配置结束 -->
其他的一些:
 <!--个推SDK配置开始-->
  <!--个推SDK配置开始  -->
  <!--个推SDK配置开始  -->
 
     <!-- 配置的第三方参数属性 -->
     
     <meta-data
         android:name="PUSH_APPID"
android:value=" 5e3lxxXV1n7PTbhIWu8ur8" /><!--替换为应用的APPID-->
     <meta-data
         android:name="PUSH_APPKEY"
android:value=" 8VeNiV0zeA7i4Ghso9HkY3" /><!--替换为应用的APPKEY-->
     <meta-data
         android:name="PUSH_APPSECRET"
android:value=" Arsg5Cerei6nIpHNKjQQl7" /><!--替换为应用的APPSECRET-->
     <!-- 配置第三方Receiver 用来接收ClientId和透传消息 -->
        <!-- 配置第三方Receiver 用来接收ClientId和透传消息5e3lxxXV1n7PTbhIWu8ur8换成 个推的APPID -->
     <receiver
android:name=" com.getui.tools.PushDemoReceiver"    
             
         android:exported="false" >
         <intent-filter>
<action android:name="com.igexin.sdk.action. 5e3lxxXV1n7PTbhIWu8ur8" />
         </intent-filter>
     </receiver>
     
     <!-- 配置SDK核心服务 -->
     <service
         android:name="com.igexin.sdk.PushService"
         android:exported="true"
         android:label="NotificationCenter"
         android:process=":pushservice" >
     </service>
     
     <!-- SDK 2.6.1.0版本新增配置项 -->
     <service
         android:name="com.igexin.sdk.PushServiceUser"
         android:exported="true"
         android:label="NotificationCenterUser" >
     </service>
     <receiver android:name="com.igexin.sdk.PushReceiver" >
         <intent-filter>
             <action android:name="android.intent.action.BOOT_COMPLETED" />
             <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
             <action android:name="android.intent.action.USER_PRESENT" />
             <action android:name="com.igexin.sdk.action.refreshls" />
             <!-- 以下三项为可选的action声明,可大大提高service存活率和消息到达速度 -->
             <action android:name="android.intent.action.MEDIA_MOUNTED" />
             <action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
             <action android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
         </intent-filter>
      </receiver>
     
      <receiver
         android:name="com.igexin.sdk.PushManagerReceiver"
         android:exported="false" >
         <intent-filter>
             <action android:name="com.igexin.sdk.action.pushmanager" />
         </intent-filter>
      </receiver>
     
      <activity
         android:name="com.igexin.sdk.PushActivity"
         android:excludeFromRecents="true"
         android:exported="false"
         android:process=":pushservice"
         android:taskAffinity="com.igexin.sdk.PushActivityTask"
         android:theme="@android:style/Theme.Translucent.NoTitleBar" >
       </activity>
       
      <service
        android:name="com.igexin.download.DownloadService"
        android:process=":pushservice" />
     
      <receiver android:name="com.igexin.download.DownloadReceiver" >
         <intent-filter>
             <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
         </intent-filter>
      </receiver>
      <!-- 自己的包名 -->
      <provider
         android:name="com.igexin.download.DownloadProvider"
         android:exported="true"
android:authorities="downloads. com.example.youzhen"  
         android:process=":pushservice" />
     
      <activity  
         android:name="com.igexin.getuiext.activity.GetuiExtActivity"  
         android:configChanges="orientation|keyboard|keyboardHidden"  
         android:excludeFromRecents="true"  
         android:exported="false"  
         android:process=":pushservice"  
         android:taskAffinity="android.task.myServicetask"  
         android:theme="@android:style/Theme.Translucent.NoTitleBar" />
     
      <receiver
         android:name="com.igexin.getuiext.service.PayloadReceiver"
         android:exported="false" >
         <intent-filter>
             <action android:name="com.igexin.sdk.action.7fjUl2Z3LH6xYy7NQK4ni4" />
             <action android:name="com.igexin.sdk.action.u1bvYz0P1l5TcWgd8hMxY8" />
         </intent-filter>
      </receiver>
     
      <service
         android:name="com.igexin.getuiext.service.GetuiExtService"
         android:process=":pushservice" />
     <!-- 个推SDK配置结束 -->
     <!-- 个推SDK配置结束 -->
     <!-- 个推SDK配置结束 -->
二: 首个启动的activity中初始化
    //在应用程序初始化阶段,初始化SDK
      PushManager.getInstance().initialize(this);
三: PushDemoReceiver文件添加到工程中

    
其实很简单在AndroidManifest.xml中将MainActivity定义为: 
 android:launchMode="singleTask" 即可: 
<activity android:name="com.withiter.quhao.activity.MainTabActivity" android:launchMode="singleTask" android:label="@string/app_name" android:screenOrientation="portrait">

这样每次打开推送,就不会出现2个activity的情况了(http://www.tuicool.com/articles/zuaY7n

https://code.csdn.net/snippets/1800642#nogo

这篇关于一步步教你接入个推 推送的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Android 友盟消息推送集成遇到的问题

友盟消息推送遇到的问题 集成友盟消息推送,步骤根据提供的技术文档接入便可。可是当你集成到项目中去的时候,可能并不是一帆风顺就搞定,因为你项目里面是可能集成了其他的sdk(比如支付宝,微信,七鱼等等三方的sdk)。那么这个时候,再加上友盟的消息推送sdk集成可能就会出现问题。 问题清单 友盟消息推送sdk和支付宝sdk冲突问题 后台配置了消息推送,也显示发送成功,但是手机没有收到消息通知

Redis应用之Feed流关注推送

我的博客大纲 我的后端学习大纲 -------------------------------------------------------------------------------------------------------------------------------------------------# 3.好友关注: 3.1.关注和取关: a.接口说明:

Java应用对接pinpoint监控工具的时候,应用名称长度超出限制而导致接入失败

一、背景 java应用需要接入pinpoint,同一个虚拟机上的其他应用接入成功,唯独本应用不行。 首先排除是pinpoint agent的问题,因为其他应用都正常。 然后,我就对比二者的启动脚本。 -javaagent:/opt/pinpoint/pinpoint-bootstrap.jar -Dpinpoint.agentId=DA301004_17 -Dpinpoint.applic

GIT-macOS配置推送代码到GitHub

文章目录 前言1. **设置 HTTP/HTTPS**临时设置(仅对当前会话有效)永久设置(写入配置文件) 2. **设置 SOCKS **3. **取消设置**4. **验证配置**5. **测试推送** 总结 前言 macOS配置推送代码到GitHub 1. 设置 HTTP/HTTPS 临时设置(仅对当前会话有效) git config --global ht

Linux平台下利用JNI+双向RMI实现远程推送

一、 前言  作为一种优秀的编程语言,Java在许多方面具有突出的优越性。其中,RMI技术充分展现了Java卓越的分布式计算能力,而JNI技术则体现了Java结合异种编程语言的强大能力。人们常说,RMI是“从Java到Java”,这种说法忽视了这样一个事实:Java可利用JNI技术很容易地与原有系统连接。JNI+RMI的技术解决方案极大地延伸了Java的分布式功能。  本文的写作是基于这样一种实

一步步教你如何为你的app接入支付宝

官方接口文档步骤链接: https://doc.open.alipay.com/doc2/detail?treeId=59&articleId=103563&docType=1 1首先,你的要有一个企业的账户,并且已经和支付宝平台签约了, (具体操作查看https://doc.open.alipay.com/doc2/detail.htm?treeId=58&articleId=1035

兼容Trino Connector,扩展Apache Doris数据源接入能力|Lakehouse 使用手册(四)

Apache Doris 内置支持包括 Hive、Iceberg、Hudi、Paimon、LakeSoul、JDBC 在内的多种 Catalog,并为其提供原生高性能且稳定的访问能力,以满足与数据湖的集成需求。而随着 Apache Doris 用户的增加,新的数据源连接需求也随之增加。因此,从 3.0 版本开始,Apache Doris 引入了 Trino Connector 兼容框架。 Tri

【gitlab 上传代码】gitlab 推送本地代码到远程仓库

1、安装git。 2、新建项目,只勾选私有,或者公开,注意不要勾选readme 3、添加和配置SSH公钥 cd ~/.ssh如果提示 “ No such file or directory”,手动的创建一个 .ssh文件夹即可mkdir ~/.sshgit config --global user.name "赖德发"git config --global user.email "lai

强化网络安全:通过802.1X协议保障远程接入设备安全认证

随着远程办公和移动设备的普及,企业网络面临着前所未有的安全挑战。为了确保网络的安全性,同时提供无缝的用户体验,我们的 ASP 身份认证平台引入了先进的 802.1X 认证协议,确保只有经过认证的设备才能接入您的网络。本文档将详细介绍我们的平台如何通过 802.1X 协议实现高效、安全的远程接入认证。 产品亮点 1. 无缝集成 我们的 ASP 身份认证平台支持无缝集成到现有的网络基础设施中