文档章节

安卓利用 广播 实现 ip 拨号 学习笔记

汤汤圆圆
 汤汤圆圆
发布于 2015/06/24 21:35
字数 244
阅读 5
收藏 0

##1. 布局文件 <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" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="设置ip号" /> <EditText android:id="@+id/et" android:layout_width="match_parent" android:layout_height="wrap_content" /> <Button android:text="提交" android:id="@+id/bt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="save" />
</LinearLayout>

##2 main文件

package com.tang.ipdail;

import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.Toast;
import android.os.Build;

public class MainActivity extends Activity {
	private EditText et;
	private SharedPreferences sp;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		et = (EditText) findViewById(R.id.et);
		sp = getSharedPreferences("config", MODE_PRIVATE);
		String num = sp.getString("number", "");
		et.setText(num);
	}

	public void save(View view) 
	{
		String number = et.getText().toString().trim();
		Editor editor = sp.edit();
		editor.putString("number", number);
		editor.commit();
		Toast.makeText(this, "设置成功", Toast.LENGTH_SHORT).show();
	}
}

##3 清单文件(AndroidMainfest.xml)

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

##4. 定义 OutCallReceiver 类

package com.tang.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) {
		SharedPreferences sp = context.getSharedPreferences("config", context.MODE_PRIVATE);
		String ip = sp.getString("number", "");
		String number = getResultData();
		String newNum = ip+number;
		System.out.println(newNum);
		setResultData(newNum);
	}

}

© 著作权归作者所有

共有 人打赏支持
汤汤圆圆

汤汤圆圆

粉丝 11
博文 76
码字总数 24369
作品 0
昌平
程序员
私信 提问
Android系统中标准Intent的使用

一 Android系统用于Activity的标准Intent 1 根据联系人ID显示联系人信息 Intent intent = new Intent();intent.setAction(Intent.ACTION_VIEW); //显示联系人信息intent.setData(Uri.parse(......

厚德
2015/05/18
0
0
Intent中的四个重要属性——Action、Data、Category、Extras

Intent作为联系各Activity之间的纽带,其作用并不仅仅只限于简单的数据传递。通过其自带的属性,其实可以方便的完成很多较为复杂的操作。例如直接调用拨号功能、直接自动调用合适的程序打开不...

亭子happy
2015/02/08
0
1
Intent中的四个重要属性——Action、Data、Category、Extras

原文地址 http://www.cnblogs.com/wisekingokok/archive/2011/08/22/2149847.html   Intent作为联系各Activity之间的纽带,其作用并不仅仅只限于简单的数据传递。通过其自带的属性,其实可...

截图
2014/10/22
0
0
Android 3G/4G流量上网原理简析

手机一般会提供两种上网方式:Wifi或者3G/4G上网,Wifi上网其实就是利用网卡通过以太网上网;3G/4G则是通过基带,利用蜂窝网络进行上网,之前已经简单的阐述了Wifi上网跟3G上网的区别,本文主...

看书的小蜗牛
05/10
0
0
android 常用的intent action整理

来源:优亿论坛 Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递Intent来执...

hoozheng
2012/08/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Prometheus + Grafana 监控 Linux 和 MySQL 安装配置

一、介绍Prometheus Prometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,起始是由SoundCloud公司开发的。随着发展,越来越多公司和组织接受采用Prometheus,社区也十分活...

PeakFang-BOK
13分钟前
1
0
缓存与数据库的双写一致性问题

数据库与缓存的双写一致性问题 cache aside pattern 数据库与缓存的双写一致性 为什么是先删除缓存再更新数据库,而不是反过来 并发读写下的一致性问题 总结: 读请求和写请求串行化,串到一个...

grace_233
19分钟前
1
0
详解java并发包源码之AQS独占方法源码分析

AQS 的实现原理 学完用 AQS 自定义一个锁以后,我们可以来看一下刚刚使用过的方法的实现。 分析源码的时候会省略一些不重要的代码。 AQS 的实现是基于一个 FIFO 队列的,每一个等待的线程被封...

小刀爱编程
23分钟前
1
0
Golang中的panic和recover

func panic(interface{})和func recover() interface{}是Golang中用于错误处理的两个函数。 panic的作用就是抛出一条错误信息,从它的参数类型可以看到它可以抛出任意类型的错误信息。在函数...

xtof
27分钟前
1
0
Mybatis Mapper.xml 配置文件中 resultMap 节点的源码解析

相关文章 Mybatis 解析配置文件的源码解析 Mybatis 类型转换源码分析 Mybatis 数据源和数据库连接池源码解析(DataSource) Mybatis Mapper 接口源码解析(binding包) Mybatis 解析 SQL 源码...

tsmyk0715
33分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部