public class DemoActivity extends Activity implements OnClickListener {
private EditText name,input;
private Button submit ,send,button;
private String username,usernumber;
private void init() {
submit=(Button) findViewById(R.id.mail_submit);
send=(Button) findViewById(R.id.mail_send);
button=(Button) findViewById(R.id.button1);
name=(EditText) findViewById(R.id.main_name);
input=(EditText) findViewById(R.id.main_input);
final TextView tv=(TextView) findViewById(R.id.main_guishudi);
submit.setOnClickListener(this);
button.setOnClickListener(this);
send.setOnClickListener(this);
input.addTextChangedListener(new TextWatcher() {
// 输入的值 顺序值 开启值 以后 计算
public void onTextChanged(CharSequence s, int start, int before,
int count) {
if (s.length() > 2) {
String address = Addressdao.getAddress(
getApplicationContext(), s.toString());
// 获取归属地数据
tv.setText("归属地:" + address);
}
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
}
});
}
public void onClick(View v) {
String trim = input.getText().toString().trim();
String content = name.getText().toString().trim();
switch (v.getId()) {
case R.id.mail_submit:
if(TextUtils.isEmpty(trim)){
Toast.makeText(this, "电话号码不能为空", 0).show();
}else{
Intent intent = new Intent();
intent.setData(Uri.parse("tel:"+trim));
startActivity(intent);
break;
}
case R.id.mail_send:
if(TextUtils.isEmpty(trim)||TextUtils.isEmpty(content)){
Toast.makeText(this, "电话号码与内容不能为空", 0).show();
}else{
//获取短信管理对象
SmsManager message = SmsManager.getDefault();//获取短信管理对象
ArrayList<String> messages = message.divideMessage(content);
for(String msg:messages){
message.sendTextMessage(trim, null, msg, null, null);// //分别是短息发送目的地,短信中心,短信内容,发送报告,接受报告
//message.sendDataMessage(num, null, null, msg, null, null);
}
}
break;
case R.id.button1://获取联系人
startActivityForResult(new Intent(Intent.ACTION_PICK,
ContactsContract.Contacts.CONTENT_URI), 0);
}
}
//把結果返回
@Override
if (resultCode == Activity.RESULT_OK) {
}
}
}
数据库
public class Addressdao {
// 获取地址值 上下文 文件的名称
public static String getAddress(Context context, String number) {
String address = number;
// 存放到手机内存中 文件名称naddress.db
File file = new File(context.getFilesDir(), "naddress.db");
// 数据库的路径
SQLiteDatabase db = SQLiteDatabase.openDatabase(file.getAbsolutePath(),
null, SQLiteDatabase.OPEN_READONLY);
if (number.matches("^1[358]\\d{9}$")) {// 首值是1 第二为是3 5 8 还有九位
// 判断这个号码是手机号码 还是固定电话。11位;
if (db.isOpen()) {// 当开启数据库时,查询数据库值
String[] n = new String[] { number.substring(0, 7) };
Cursor cursor = db.rawQuery("select city from address_tb where _id=(select outkey from numinfo where mobileprefix=?)",
n);
if (cursor.moveToFirst()) {
address = cursor.getString(0);
}
cursor.close();// 关闭数据库与查询的值
db.close();
}
} else {// 固定电话
switch (number.length()) {
case 7:
address = "本地电话";
break;
case 8:
address = "本地电话";
break;
default:
if (number.length() > 4) {
String area = number.substring(0, 4);// 0-3
Cursor cursor = db.rawQuery(
"select city from address_tb where area=? limit 1",
new String[] { area });
if (cursor.moveToFirst()) {// 获取第一个
address = cursor.getString(0);// 查询城市的地址为1的
}
cursor.close();// 查询完后要把数据给关闭
area = number.substring(0, 3);// 获取地址的1-2个值
cursor = db.rawQuery(
"select city from address_tb where area=? limit 1",
new String[] { area });
if (cursor.moveToFirst()) {
address = cursor.getString(0);// 查询城市的地址为1的
}
cursor.close();
}
break;
}
}
db.close();
return address;// 返回地址
}
}