getSystemServiceAndroid很重要的一个API,它是Activity的一个方法,根据传入的NAME来取得对应的Object,然后转换成相应的服务对象。以下介绍系统相应的服务。

传入的Name

返回的对象

说明

WINDOW_SERVICE

WindowManager

管理打开的窗口程序

LAYOUT_INFLATER_SERVICE

LayoutInflater

取得xml里定义view

ACTIVITY_SERVICE

ActivityManager

管理应用程序的系统状态

POWER_SERVICE

PowerManger

电源服务

ALARM_SERVICE

AlarmManager

闹钟服务

NOTIFICATION_SERVICE

NotificationManager

状态栏服务

KEYGUARD_SERVICE

KeyguardManager

键盘锁服务

LOCATION_SERVICE

LocationManager

位置的服务,如GPS

SEARCH_SERVICE

SearchManager

搜索服务

VEBRATOR_SERVICE

Vebrator

手机震动服务

CONNECTIVITY_SERVICE

Connectivity

网络连接服务

WIFI_SERVICE

WifiManager

Wi-Fi服务

TELEPHONY_SERVICE

TeleponyManager

电话服务

示例1:图书《Android精彩编程200例》,实例006状态栏的服务例子:

获取通知管理器并创建通知对象。代码如下:

01  //获取通知管理器,用于发送通知
02 Notif icationManager notif icationManager =
03 (Notif icationManager) getSystemService(NOTIFICATION_SERVICE);
04 Notif icationCompat.Builder notif ication = new
05 Notif icationCompat.Builder(MainActivity.this); //创建一个Notif ication对象

设置通知的相关参数与通知的发送时间。代码如下:

01  notification.setAutoCancel(true);
02 //设置显示在状态栏的通知提示信息
03 notification.setTicker("Android课程第一季上线啦!");
04 //设置通知的小图标
05 notification.setSmallIcon(R.mipmap.ic_launcher);
06 //设置下拉列表中的大图标
07notification.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher));
08 //设置通知内容的标题
09 notification.setContentTitle("Android入门第一季!");
10 //设置通知内容
11 notification.setContentText("点击查看详情!");
12 //设置发送时间
13 notification.setWhen(System.currentTimeMillis());

设置从通知栏跳转至通知的详细内容界面,并进行通知的发送。代码如下:

01  //创建一个启动其他Activity的Intent
02 Intent intent = new Intent(MainActivity.this,
03 MessageActivity.class);
04 PendingIntent pi = PendingIntent.getActivity(
05 MainActivity.this, 0, intent, 0);
06 //设置通知栏单击跳转
07 notification.setContentIntent(pi);
08 //发送通知
09 notificationManager.notify(NOTIFYID, notification.build());

示例2:常用功能,获取屏幕高度宽度,代码如下:

01    //获取屏幕管理器
02 WindowManagermWindowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
03 //获取宽度
04 width = mWindowManager.getDefaultDisplay().getWidth();
05 //获取高度
06 height = mWindowManager.getDefaultDisplay().getHeight();

本文摘自明日科技出版的《Android 精彩编程200例》,转载请注明出处!!!

