`
hunankeda110
  • 浏览: 746553 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

android中的push机制实现:android push notification serfice

阅读更多

APNS 是什么?

APNS (Android Push Notification Service) 是一种在 android 上轻松实现 push notification 的功能的解决方案. 只需申请一个 API Key, 经过简单的步骤即可实现 push notification 的功能.

特点:

  • 快速集成:提供一种比C2DM更加快捷的使用方式,避免各种限制.
  • 无需架设服务器:通过使用"云服务",减少额外服务器负担.
  • 可以同时推送消息到网站页面,android 手机
  • 耗电少,占用流量少.
  •  

    http://zen-mobi.com/get_api_key.php获取apikey

    如何在 Android 应用中使用 Notification ?

    a) 在应用中添加 APNS 功能

    1. 下载 libaray: com_apns.jar
    2. 将com_apns.jar添加到工程
    3. 在工程上右键打开“属性”,选择 “Java Build Path”, 在 Libraries 中选择 “Add External JARs”, 选择下载的 com_apns.jar.

    4. 接收 push notification
    5. 使用BroadcastReceiver接收系统广播:
      
      public class MyBroadcastReceiver extends BroadcastReceiver {
      	@Override
      	public void onReceive(Context context, Intent intent) {
      	     if (intent.getAction().equals(APNService.ON_NOTIFICATION)) {
      			String str = intent.getStringExtra("data");
      			//todo, 处理收到的消息
      		 } 
      	}
      }
      
    6. 启动 Push Notification Service
    7. 发送Intent 启动服务,将 chanel Id 以及 此设备的标识 (chanel中唯一表示此设备的字符串) 传递过去:
       
          Intent intent = new Intent(APNService.START);
          intent.putExtra("ch", chanel);
          intent.putExtra("devId", devId);
          startService(intent);
      
      Notes Chanel Id 在申请 API 后,登录开发者页面会看到. devId: chanel 内设备标识,要在chanel内保持唯一.
    8. 配置 AndroidManifest.xml
    9. ...
      <application android:icon="@drawable/icon" 
      	   ... 
      	 <service android:name="com.apns.APNSService" android:label="APNS">
               <intent-filter>
                   <action android:name="com.apns.APNService.START" />
                   <action android:name="com.apns.APNService.STOP" />
                   <category android:name="android.intent.category.DEFAULT"/>
               </intent-filter>
      	 </service>
      	 <receiver android:name="MyBroadcastReceiver">
      	      <intent-filter>
      	          <action android:name="com.apnsd.APNService.NOTIFICATION" />
      	      </intent-filter>
      	 </receiver>	
      </application>	
      <uses-permission android:name="android.permission.INTERNET" />
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
      ...
      


    b) 发送 Notification 到设备

    通过 rest 接口发送 Notification:
    http://www.push-notification.org/handlers/apns_v1.php?ch=YourChannelId&devId=xxxxx&msg =hello world&random=0123&hash=HashCode

    ch:Channel Id
    devId:接收设备 Id
    msg:消息
    random:随机数
    hash:md5(ch + devId + msg + random + apiKey)
    
    Notes 申请API后,可登录开发者页面使用测试控制台进行API测试.
    0
    0
    分享到:
    评论

    相关推荐

      使用android push notification service 实现即时通知

      通过以上步骤,你可以在Android应用中实现类似APNs的推送通知功能,让应用可以及时向用户发送重要信息。记住,有效的通知策略可以提升用户参与度,但过度的通知可能会导致用户反感,因此在设计通知时需要平衡好信息...

      Android Push Notification实现信息推送完整包

      本文将详细介绍如何实现Android Push Notification,包括服务器端(Server)和客户端(Client)的设置以及操作配置流程。 1. 服务器端(Server)实现 服务器端负责发送推送通知到Google的云消息服务(GCM,现在...

      android push notification 下载即可运行

      在Android平台上,推送通知(Push ...通过下载提供的项目,开发者可以快速了解和实践Android推送通知的整个流程,从而在自己的应用中实现这一功能。同时,这也为深入学习FCM的工作原理和优化推送策略提供了基础。

      Android push notification方案比较

      【Android Push Notification 方案比较】 在开发Android应用时,向用户实时推送通知是必不可少的功能,Android提供了多种推送通知方案,包括C2DM(Cloud to Device Messaging)、MQTT(Message Queuing Telemetry ...

      Android push notification 服务端源代码

      AndroidPN(Android Push Notification)是一个开源项目,专注于提供服务端的解决方案,帮助开发者实现推送通知功能。这个压缩包包含的是AndroidPN服务端的源代码,而非编译后的二进制文件,因此可以让你深入理解其...

      Android-Push-Notification:基于 AndroidPN 的 Android 推送通知

      Android Push Notification 介绍 基于AndroidPN 项目实现的的消息推送 特点 客户端服务器交互初始化 用户登录认证 客户端发起在线心跳通知 发送消息时若用户在线则直接发送,否则保存到数据库 服务器从数据库中获取...

      android Push功能(Channel)

      1. **GCM (Google Cloud Messaging)**:早期Android系统中,Google提供了GCM服务,用于实现应用的后台消息推送。但自2018年起,GCM已被FCM(Firebase Cloud Messaging)取代。 2. **FCM (Firebase Cloud Messaging)...

      android-push-notification:[Android] 推送通知

      在Android平台上,推送通知是应用与...Java编程语言在Android应用开发中扮演着核心角色,用于实现与FCM的接口交互,处理消息接收和显示。通过理解这些概念和步骤,开发者可以构建出高效且用户体验良好的推送通知系统。

      android push notification service Demo

      本篇文章将详细解析“Android Push Notification Service Demo”,帮助开发者了解如何在Android平台上实现推送通知。 首先,我们需要明白APNS(Apache Push Notification Service)并不是Android系统的官方服务,而是...

      Laravel开发-laravel-push-notification Push Notification 服务端支持

      至此,你已经成功地在 Laravel 项目中实现了 Push Notification 的服务端支持,可以向 iOS 和 Android 设备发送自定义通知了。别忘了在实际应用中处理错误,如设备 Token 或 Registration ID 无效、推送服务响应错误...

      Android Push Notification

      An open source project to provide push notification support for Android -- a xmpp based notification server and a client tool kit.

      Android Push Notification客户端源码包

      Android Push Notification客户端源码包是针对这一需求而设计的,主要利用XMPP(Extensible Messaging and Presence Protocol)协议实现消息推送。XMPP是一种开放标准的即时通讯协议,它被广泛应用于各种实时通信...

      android push notification XPMM源码

      Android Push Notification XPMM源码详解 在Android应用开发中,推送通知是一项至关重要的功能,它能让用户即使在不打开应用的情况下也能接收到重要的信息。XPMM(可能代表eXtended Push Message Management)是一...

      Android-Push-Notifications-master_androidnotification_

      本项目“Android-Push-Notifications-master”专注于教授如何在Android应用中实现推送通知功能,特别关注“androidnotification”这一核心主题。下面将详细介绍这个项目涉及的关键知识点。 1. **GCM (Google Cloud ...

      Parse中的Push Notification在Android中的应用

      在Android开发中,Push Notification是一种常见且重要的功能,它允许应用程序在后台向用户发送消息,即使应用程序未运行也能提醒用户有新的活动或信息。Parse是一个流行的云服务,它提供了包括推送通知在内的多种...

      Android实现Notification的通知栏常驻.zip

      本教程将详细介绍如何在Android中实现一个常驻通知栏的Notification,以确保即使在用户关闭应用后,该通知仍然可见。 一、Notification的基本结构 1. **Notification channels**: 从Android O(8.0)开始,每个...

      Android代码-react-native-push-notification

      npm install --save react-native-push-notification react-native link NOTE: For Android, you will still have to manually update the AndroidManifest.xml (as below) in order to use Scheduled Notifications...

      react-native-push-notification:React本机本地和远程通知

      = 0.271.0.8 0.282.0.1 0.292.0.2 0.30、0.31、0.32&gt; = 2.1.0 &gt; = 0.33变更日志可从以下版本3.1.3获得 : 安装NPM npm install --save react-native-push-notification 纱yarn add react-native-push-notification ...

      Apndroid Push Notification实现安卓推送

      在提供的`AndroidPush-client`项目中,我们可以看到客户端实现推送通知的具体代码。通过阅读源码,可以理解每个类和方法的作用,例如`FirebaseMessagingService`的实现,`BroadcastReceiver`如何监听点击事件,以及...

    Global site tag (gtag.js) - Google Analytics