import android.app.Service;import android.content.Context;import android.content.Intent;import android.media.MediaRecorder;import android.os.IBinder;import android.telephony.PhoneStateListener;import android.telephony.TelephonyManager;import android.util.Log;public class PhoneService extends Service {private static final String TAG = "PhoneService";@Overridepublic IBinder onBind(Intent intent) {// TODO Auto-generated method stubreturn null;}@Overridepublic void onCreate() {// TODO Auto-generated method stubsuper.onCreate();TelephonyManager mTelephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);}PhoneStateListener mPhoneStateListener = new PhoneStateListener(){private String listenNumber;private boolean isRecording;private MediaRecorder recorder;@Overridepublic void onCallStateChanged(int state, String incomingNumber) {super.onCallStateChanged(state, incomingNumber);switch(state){case TelephonyManager.CALL_STATE_IDLE:Log.d(TAG, "CALL_STATE_IDLE");break;case TelephonyManager.CALL_STATE_OFFHOOK:Log.d(TAG, "CALL_STATE_OFFHOOK");break;case TelephonyManager.CALL_STATE_RINGING:Log.d(TAG, "CALL_STATE_RINGING");break;default:break;}};};}


import com.hw.receiver.demo.service.PhoneService;public class PhoneBrocastRecive extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {        Log.i("----------->", "开始广播");          Intent serviceIntent=new Intent(context,PhoneService.class);          context.startService(serviceIntent);}}


<?xml version="1.0" encoding="utf-8"?>  <manifest xmlns:android="http://schemas.android.com/apk/res/android"      package="com.hw.receiver.demo.receiver"      android:versionCode="1"      android:versionName="1.0">      <application android:icon="@drawable/icon" android:label="@string/app_name">          <receiver android:name=".PhoneBrocastRecive">                          <intent-filter android:priority="800">                  <!-- <action android:name="android.intent.action.NEW_OUTGOING_CALL" />  -->                <action android:name="android.intent.action.PHONE_STATE"/>            </intent-filter>          </receiver>            <service android:name="com.hw.receiver.demo.service.PhoneService"></service>      </application>     <uses-permission android:name="android.permission.READ_PHONE_STATE"/>      <uses-permission android:name="android.permission.RECEIVE_SMS"/>      <uses-permission android:name="android.permission.RECORD_AUDIO"/>  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  </manifest>  

更多相关文章

  1. android开机自启广播无效果的曲线解决方案
  2. android系统权限大全
  3. Android(安卓)通过Intent调用系统功能和Action动作和服务广播【
  4. Android(安卓)监听wifi广播的两种方式
  5. Android接收程序安装、替换、卸载广播
  6. Android(安卓)扫描SDCard上的音乐文件以及监听扫描事件
  7. Android开机自启APK应用
  8. 从零开始 WIN8.1 下Android(安卓)开发环境搭建
  9. android简单实现短信拦截

随机推荐

  1. Android滑动手势侦测方法介绍
  2. Android的快速开发框架 afinal
  3. android中下载文件到sdcard和进度条小结
  4. Android中的测试小demo
  5. 介绍几本初学Android资料和教材——选对
  6. android中下载文件到sdcard和进度条小结
  7. android之PhoneGap入门
  8. Android(安卓)4.0 Launcher2源码分析——
  9. android初学者的探索之路(Android音乐播放
  10. Android(安卓)体系结构