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. enote笔记语言(4)(ver0.2)——“5w1h2k”分析法

    章节:“5w1h2k”分析法   what:我想知道某个“关键词(keyword)”(即,词汇.词语,或称单词,可以是概念|专业术语|.......)的定义. why:我想知道事物发生的原因.“why ...

  2. Vue ui 大法哪家强?

    Element iView Vuex Mint UI Vant cube-ui,对比六大 vue ui 组件库,选中最适合的那个. Element(pc) 介绍 & 版本 饿了么前端团队开发的 ...

  3. Django - 日志工作中常用配置

    工作中常用配置 # 日志配置 BASE_LOG_DIR = os.path.join(BASE_DIR, "log") LOGGING = { 'version': 1, # 保留 ...

  4. BZOJ 1051 HAOI 2006 受欢迎的牛

    [题解] 先用tarjan缩点,然后如果某个强联通分量的出度为0,则该强联通分量内的点数为答案,否则无解.因为若其他所有的强联通分量都有边连向Ai,则Ai必定没有出边,否则Ai连向的点所属的强联通分量 ...

  5. 2.1 Java开发工具包

        Java专业术语                   术语名   缩写                                                             ...

  6. c# 异步执行

    c#异步执行 Action logAction = () => {////执行的操作 }; logAction.BeginInvoke(null, null);

  7. 用Twebbrowser做可控编辑器与MSHTML(插入表格)

    在插入表格问题上出现与结果想象不一样的问题.看代码 <table border="1" cellpadding="0" width="100%& ...

  8. Android欢迎页面以及引导页面

    开发环境:Windows 10 x64,Android Studio 3.0 很多APP都会在启动主界面(MainActivity)之前显示一个短暂的欢迎页面,设置微博,知乎,百度之类APP还是在欢迎 ...

  9. group by语句,聚合函数与其他语句(关系,执行过程)

    (本文一切基于SQL SERVER 2008 R2) 先来看一个语句执行过程发生的错误提示: 消息 8120,级别 16,状态 1,第 2 行 选择列表中的列 'SC.CNO' 无效,因为该列没有包含 ...

  10. N天学习一个linux命令之umask

    前言 umask不是linux命令,而是shell内置的指令,俗称用户权限掩码,用于对用户创建的文件和目录设置默认权限.默认的权限掩码是0022,也就是说新创建的文件权限是0644,新创建的目录权限是 ...