Android以TelephonyManager取得話機狀態
16lz
2021-01-23
package android.demo.phonestate;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.telephony.PhoneStateListener;import android.telephony.TelephonyManager;import android.widget.Toast;public class PhoneState_Activity extends Activity { /** Called when the activity is first created. */@Overridepublic void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); //電話狀態的Listener MyPhoneStateListener myPhoneStateListener = new MyPhoneStateListener(); //取得TelephonyManager TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); //將電話狀態的Listener加到取得TelephonyManager telephonyManager.listen(myPhoneStateListener, PhoneStateListener.LISTEN_CALL_STATE); } public class MyPhoneStateListener extends PhoneStateListener { @Overridepublic void onCallStateChanged(int state, String phoneNumber) { Toast.makeText(PhoneState_Activity.this, TelephonyManager.ACTION_PHONE_STATE_CHANGED, Toast.LENGTH_SHORT).show();switch (state) { //電話狀態是閒置的 case TelephonyManager.CALL_STATE_IDLE: break; //電話狀態是接起的 case TelephonyManager.CALL_STATE_OFFHOOK: Toast.makeText(PhoneState_Activity.this, "正接起電話…", Toast.LENGTH_SHORT).show(); break; //電話狀態是響起的 case TelephonyManager.CALL_STATE_RINGING: Toast.makeText(PhoneState_Activity.this, phoneNumber + "正打電話來…", Toast.LENGTH_SHORT).show(); break; default: break; } } } }//--------------------------------------------------------------------<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android.demo.phonestate" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".PhoneState_Activity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="7" /><uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission> </manifest>
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer