在android读取短信并进行相应的管理时,可以进行短信箱删除,但是这个删除先得到TheardId跟这个threadID进行删除短信
在getContentResolver进行查询。代码如下
用到权限:
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.WRITE_SMS"/>这个是写短信用到的。
写道
package com.jdjw.test;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.app.Activity;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
/**
*
* 读取第一条短信并删除
*
*/
public class TestSMSActivity extends Activity {
private Context mContext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.mContext = this;
/*
* 删除第一条短信
long id = getThreadId();
Uri mUri=Uri.parse("content://sms/conversations/" + id);
mContext.getContentResolver().delete(mUri, null, null);
*/
getSMSInfo();
}
/**
* 读取第一条短信并删除
* @return
*/
private long getThreadId() {
long threadId = 0;
String SMS_READ_COLUMN = "read";
String SORT_ORDER = "date DESC";//时间降序查找
int count = 0;
Cursor cursor = mContext.getContentResolver().query(
Uri.parse("content://sms/inbox"),
new String[] { "_id", "thread_id", "address", "person", "date",
"body" }, null, null, SORT_ORDER);
if (cursor != null) {
try {
count = cursor.getCount();
if (count > 0) {
cursor.moveToFirst();
threadId = cursor.getLong(1);
}
} finally {
cursor.close();
}
}
Log.i("threadId", String.valueOf(threadId));
return threadId;
}
/**
* 得到全部短信
*/
private void getSMSInfo(){
Cursor cur = mContext.getContentResolver().query(Uri.parse("content://sms/inbox"), new String[]{
"_id","address","person","date","body","type"
},null,null, "date DESC");
StringBuilder smsBuilder = new StringBuilder();
if (cur.moveToFirst()) {
String name;
String phoneNumber;
String smsbody;
String date;
String type;
int nameColumn = cur.getColumnIndex("person");
int phoneNumberColumn = cur.getColumnIndex("address");
int smsbodyColumn = cur.getColumnIndex("body");
int dateColumn = cur.getColumnIndex("date");
int typeColumn = cur.getColumnIndex("type");
do{
name = cur.getString(nameColumn);
phoneNumber = cur.getString(phoneNumberColumn);
smsbody = cur.getString(smsbodyColumn);
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
Date d = new Date(Long.parseLong(cur.getString(dateColumn)));
date = dateFormat.format(d);
int typeId = cur.getInt(typeColumn);
if(typeId == 1){
type = "接收";
} else if(typeId == 2){
type = "发送";
} else {
type = "";
}
smsBuilder.append("[");
smsBuilder.append(name+",");
smsBuilder.append(phoneNumber+",");
smsBuilder.append(smsbody+",");
smsBuilder.append(date+",");
smsBuilder.append(type);
smsBuilder.append("] ");
if(smsbody == null) smsbody = "";
}while(cur.moveToNext());
}
System.out.println(smsBuilder.toString());
}
}
分享到:
相关推荐
android短信操作实例代码
该app用于将误删除的短信恢复。以txt的形式保存在手机里
Android手机短信/彩信管理-包括了已接收短信修改, 进入初始页面 EntryPage,传递数据: 1 标题,即该viewtitem的名称 2 类型,短信为0,彩信为1,所有会话为2, 点击短信时 传递标题“短信”,传递0,进入...
android上一个简单的短信发送程序的源代码,代码量不多,非常适合初学者下载下来进行学习,用以了解android上的短信操作机制。
短信转发工具 截图展示 功能概述 总闸开关 在主页上面,关闭后不进行任何转发 自动转发短信至目标手机号 只需开启转发转发至短信,并且设置目标手机号就可实现自动转发。 自动转发短信至目标邮箱 开启转发...
Android下发送短信的简单案例,熟悉Android下短信操作的api。
android智能短信源码,内容包括联系人与短信content的数据库操作,以及如何复用android sdk源码去重写系统底层应用。
android APP连接后台,接收TCP\IP指令,执行收发短信操作,读取短信后回复后台执行结果,读写文件夹记录APP执行LOG。注:收发短信、读写文件夹需要手机赋予权限,注意杀毒软件提示,此代码为安全代码,请放心使用
android短信操作,实现发送,接收与拦截
可以对sim卡中的联系人和短信息,进行增删改查操作。可以查看sim卡的一些参数信息。
用于与博客匹配的资源,简单学习Android 中读取通讯录的操作,方便大家进行学习和思考。仅用于学习参考,谢谢
比如搜索,全选、反选和删除等在实际开发中可能需要实现的功能,本篇博客是小巫从一个别人开源的一个项目抽取出来的部分内容,把它给简化出来,可以让需要的朋友清楚知道如何对Android数据库操作,异步查询数据库...
AT命令操作GSM短信猫收发短信,支持长短信收发,收长短信自动合并成一条短信。
Android项目实现短信验证码自动填写功能,避免了人工第二次操作,提高了用户体验。
Android短信读取,插入,删除,更新
)android4.4对短信做了限制,要将这个应用设置为默认短信应用才可以,修改短信可以直接点击短信-收件箱-然后点击具体的短信内容即可弹出修改框,项目需要短信和联系人的读取权限。操作的时候别忘了授权。代码量不是...
模拟短信的插入,在你需要对短信进行删除操作导致手机短信不够时,这个代码可以帮你生成短信,供测试短信的删除操作,代码很简单,几行代码,部分手机可以模拟成短信的接收,会弹出系统来短信的提示
部分,Android的连接部分,Android的传感器系统,Android应用开发揭秘(含代码),Android 电话与短信应用,Android斗地主[牌 桌实现源码],Android核心分析,Android开发权威指南. Android开发指南中文版-应用程序框架,...
部分,Android的连接部分,Android的传感器系统,Android应用开发揭秘(含代码),Android 电话与短信应用,Android斗地主[牌 桌实现源码],Android核心分析,Android开发权威指南. Android开发指南中文版-应用程序框架,...
主要介绍了Android编程实现短信收发及语音播报提示功能,结合实例形式分析了Android实现短信的接收、发送以及相应的语音播报提示功能相关操作技巧,需要的朋友可以参考下