通过getSystemServices获取手机管理大全的更多相关文章

  1. android获取手机信息大全

    IMEI号,IESI号,手机型号: private void getInfo() { TelephonyManager mTm = (TelephonyManager) getSystemServic ...

  2. [转] android获取手机信息大全

    原文链接:http://blog.csdn.net/hytfly/article/details/8552483 IMEI号,IESI号,手机型号: private void getInfo() { ...

  3. Android-AsyncTask异步任务(获取手机联系人)

    本篇随笔将讲解一下Android的多线程的知识,以及如何通过AsyncTask机制来实现线程之间的通信. 一.Android当中的多线程 在Android当中,当一个应用程序的组件启动的时候,并且没有 ...

  4. Android 获取手机总内存和可用内存等信息

    在android开发中,有时候我们想获取手机的一些硬件信息,比如android手机的总内存和可用内存大小.这个该如何实现呢? 通过读取文件"/proc/meminfo"的信息能够获 ...

  5. Android编程获取手机的IMEI

    手机在生产时,每部手机均有一个唯一的标识(ID),国际上采用国际移动设备身份码(IMEI, International Mobile Equipment Identity).IMEI是由15位数字组成 ...

  6. Android简易实战教程--第十二话《代码获取手机总运行内存的大小》

    手机RAM存储,类似于电脑的内存.这一篇,对通过代码获取手机总内存大小做详细介绍. 首先,定义一个engine类,这个类功能就是获取进程信息,包括运行的程序个数,系统总内存,系统剩余总内存.本篇先完成 ...

  7. Android简易实战教程--第十一话《获取手机所有应用信息Engine类详解》

    如果想要获取系统手机应用的详细信息,那么下边代码可以直接作为模板使用.笔者对每一行代码都做了注解,供您参考.直接上代码: package com.example.itydl.engines; impo ...

  8. Android开发之获取手机SIM卡信息

    TelephonyManager是一个管理手机通话状态.电话网络信息的服务类.该类提供了大量的getXxx(),方法获取电话网络的相关信息. TelephonyManager类概述: 可用于訪问有关设 ...

  9. Android之——获取手机安装的应用程序

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47114331 前几篇有关Android的博文中.向大家介绍了几个项目中经常使用的有 ...

随机推荐

  1. time、datatime模块

    python中时间日期格式化符号 %Y 年份(4位数表示) %y 年份(2位数表示) %m 月份(01-12) %d 月内中的一天(0-31) %H 24小时制小时数 %I 12小时制小时数 %M 分 ...

  2. 洋葱浏览器(Tor Browser)

    第一,洋葱路由器简介 Tor Browser 是個內建「翻牆」功能的網路瀏覽器,藉由「洋蔥路由, The Onion Router (Tor)」匿名瀏覽技術,將上網時所傳遞的訊息層層加密保護,讓使用者 ...

  3. 一个电商项目的Web服务化改造4:方案和架构,通用接口的定义和实现

        最近一直在做一个电商项目,需要把原有单系统架构的项目,改造成基于服务的架构,SOA.     有点挑战,做完了,会有很大进步. 上一篇,我们明确了我们的"规范和约定". 从 ...

  4. ZOJ 3199 Longest Repeated Substring

    Longest Repeated Substring Time Limit: 5000ms Memory Limit: 32768KB This problem will be judged on Z ...

  5. <script>标签的加载解析执行

    转自原文 <script>标签的加载解析执行 看了很多网上的文章,都是大同小异.总结一下.内部原理还没有搞清楚,有机会再学习. 一.<script>标签的加载解析执行顺序 ht ...

  6. [转]wcf系列学习——服务托管

    今天是系列的终结篇,当然要分享一下wcf的托管方面的知识. wcf中托管服务一般有一下四种: Console寄宿:             利于开发调试,但不是生产环境中的最佳实践. winform寄 ...

  7. web项目log日志查看分析->流程理解

    1.DEBUG [2017-07-10 11:38:41,705][] org.springframework.web.servlet.DispatcherServlet:865 - Dispatch ...

  8. HTML5:判断浏览器是否支持date类型

    在某些情况下,我们需要判断当前浏览器是否支持date类型,如果支持的话,可以让用户用原生的datepicker来选取日期.如果不支持,则我们需要用自己实现的datepicker类库,来提供给用户. 在 ...

  9. ubuntu中eclipse无法识别android手机问题

    1.问题: 在ubuntu中eclipse中用真机来调试androi程序时,发现无法识别手机,例如以下图显示2.37一栏之前显示全是乱码.这是解决后截的图. 2.问题原因: 在window下我们能够通 ...

  10. PHP项目的设计过程

    过程说明: 1)产品部依据需求设计出原型图和需求文档. 2)产品部和需求方与技术一起过一遍需求. 这样能够让需求方确认需求:和所參与的技术(设计部,制作部,php,測试部等)对要设计的产品有一个大致的 ...