BroadcastReceiver与Notification的综合应用之自定义Action的调用方式_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > BroadcastReceiver与Notification的综合应用之自定义Action的调用方式

BroadcastReceiver与Notification的综合应用之自定义Action的调用方式

 2013/7/18 18:58:06  zretc  程序员俱乐部  我要评论(0)
  • 摘要:在Android的实际应用开发中,我们经常会遇到数据推送的相关技术,比如在应用软件启动后,系统会自动在Android的通知栏弹出相应的信息,以便于提示用户进行相关的操作或消息推送。那这项技术在Android中式如何实现的呢?我们通过这篇文章简单介绍一下该技术的实现方法,希望大家能够了解并掌握这项核心的技术。首先,若想实现这个技术要涉及以下三个核心的知识点:1.自定义Action的调用方式2.BroadcastReceiver的基本应用3
  • 标签:not 应用 方式 自定义

?

class="MsoNormal">Android实际应用开发中,我们经常会遇到数据推送的相关技术,比如在应用软件启动后,系统会自动在Android的通知栏弹出相应的信息,以便于提示用户进行相关的操作或消息推送。那这项技术在Android中式如何实现的呢?我们通过这篇文章简单介绍一下该技术的实现方法,希望大家能够了解并掌握这项核心的技术。

?

?? 首先,若想实现这个技术要涉及以下三个核心的知识点:

?

1.?? 自定义Action的调用方式

?

2.?? BroadcastReceiver的基本应用

?

3.?? Notification通知机制的使用

?

本文仅对知识点1做一个讲解和阐述,后续知识点在后续文章中进行讲解。

?

那么,我们就逐一对这些技术进行一个简单的说明,希望大家能够快速掌握这项技术。

?

项目实现效果图:

知识点1:自定义Action的调用方式

?

??? Intent作为Android系统中各组件之间的纽带起着至关重要的作用,在我们的平时应用中Intent对象主要完成两件事情,一件是多个Activity(界面)之间的跳转,另一个件是使用putExtras()方法完成界面件数据的传递。其实在我们的AndroidIntent的作用不止这些,他有着强大的功能,很多组件的启动全部依赖于该对象,比如说Service服务组件、Receiver接收器、ContentProvier内容提供者等,他们都是用过Intent对象来启动的,当然启动的方法绝对不仅仅是startActivity(intent)这么简单了。对于不同的组件对象,其有着不同的启动方法。下面我给大家简单介绍一个使用自定义Action动作来完成的窗体Activity组件启动,通过这个案例抛砖引玉,主要让大家掌握基本的使用方法,今后可以举一反三,以此类推。

?

??? 首先说一下Action动作,在Android中我们的每个窗体组件对象都必须在AndroidManifest.xml文件中进行注册声明,而首启动的界面在声明中有一个<intent-filter>的标签,在该标签下有一个<action android:name=”xxxx”>的标签和一个<category android:name=”xxx”>的标签,如下图所示。

?

?

我们应该对这两个标签有一定的认知和了解。

?

代码分析:

??? <action>标签的作用是指明该组件的核心动作类型,其android:name属性表示的是Android系统内置的标准动作,比如说 android.intent.action.MAIN 它告诉虚拟机该界面为应用程序的入口界面,为首启动标准动作。但让这个值也可以我们自己定义一个,好比给该组件起一个别名,从而也就形成了我们的自定义Action动作。

??? <category>标签的作用是指明该组件的类型,其 android:name属性表示的是Android系统内置的标准类型模式,比如说 android.intent.category.LAUNCHER 它告诉戴尔维克虚拟机该组件为启动类型组件。

?

??? 那我们如何自己定义一个Action动作来完成组件的启动和调用呢?

?

??? 环节1:创建一个Activity窗体界面

?

??? 步骤1-1:在Android项目的res文件夹的layout文件夹中创建一个布局文件,布局里面只需放置一个TextView组件即可。具体代码如下:

?

??? activity_second.xml

?

?

??? 步骤1-2:在Android项目的src文件夹下创建一个SecondActivity的窗体类文件,具体代码如下:

?

?

??? 环节二:在AndroidManifest.xml文件中注册并声明该窗体组件对象

?

??? 步骤2-1:在AndroidManifest.xml文件中注意对Activity的声明,具体代码如下:

?

?

特别注意的是我们要在注册的时候要自定义一个Action的名称,命名规范为 项目.包名称.组件名称 的基本格式。本例将Action定义为 myproject14.activity.second

?

环节三:在MainActivity的按钮单击事件中编写代码实现自定义Atiion的调用。

?

步骤3-1:在MainActivity的按钮单击事件处理中编写代码如下所示:

?

?

使用setAction(Action_Name)方法完成对启动组件名称的设置,ACTION_NAME为程序的全局性字符串常量,在先前有过声明,如下所示:

?

?

该字符串的值应该与AndroidManifest.xml文件中Action标签的名称保持一致。

?

本文章首先对自定义Action做一个简单的简介,希望大家关注我的后续内容。

?

发表评论
用户名: 匿名