您的位置:首页 > 移动开发 > Android开发

Android广播接受者案例IP拨号器

2016-11-14 19:35 393 查看
MainActivity里面提供IP号码
public class MainActivity extends ActionBarActivity {

private EditText et;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et = (EditText) findViewById(R.id.et);
}
public void click(View v){
String number=et.getText().toString().trim();

SharedPreferences sp = getSharedPreferences("config",0);

sp.edit().putString("ipnumber",number).commit();

Toast.makeText(getApplicationContext(), "保存成功",0).show();

}

}

一个EditText和一个按钮

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<EditText
android:id="@+id/et"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
/>

</LinearLayout>接下里是定义一个广播接受者类
public class OutCallReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context arg0, Intent arg1) {
SharedPreferences sp = arg0.getSharedPreferences("config",0);

String ipNumber=sp.getString("ipnumber","");

String currentNumber=getResultData();

if(currentNumber.startsWith("0")){
setResultData(ipNumber+currentNumber);
}
}

}清单文件要定义
<receiver
android:name="com.example.phonecall.OutCallReceiver">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>

最后加上权限
 <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>

运行效果如下:





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: