`
zretc
  • 浏览: 19996 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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

    博客分类:
  • Java
阅读更多

 

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做一个简单的简介,希望大家关注我的后续内容。

 

分享到:
评论

相关推荐

    Android \BroadCastReceiver 简介

    总之,`BroadcastReceiver` 在 Android 应用开发中扮演着重要角色,它是系统与应用之间通信的桥梁,使得应用可以对各种系统事件和自定义事件做出及时的响应。正确理解和使用 `BroadcastReceiver`,能够极大地增强...

    android broadcastReceiver 代码示例

    在Android系统中,BroadcastReceiver(广播接收者)是四大组件之一,它负责监听系统或应用程序发布的广播事件,并在接收到广播时执行相应的处理。BroadcastReceiver的使用是Android开发中的重要一环,尤其对于系统...

    自定义通知栏notification,类似酷我音乐在后台运行时,带有按钮的通知栏

    在Android开发中,自定义通知栏Notification是一种常见且重要的功能,尤其对于音乐播放类应用,如酷我音乐,用户在后台使用时希望能在通知栏直接控制播放状态。本项目提供的就是一个实现了类似酷我音乐功能的自定义...

    notification各种使用

    在Android开发中,Notification是一种非常重要的组件,它用于在用户界面上显示系统级的消息,即使应用在后台运行或用户没有直接与应用交互时也能提供反馈。"notification各种使用"这个主题涵盖了很多关于如何灵活地...

    android_broadcastreceiver.rar

    在Android系统中,BroadcastReceiver(广播接收者)是四大组件之一,它负责监听并响应系统或应用程序发布的广播意图(Intent)。BroadcastReceiver可以帮助我们的应用在不运行时也能接收到消息,从而实现后台运行的...

    Notification实现的多媒体播放控制

    在Android系统中,Notification是一种非常重要的机制,它用于在状态栏显示消息,向用户传达应用在后台运行的状态或提醒。在多媒体应用中,通常会使用Notification来实现远程控制播放功能,即使应用在后台或者被最小...

    初中级Android开发社招面试之Service及BroadcastReceiver.zip

    在Android应用开发中,Service和BroadcastReceiver是两个非常重要的组件,它们构成了应用程序后台运行和系统消息传递的基础。本文将深入探讨这两个组件的概念、用途、工作原理以及面试中可能遇到的相关问题。 **一...

    BroadcastReceiver.rar

    本文将深入探讨如何使用Delphi这一高级编程语言,在Android平台上创建BroadcastReceiver来监听并处理屏幕点亮事件,并以此为基础,讲解BroadcastReceiver的工作原理、注册方式以及自定义广播的实现。 首先,...

    BroadcastReceiver使用demo(Eclipse)

    理解BroadcastReceiver的工作原理和使用方式对于开发Android应用至关重要,因为它是系统和应用间通信的重要途径之一。通过这个例子,开发者可以进一步掌握Android的事件驱动编程模式和组件间的协作机制。

    Android入门开发实例--Toast、Notification、Intent应用

    在Android应用开发中,`Toast`、`Notification`和`Intent`是三个核心组件,它们在应用程序中扮演着至关重要的角色。本篇文章将深入探讨这三个概念,并通过实例讲解如何在实际开发中运用它们。 首先,我们来理解`...

    jpush自定义接收器

    通过创建和配置自定义接收器,开发者可以更自由地控制消息的展示和处理方式,从而提升用户体验和应用功能的多样性。记得解压文件后将其正确地整合到项目中,并进行必要的调试以确保功能正常运行。

    Parse中的Push Notification在Android中的应用

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

    自定义锁屏

    #### 四、综合运用与注意事项 1. **权限管理**:除了上面提到的 `DISABLE_KEYGUARD` 权限之外,可能还需要其他相关权限才能顺利实现自定义锁屏功能。例如,对于某些特定操作,可能还需要 `ACCESS_NOTIFICATION_...

    BroadCastAndNotificationDemo

    `BroadcastReceiver`允许应用监听并响应系统或自定义广播事件,而`Notification`则是应用与用户交互的一种关键方式,常用于提示用户有新的消息或事件发生。在Android 8.0(API级别26)及以上版本,`Notification`...

    第7章AndroidBroadcastReceiver组件.pptx

    综上所述,BroadcastReceiver在Android应用开发中扮演着重要角色,它使得应用能够响应各种系统事件或自定义事件,从而增强了系统的交互性和灵活性。通过理解并熟练运用BroadcastReceiver及其相关概念,开发者可以...

    Android高级应用源码-创建桌面快捷方式源代码.zip

    在Android开发中,创建桌面快捷方式是常见的功能之一,它允许用户快速启动应用程序的特定功能或者自定义操作。本资源“Android高级应用源码-创建桌面快捷方式源代码.zip”提供了一个实例,帮助开发者理解如何在...

    实现Notification的通知栏常驻_消息推送通知.zip

    在Android系统中,Notification是应用与用户交互的重要方式之一,特别是在后台运行时。"实现Notification的通知栏常驻"意味着我们要创建一种通知,即使用户离开应用或关闭屏幕,它也能持续显示在通知栏中,以便用户...

    Android 监听Notification 被清除实例代码

    在Android开发中,Notification是应用与用户交互的重要方式,它可以在状态栏显示提醒信息,即使应用不在前台运行也能吸引用户的注意力。然而,用户有时会清除这些通知,这可能导致某些业务逻辑需要更新或重新触发。...

Global site tag (gtag.js) - Google Analytics