大 家看到标题就明白了,我们有的时候在电梯里,有时有的电话有信号,有时有的电话没有信号,这个是非常闹心的,要是我们能监听一下我们自己手机信号的强度就 好了。这样,当我们在等重要的人士的电话,不至于接不到这个电话,如果是这个电话你没有接到的话,可能你的一生就这么平淡的过去,如果你接到了这个电话的 话,也许你的一生就会发生改变。我们应该把机会掌握的自己的手里,这样我们才能去迎接改变自己的机会。不在多说了,我们还是看看代码吧:

android.permission.CHANGE_NETWORK_STATE接下来的许可:“AndroidManifest.xml”文件应该看起来如下:

Java代码:

  1. < ?xml version="1.0" encoding="utf-8"?>
  2. < ?xml version="1.0" encoding="utf-8"?>
  3. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  4. package="Firstdroid.Tutorial.GetGsmSignalStrength"
  5. android:versionCode="1"
  6. android:versionName="1.0">
  7. <application android:icon="@drawable/icon" android:label="@string/app_name">
  8. <activity android:name=".GetGsmSignalStrength"
  9. android:label="@string/app_name">
  10. <intent -filter>
  11. <action android:name="android.intent.action.MAIN" />
  12. <category android:name="android.intent.category.LAUNCHER" />
  13. </intent>
  14. </activity>
  15. </application>
  16. <uses -sdk android:minSdkVersion="4" />
  17. <uses -permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses>
  18. </manifest>

复制代码

现在我们的权限已经设置好了,就得看看主要都到了什么包。

Java代码:

  1. package eoe.signal;
  2. import android.app.Activity;
  3. import android.content.Context;
  4. import android.os.Bundle;
  5. import android.telephony.PhoneStateListener;
  6. import android.telephony.SignalStrength;
  7. import android.telephony.TelephonyManager;
  8. import android.widget.Toast;

复制代码

现在我们就来看看代码吧

