1、继承广播接收者类

 package com.example.ipdail;

 import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences; public class OutCallReceiver extends BroadcastReceiver { @Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
//获取拨打的号码
String number = getResultData();
//获取config数据里面的数据
SharedPreferences sp = context.getSharedPreferences("config", context.MODE_PRIVATE);
String ipnumber = sp.getString("ipnumber", ""); //修改号码并返回
String newNumber = ipnumber + number;
setResultData(newNumber);
} }

2、在清单文件配置广播接收者(因为属于四大组件之一),并通过action来表名要监听的频道

  <receiver android:name=".OutCallReceiver">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL"></action>
</intent-filter>
</receiver>

3、由于要监听外拨电话,所以要加一个权限

 <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>

4、其他java代码

 package com.example.ipdail;

 import android.os.Bundle;
import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.View;
import android.widget.EditText; public class MainActivity extends Activity { private EditText et_ipnumber; private SharedPreferences sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_ipnumber = (EditText)findViewById(R.id.et_ipnumber);
sp = getSharedPreferences("config", MODE_PRIVATE);
et_ipnumber.setText(sp.getString("ipnumber", ""));
} public void click(View view){
String ipnumber = et_ipnumber.getText().toString().trim(); Editor editor = sp.edit();
editor.putString("ipnumber", ipnumber);
editor.commit();
}
}

最新文章

  1. 数据结构Java实现01----算法概述
  2. Sharepoint学习笔记—其它—如何知道某个Sharepoint环境的安装类型
  3. css3基础、(弹性、响应式)布局注意点
  4. 浅谈 block(1) – clang 改写后的 block 结构
  5. Like ruby of SBM Crusher zip to dict
  6. [反汇编练习] 160个CrackMe之006
  7. 【转】FLV视频封装格式详解
  8. 当Evernote结合MindManager
  9. Cocos2d-x 创建自己定义项目模板
  10. C#堆栈
  11. 基OOP知识
  12. OpenCV 4 Python高级配置—安装setuptools,matplotlib,six,dateutil,pyparsing 完整过程
  13. qt5.6 for android
  14. .net core webapi 将localhost改成ip地址
  15. Pyhon中运算符的使用
  16. servlet 高级知识之Listener
  17. SSM框架 mapper.xml中 value的空值判断问题
  18. SpringMVC和Springboot的区别
  19. laravel new xxx 安装laravel 慢的问题
  20. new及placememt new 异同点

热门文章

  1. 解读Google分布式锁服务
  2. cocos2d-x游戏开发系列教程-超级玛丽05-CMMenuScene
  3. 【剑指Offer学习】【面试题18 :树的子结构】
  4. hdu1533解题报告
  5. SPI通信
  6. git阶段学习总结
  7. sed学习笔记整理
  8. ios7禁止默认划动返回
  9. Chapter 3.单一职责原则
  10. ascii码所有字符对照表(包含汉字和外国文字)