【android】通话录音 -- service
16lz
2021-12-04
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>
更多相关文章
- android开机自启广播无效果的曲线解决方案
- android系统权限大全
- Android(安卓)通过Intent调用系统功能和Action动作和服务广播【
- Android(安卓)监听wifi广播的两种方式
- Android接收程序安装、替换、卸载广播
- Android(安卓)扫描SDCard上的音乐文件以及监听扫描事件
- Android开机自启APK应用
- 从零开始 WIN8.1 下Android(安卓)开发环境搭建
- android简单实现短信拦截