全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android 使用AlarmManager和NotificationManager来实现闹钟和通知栏

实现闹钟运行的效果如下:

 

通知栏的运行后效果图如下:

布局文件(activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main"
  android:layout_width="match_parent" android:layout_height="match_parent"
  android:paddingBottom="@dimen/activity_vertical_margin"
  android:paddingLeft="@dimen/activity_horizontal_margin"
  android:paddingRight="@dimen/activity_horizontal_margin"
  android:paddingTop="@dimen/activity_vertical_margin"
  android:orientation="vertical"
  tools:context="com.example.g150825_android28.MainActivity">
  <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="设置闹钟(一次)"
    android:onClick="setAlarmOne"
    />
  <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="设置闹钟(周期)"
    android:onClick="setAlarm"
    />
  <Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="取消周期闹钟"
    android:onClick="cancelAlarm"
    />
  <Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="发送通知"
    android:onClick="send"
    />
</LinearLayout>

activity_ring.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/activity_ring"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:paddingBottom="@dimen/activity_vertical_margin"
  android:paddingLeft="@dimen/activity_horizontal_margin"
  android:paddingRight="@dimen/activity_horizontal_margin"
  android:paddingTop="@dimen/activity_vertical_margin"
  tools:context="com.example.g150825_android28.RingActivity">
  <Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="停止"
    android:onClick="stop"
    android:id="@+id/button"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />
  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="慈禧太后青霜来了,赶紧起床!"
    android:id="@+id/textView"
    android:textSize="30sp"
    android:layout_below="@+id/button"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="36dp" />
</RelativeLayout>

RingActivity

package com.example.g150825_android28;
import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
public class RingActivity extends AppCompatActivity {
  private MediaPlayer mediaPlayer;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_ring);
    mediaPlayer = MediaPlayer.create(this, R.raw.sqbm);
    mediaPlayer.start();
  }
  public void stop(View view){
    mediaPlayer.stop();
    finish();
  }
}

MyReceiver

package com.example.g150825_android28;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class MyReceiver extends BroadcastReceiver {
  public MyReceiver() {
  }
  @Override
  public void onReceive(Context context, Intent intent) {
    if("com.example.g150825_android28.RING".equals(intent.getAction())){
      Toast.makeText(context, "闹钟响了", Toast.LENGTH_SHORT).show();
      //跳转到Activity
      Intent intent1=new Intent(context,RingActivity.class);
      //设置标志位(Flag)
      intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
      context.startActivity(intent1);
    }
  }
}

清单文件(AndroidManifest.xml)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.example.g150825_android28">
  <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
    <receiver
      android:name=".MyReceiver"
      android:enabled="true"
      android:exported="true">
      <intent-filter>
        <action android:name="com.example.g150825_android28.RING" />
      </intent-filter>
    </receiver>
    <activity android:name=".RingActivity"
      android:theme="@style/Theme.AppCompat.Dialog"
      ></activity>
  </application>
</manifest>

以上所述是小编给大家介绍的Android 使用AlarmManager和NotificationManager来实现闹钟和通知栏,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# alarmmanager闹钟  # notificationmanager通知栏  # Android通过AlarmManager类实现简单闹钟功能  # Android编程使用AlarmManager设置闹钟的方法  # Android手机闹钟服务AlarmManagerk开发案例  # 简单实现Android闹钟程序 附源码  # Android编程实现闹钟的方法详解  # Android实现简易闹钟功能  # 简单实现Android闹钟功能  # Android闹钟设置的解决方案  # Android闹钟机制实现定时任务功能  # Android使用AlarmManager设置闹钟功能  # 小编  # 来了  # 在此  # 给大家  # 响了  # 来实现  # 所述  # 给我留言  # 感谢大家  # 跳转到  # 慈禧太后  # 疑问请  # 有任何  # setAlarm  # cancelAlarm  # send  # stop  # RingActivity  # activity_ring  # RelativeLayout 


相关文章: C#如何在一个XML文件中查找并替换文本内容  手机网站制作与建设方案,手机网站如何建设?  Android使用GridView实现日历的简单功能  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  电商网站制作公司有哪些,1688网是什么意思?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  建站主机解析:虚拟主机配置与服务器选择指南  javascript中对象的定义、使用以及对象和原型链操作小结  如何在宝塔面板创建新站点?  模具网站制作流程,如何找模具客户?  如何快速查询域名建站关键信息?  如何快速查询网站的真实建站时间?  如何通过cPanel快速搭建网站?  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  如何通过宝塔面板实现本地网站访问?  如何快速搭建支持数据库操作的智能建站平台?  利用JavaScript实现拖拽改变元素大小  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  IOS倒计时设置UIButton标题title的抖动问题  建站之星安装后界面空白如何解决?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  C#如何使用XPathNavigator高效查询XML  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  建站之星上传入口如何快速找到?  想学网站制作怎么学,建立一个网站要花费多少?  公众号网站制作网页,微信公众号怎么制作?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  建站VPS推荐:2025年高性能服务器配置指南  如何用wdcp快速搭建高效网站?  定制建站如何定义?其核心优势是什么?  建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  如何快速搭建高效可靠的建站解决方案?  怀化网站制作公司,怀化新生儿上户网上办理流程?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  制作网站的基本流程,设计网站的软件是什么?  已有域名和空间,如何快速搭建网站?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  网站代码制作软件有哪些,如何生成自己网站的代码?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  如何通过服务器快速搭建网站?完整步骤解析  动图在线制作网站有哪些,滑动动图图集怎么做?  如何零基础开发自助建站系统?完整教程解析  如何用美橙互联一键搭建多站合一网站?  如何在Windows服务器上快速搭建网站?  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  MySQL查询结果复制到新表的方法(更新、插入)  非常酷的网站设计制作软件,酷培ai教育官方网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。