Java代码:

  1. public class GetGsmSignalStrength extends Activity
  2. {
  3. /* 我们可以用它们onResume和onPause方法停止listene*/
  4. TelephonyManager Tel;
  5. MyPhoneStateListener MyListener;
  6. /** Called when the activity is first created. */
  7. @Override
  8. public void onCreate(Bundle savedInstanceState)
  9. {
  10. super.onCreate(savedInstanceState);
  11. setContentView(R.layout.main);
  12. /* Update the listener, and start it */
  13. MyListener = new MyPhoneStateListener();
  14. Tel = ( TelephonyManager )getSystemService(Context.TELEPHONY_SERVICE);
  15. Tel.listen(MyListener ,PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
  16. }
  17. /* Called when the application is minimized */
  18. @Override
  19. protected void onPause()
  20. {
  21. super.onPause();
  22. Tel.listen(MyListener, PhoneStateListener.LISTEN_NONE);
  23. }
  24. /* Called when the application resumes */
  25. @Override
  26. protected void onResume()
  27. {
  28. super.onResume();
  29. Tel.listen(MyListener,PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
  30. }
  31. /* —————————– */
  32. /* 开始PhoneState听众*/
  33. /* —————————– */
  34. private class MyPhoneStateListener extends PhoneStateListener
  35. {
  36. /* 从得到的信号强度,每个tiome供应商有更新*/
  37. @Override
  38. public void onSignalStrengthsChanged(SignalStrength signalStrength)
  39. {
  40. super.onSignalStrengthsChanged(signalStrength);
  41. Toast.makeText(getApplicationContext(), "Go to Firstdroid!!! GSM Cinr = "
  42. + String.valueOf(signalStrength.getGsmSignalStrength()), Toast.LENGTH_SHORT).show();
  43. }
  44. };
  45. }

Android 获取信号强度的更多相关文章

  1. Android 获取手机SIM资料详解

    TelephonyManager类主要提供了一系列用于访问与手机通讯相关的状态和信息的get方法.其中包括手机SIM的状态和信息.电信网络的状态及手机用户的信息.在应用程序中可以使用这些get方法获取 ...

  2. Android获取内置sdcard跟外置sdcard路径

    Android获取内置sdcard跟外置sdcard路径.(测试过两个手机,亲测可用) 1.先得到外置sdcard路径,这个接口是系统提供的标准接口. 2.得到上一级文件夹目录 3.得到该目录的所有文 ...

  3. Android获取系统时间方法的总结

    Android获取系统时间方法的方法有很多种,常用的有Calendar.Date.currentTimeMills等方法. (1)Calendar Calendar获取系统时间首先要用Calendar ...

  4. Android获取屏幕宽和高

    android获取屏幕的高度和宽度用到WindowManager这个类,两种方法:   1.WindowManager wm = (WindowManager) getContext()        ...

  5. android 获取文件夹、文件的大小 以B、KB、MB、GB 为单位

    android 获取文件夹.文件的大小 以B.KB.MB.GB 为单位   public class FileSizeUtil { public static final int SIZETYPE_B ...

  6. Android获取APK包名的几种方法

    Android获取APK包名的几种方法:1.adb shell pm list package -f | findstr 关键字 #只能获取到包名,主Activity名无法获取到 2.使用aapt-- ...

  7. I.MX6 android 获取framebuffer信息

    /******************************************************************************** * I.MX6 android 获取 ...

  8. android 获取IMEI号

    android 获取 imei号码 核心代码: Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId( ...

  9. android 获取手机号

    android 获取手机号码,由于运营商的管理方式的不同,所以获取手机号码的方式也可能完全相同.现在很多运营商并不会把手机号码存入sim卡中. 最简单的,比如说中国移动并不将手机号保存在sim卡中,只 ...

随机推荐

  1. NOI2006最大获利

    终于搞明白了…… x到y有边意味着选x必须选y,所以才会有闭合子图中一个点的后继一定也在这个闭合子图中. 接下来按照s连正权,负权连t就ok了 type node=record go,next,c:l ...

  2. chromium的部署工具depot_tools和gclient

    depot_tools是个工具包,里面包含gclient.gcl.gn和ninja等工具.其中gclient是代码获取工具,它其实是利用了svn和git.主要涉及的depot_tools文件夹下的文件 ...

  3. linux 读取input输入设备demo

    /******************************************************************* * linux 读取input输入设备demo * 说明: * ...

  4. Java泛型类与类型擦除

    转载自:http://blog.csdn.net/lonelyroamer/article/details/7868820 一.Java泛型的实现方法:类型擦除 前面已经说了,Java的泛型是伪泛型. ...

  5. 也用 Log4Net 之将日志记录到数据库的后台实现 (二)

    也用 Log4Net 之将日志记录到数据库的后台实现 (二)  大家下午好,昨天讲了配置,今天我们讲讲后台实现,在完成了后台实现后,我们才能真正意义上的解决把自定义属性字段值录入到数据库中. 在开写之 ...

  6. Android学习系列(1)--为App签名(为apk签名)

    写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台.这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用. 1.签 ...

  7. POJ 3377 Ferry Lanes

    虽然它出现在dp专场里···但是我第一反应是一道最短路题···不过幸好它出现在dp专场里···因为我不怎么会dijstra什么的··· 题意:一条河上有N+1对码头,每个相邻码头之间需要一定时间到达, ...

  8. MySQL数据库的同步配置+MySql读写分离

    使用mysql主从复制的好处有: 1.采用主从服务器这种架构,稳定性得以提升.如果主服务器发生故障,我们可以使用从服务器来提供服务. 2.在主从服务器上分开处理用户的请求,可以提升数据处理效率. 3. ...

  9. Uva 10480 Sabotage 最大流

    表示自从学了网络流,就基本上是一直用dinic 这个题一看就是用最大流,作为常识,两个点之间的最大流等于最小割 但是这个题需要输出割边,然后我就不会了,dinic判流量我觉得也可做,但是一直wa 然后 ...

  10. NOIP2011 铺地毯

    1铺地毯 题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯.一共有 n 张地毯,编号从 1 到n .现在将这些地毯按照编号从小到大的 ...