• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android中AlarmManager使用示例(持续更新,已经更改),alarmmanager

Android中AlarmManager使用示例(持续更新,已经更改),alarmmanager

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android studio示例,android示例,android 示例程序,android alarmmanager,android sdk manager等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android中AlarmManager使用示例(持续更新,已经更改),alarmmanager


现在普遍的手机都会有一个闹钟的功能,如果使用Android来实现一个闹钟可以使用AtarmManager来实现。AtarmManager提供了一种系统级的提示服务,允许你安排在将来的某个时间执行一个服务。AlarmManager对象一般不直接实例化,而是通过Context.getsystemservice(Context.ALARM_SERVICE)方法获得。

下面是我们运用之前用到的TimePickerDialog结合AlarmManager,实现一个可以设定任意时间而且可以重复的闹钟,演示效果如下(大概每晚23:48会有闹钟通知):

layout中activity_main.xml布局文件代码:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout
 3     xmlns:android="http://schemas.android.com/apk/res/android"
 4     xmlns:tools="http://schemas.android.com/tools"
 5     android:id="@+id/activity_main"
 6     android:layout_width="match_parent"
 7     android:layout_height="match_parent"
 8     android:orientation="vertical"
 9     tools:context="com.example.administrator.alarmdemo.MainActivity">
10     <TextView
11         android:id="@+id/time_tv"
12         android:layout_width="match_parent"
13         android:layout_height="wrap_content"
14         android:hint="请设置闹铃时间"
15         android:clickable="true"
16         android:onClick="setTime"
17         android:gravity="center"/>
18     <TextView
19         android:id="@+id/time_tv2"
20         android:layout_width="match_parent"
21         android:layout_height="wrap_content"
22         android:hint="请设置响铃间隔时间"
23         android:clickable="true"
24         android:onClick="setIntervalTime"
25         android:gravity="center"/>
26     <Button
27         android:layout_width="match_parent"
28         android:layout_height="wrap_content"
29         android:onClick="open"
30         android:text="开启闹钟"/>
31     <Button
32         android:layout_width="match_parent"
33         android:layout_height="wrap_content"
34         android:onClick="stop"
35         android:text="结束闹钟"/>
36 </LinearLayout>

AndroidMainfest.xml配置文件(添加自定义重复闹铃receiver):

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 3     package="com.example.administrator.alarmdemo">
 4     <application
 5         android:allowBackup="true"
 6         android:icon="@mipmap/ic_launcher"
 7         android:label="@string/app_name"
 8         android:supportsRtl="true"
 9         android:theme="@style/AppTheme">
10         <activity android:name=".MainActivity">
11             <intent-filter>
12                 <action android:name="android.intent.action.MAIN" />
13 
14                 <category android:name="android.intent.category.LAUNCHER" />
15             </intent-filter>
16         </activity>
17         <receiver
18             android:name=".RepeatAlarmReceiver"
19             android:enabled="true"
20             android:exported="true">
21             <intent-filter>
22                 <action android:name="repeatAlarm" />
23             </intent-filter>
24         </receiver>
25         <activity android:name=".Main2Activity"></activity>
26     </application>
27 
28 </manifest>

RepeatAlarmReceiver.java广播接收文件:

 1 import android.content.BroadcastReceiver;
 2 import android.content.Context;
 3 import android.content.Intent;
 4 import android.widget.Toast;
 5 
 6 public class RepeatAlarmReceiver extends BroadcastReceiver {
 7     public RepeatAlarmReceiver() {
 8     }
 9     @Override
10     public void onReceive(Context context, Intent intent) {
11         Toast.makeText(context, "重复闹钟", Toast.LENGTH_SHORT).show();
12     }
13 }

MainActivity.java代码实现:

 1 import android.app.AlarmManager;
 2 import android.app.PendingIntent;
 3 import android.app.TimePickerDialog;
 4 import android.content.Intent;
 5 import android.provider.Settings;
 6 import android.support.v7.app.AppCompatActivity;
 7 import android.os.Bundle;
 8 import android.view.View;
 9 import android.widget.TextView;
10 import android.widget.TimePicker;
11 import java.util.Calendar;
12 public class MainActivity extends AppCompatActivity {
13     AlarmManager alarmManagerSet;
14     PendingIntent pendingIntentSet;
15     int myHour,myMinute;//声明响铃时间
16     int intervalHour,intervalMinute,intervalSecond;//声明间隔时间(响铃周期)
17     Calendar calendar;//声明日历
18     TextView time_tv,time_tv2;
19 
20     @Override
21     protected void onCreate(Bundle savedInstanceState) {
22         super.onCreate(savedInstanceState);
23         setContentView(R.layout.activity_main);
24         alarmManagerSet= (AlarmManager) getSystemService(ALARM_SERVICE);
25         //设置声明时间格式
26         calendar = Calendar.getInstance();
27         myHour=calendar.get(Calendar.HOUR_OF_DAY);
28         myMinute=calendar.get(Calendar.MINUTE);
29         intervalHour=calendar.get(Calendar.HOUR_OF_DAY);
30         intervalMinute=calendar.get(Calendar.MINUTE);
31         //获取时间设置的TextView
32         time_tv= (TextView) findViewById(R.id.time_tv);
33         time_tv2= (TextView) findViewById(R.id.time_tv2);
34     }
35     //



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android中AlarmManager使用示例(持续更新,已经更改),alarmmanager

相关文章

  • 2017-05-26我的android学习经历15,android学习经历15
  • 2017-05-227.4 Android 调用 WebService
  • 2017-05-26三种POST和GET的提交方式,postget提交
  • 2017-05-26Linux内核系列—6.操作系统开发之内存分页机制,linux分页
  • 2017-05-26Android学习笔记(26):Toast提示信息框浅析
  • 2017-05-26菜单(Menu)的三中创建方式——Android开发之路2,menuandroid
  • 2017-05-26ReactNative官方中文文档0.21,reactnative0.21
  • 2017-11-18android 多线程断点续传视频列表
  • 2017-10-15Android源码基础解析之Activity布局绘制流程
  • 2017-05-26Android Studio多渠道打包,androidstudio打包

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ViewHolder模式超简洁写法,viewholder模式写法
    • linux2.4.18----25.文件系统的构建
    • Afinal,afinal框架
    • Android 急速发布项目到 JitPack,androidjitpack
    • Android中View的滑动冲突——Android开发艺术探索笔记
    • Android中Fragment的两种创建方式,androidfragment
    • 应该在find命令中使用-execdir代替-exec
    • Kotlin怎样使用Android的Dagger2,kotlindagger2
    • 深入了解Kotlin的必备书籍,深入了解kotlin必备
    • 利用SurfaceView显示正弦曲线,仿造示波器,surfaceview正弦

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有