BroadcastReceive之ip拨号
首先,新建一个类,继承于BroadcastReceive,然后去配置Manifest.xml
 <receiver android:name=".PhoneOnReceice">
             <intent-filter>
                 <action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
             </intent-filter>
         </receiver>
然后加上android.permission.PROCESS_OUTGOING_CALLS权限(一定要记得加,不要加错了)
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
接下来写业务逻辑就行了,那就简单了
首先是MainActicity:
 public class MainActivity extends Activity implements View.OnClickListener {
     EditText et;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
         Button btn = (Button)findViewById(R.id.btn);
         et = (EditText) findViewById(R.id.et);
         btn.setOnClickListener(this);
     }
     @Override
     public void onClick(View view) {
         String str = et.getText().toString().trim();
         SharedPreferences sp= getSharedPreferences("config",0);
         sp.edit().putString("ipnumber",str).commit(); //一定记得提交
         Toast.makeText(this,"ip设置成功",Toast.LENGTH_SHORT).show();
     }
 }
然后就是我们刚新建的那个类了
 public class PhoneOnReceice extends BroadcastReceiver {
     @Override
     public void onReceive(Context context, Intent intent) {
         SharedPreferences sp = context.getSharedPreferences("config",0);
         String ip = sp.getString("ipnumber","");
         String currentNumber = getResultData();//获取当前要拨打的电话号码
         System.out.println("广播调用成功");
         if (currentNumber.startsWith("0")){
             System.out.print("进入if中");
             setResultData(ip+currentNumber);
         }
     }
 }
当Mainfest.xml中的action执行的时候,就会执行BroadcastReceiver子类PhoneOnReceive中的onReceice方法。
注意其中的getResultData():是用来得到当前输入的手机号码的
BroadcastReceive之ip拨号的更多相关文章
- 无废话Android之activity的生命周期、activity的启动模式、activity横竖屏切换的生命周期、开启新的activity获取他的返回值、利用广播实现ip拨号、短信接收广播、短信监听器(6)
		
1.activity的生命周期 这七个方法定义了Activity的完整生命周期.实现这些方法可以帮助我们监视其中的三个嵌套生命周期循环: (1)Activity的完整生命周期 自第一次调用onCrea ...
 - Android开发之IP拨号器原理
		
IP拨号器,使用了Android的广播接收者(BroadCastReceiver),在广播中把已保存的ip号码放在拨打电话号码的前面(getResultData()),然后把修改后的号码设置到广播中( ...
 - android 监听去电实现ip拨号 广播接收者
		
利用广播实现ip拨号 布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout x ...
 - 广播接收者实现IP拨号
		
广播接收者实现IP拨号 效果图: 实现的功能就是自动监听我们要拨打的号码,在我们拨打的号码前加上179521 分析: 1.敲个类来继承广播接收者 并且将从打电话应用位置获取的号码加上179521,并将 ...
 - Android初级教程IP拨号器初识广播接受者
		
需求:输入ip号码并且保存在本地,监听打电话广播,如果电话号码以0开头,则加上ip区号拨打. 首先定义一个页面布局: <LinearLayout xmlns:android="http ...
 - [android] 利用广播实现ip拨号
		
广播接收者,broadcast receiver,安卓系统在使用时会产生很多的事件,比如:短信到来,电量低,拨打电话等等 界面布局,线性布局,EditText指定为电话号码,设置属性android:i ...
 - ADSL 动态IP拨号VPS 软件配置
		
http://yun.baidu.com/share/link?uk=2520566727&shareid=330788421&third=0&adapt=pc&fr= ...
 - 利用广播实现ip拨号——示例
		
1.创建activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi ...
 - IP拨号器
		
是一个最终的接收者 package com.example.ip; import android.content.BroadcastReceiver; import android.content.C ...
 
随机推荐
- groups, usermod, chown, chgrp, chmod
			
Linux文件权限简介 Linux的每个文件可以由三种用户访问 属主权限:创建人的权限 属组权限:与创建同一个用户组的权限 其他权限:和创建人不在同一个用户组的用户的权限 当然,root用户拥有最高权 ...
 - 五、Android学习第四天补充——Android的常用控件(转)
			
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 五.Android学习第四天补充——Android的常用控件 熟悉常用的A ...
 - 随笔:近期仍在流行的QQ盗号网页简析
			
前言:被盗号的人们,你们的防护意识有那么弱吗? 声明:本文提到的技术,仅可用作网络安全加固等合法正当目的.本文作者无法鉴别判断读者阅读本文的真实目的,敬请读者在本国法律所允许范围内阅读本文,读者一旦因 ...
 - ssh连接失败,排错经验
			
一.场景描述 ssh连接服务器,发现连接失败,但是对应服务器的ip能够ping通. 场景: [root@yl-web ~]# ssh root@10.1.101.35 ssh_exchange_ide ...
 - [转]ASP.NET MVC IOC 之AutoFac攻略
			
本文转自:http://www.cnblogs.com/WeiGe/p/3871451.html 一.为什么使用AutoFac? 之前介绍了Unity和Ninject两个IOC容器,但是发现园子里用A ...
 - 《InsideUE4》-3-GamePlay架构(二)Level和World
			
UE4深入学习QQ群: 456247757 引言 上文谈到Actor和Component的关系,UE利用Actor的概念组成一片游戏对象森林,并利用Component组装扩展Actor的能力,让世界里 ...
 - Stanford机器学习笔记-6. 学习模型的评估和选择
			
6. 学习模型的评估与选择 Content 6. 学习模型的评估与选择 6.1 如何调试学习算法 6.2 评估假设函数(Evaluating a hypothesis) 6.3 模型选择与训练/验证/ ...
 - ANE接入平台心得记录(安卓)
			
开发环境:FlashBuilder4.7 AIR13.0 Eclipse 由于我懒得陪安卓的开发环境所以我下载了包含安卓SDK Manager的Eclipse,其实直接用FlashBuilder开发A ...
 - Linux下监听或绑定(bind)843端口失败
			
问题:写了一个程序,尝试在843端口监听,结果在执行bind的时候失败了 原来,系统不允许用户程序在1-1024端口监听,因为他们是知名端口. 解决办法: 换成root用户,即可成功bind.(ubu ...
 - bzoj2748[HAOI2012]音量调节(背包问题的方案)
			
Description 一个吉他手准备参加一场演出.他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都要改变一次音量.在演出开始之前,他已经做好了一个列表,里面写着在每首歌开始之前他想要改 ...