- 浏览: 941273 次
- 性别:
- 来自: 重庆
文章分类
- 全部博客 (453)
- Windows phone 7 (0)
- Andriod (47)
- iPhone (1)
- Web (30)
- J2EE (34)
- stucts 2学习笔记 (34)
- 开发项目 (3)
- spring学习笔记 (24)
- EJB学习笔记 (6)
- Hibernate学习笔记 (15)
- JPA学习笔记 (8)
- Jsp (11)
- ajax (7)
- 异常收集模块 (1)
- jquery (2)
- phoneGap (2)
- jquery Mobile (0)
- java面试总结 (5)
- Object-C (0)
- javascript (6)
- Eclipse (5)
- 支付集成 (2)
- Weblogic (1)
- Dubbox (5)
- Redis (10)
- linux (21)
- Codis (2)
- React Native (0)
- Mysql (6)
- Docker (3)
- 自动化部署 (1)
- 项目Bug管理平台 (2)
- 负载均衡 (1)
- Mycat (2)
- Java基础知识 (16)
- 数据库 (7)
- Maven (17)
- Kafka (21)
- logs (2)
- 大并发 (2)
- 消息中间件 (2)
- 分布式锁 (3)
- 算法 (4)
- 数字证书原理,公钥私钥 (0)
- 数字证书原理 (1)
- 公钥私钥 (1)
- zookeeper (4)
- Hbase (9)
- Hadoop (2)
- storm (2)
- 通信协议 (1)
- Hive (3)
- git (1)
- JVM (2)
- 大数据相关算法 (1)
- idea (5)
- 将博客搬至CSDN (1)
- 设计模式 (2)
- 表达式 (1)
- 代码审查工具 (0)
- 开源项目 (1)
- PyCharm (0)
- python (6)
- Kubernetes (1)
- swagger (1)
- Maven中mirrors和repository的关系 (0)
- RabbitMQ (3)
- redisson (1)
- k8s (2)
- Mac (1)
最新评论
-
misisipi101:
假设库已经分为32个,那么要扩展到64个,怎样做呢
订单分库分表实践总结以及关键步骤 -
mfkxk298:
简单明了的例子,解决了问题,谢谢啦!
关于ListView中notifyDataSetChanged()刷新数据不更新原因 -
whbwang:
" target="_blank" ...
java web开发 高并发处理 -
suguoqian:
...
java web开发 高并发处理 -
xiangnanyujing:
Dubbox+Redis3.0+Spring+Hibernate+zookeeper实现消息推送核心搭建
自己研究:
package com.liyong.data;
import java.util.Date;
public class MyMessage {
private int messageNum;
private String message;
private String phonenumber;
private String name;
private String date;
private String type;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getMessageNum() {
return messageNum;
}
public void setMessageNum(int messageNum) {
this.messageNum = messageNum;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getPhonenumber() {
return phonenumber;
}
public void setPhonenumber(String phonenumber) {
this.phonenumber = phonenumber;
}
public MyMessage() {
}
public MyMessage(int messageNum, String message, String phonenumber) {
this.messageNum = messageNum;
this.message = message;
this.phonenumber = phonenumber;
}
public MyMessage(String date,String name, String message, String phonenumber,String type) {
this.type=type;
this.date = date;
this.name = name;
this.message = message;
this.phonenumber = phonenumber;
}
}
方法:
public static ArrayList<MyMessage> getSmsInfos(Context context) {
final String SMS_URI_INBOX = "content://sms/inbox";// 收信箱
ArrayList<MyMessage> mymessages=null;
try {
ContentResolver cr = context.getContentResolver();
String[] projection = new String[] { "_id", "address", "person","body", "date", "type" };
Uri uri = Uri.parse(SMS_URI_INBOX);
Cursor cursor = cr.query(uri, projection, null, null, "date desc");
mymessages=new ArrayList<MyMessage>();
MyMessage message=null;
while (cursor.moveToNext()) {
message = new MyMessage();
// -----------------------信息----------------
int nameColumn = cursor.getColumnIndex("person");// 联系人姓名列表序号
int phoneNumberColumn = cursor.getColumnIndex("address");// 手机号
int smsbodyColumn = cursor.getColumnIndex("body");// 短信内容
int dateColumn = cursor.getColumnIndex("date");// 日期
int typeColumn = cursor.getColumnIndex("type");// 收发类型 1表示接受 2表示发送
String nameId = cursor.getString(nameColumn);
String phoneNumber = cursor.getString(phoneNumberColumn);
String smsbody = cursor.getString(smsbodyColumn);
Date d = new Date(Long.parseLong(cursor.getString(dateColumn)));
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd " + "\n" + "hh:mm:ss");
String date = dateFormat.format(d);
// --------------------------匹配联系人名字--------------------------
Uri personUri = Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI,phoneNumber);
Cursor localCursor = cr.query(personUri, new String[] {PhoneLookup.DISPLAY_NAME, PhoneLookup.PHOTO_ID,PhoneLookup._ID }, null, null, null);
System.out.println(localCursor.getCount());
System.out.println("之前----"+localCursor);
if (localCursor.getCount()!=0) {
localCursor.moveToFirst();
System.out.println("之后----"+localCursor);
String name = localCursor.getString(localCursor.getColumnIndex(PhoneLookup.DISPLAY_NAME));
message.setName(name);
}else{
message.setName(phoneNumber);
}
localCursor.close();
message.setDate(date);
message.setMessage(smsbody);
message.setPhonenumber(phoneNumber);
mymessages.add(message);
}
} catch (SQLiteException e) {
e.printStackTrace();
}
return mymessages;
}
发表评论
-
App开发一些总结
2016-04-05 17:48 2604架构因人而异,不同的架构师大多会有不同的看法;架构也因项目 ... -
java 实现微信搜索附近人功能
2015-03-25 18:07 4943最近给andorid做后台查询数据功能,有一个需求是模仿微信 ... -
重庆APP开发 重庆Android 重庆Ios 爬虫科技 重庆爬虫科技
2014-10-06 12:03 9<!--[if gte mso 9]><x ... -
android 操作文件
2012-08-30 11:15 1064package com.liyong; import jav ... -
Android中的日历操作
2012-08-29 13:01 3030日历的操作方法,这里主要用到了ContentProiver的知 ... -
android获取CMNET、WIFI、CMWAP联网状态
2012-08-29 12:40 5870private static final int CMNET= ... -
android实现手势缩放、移动图片
2012-08-28 19:37 9302新建一个触摸监听器类 package com.liyong. ... -
怎样把信息绘制到图片中并且保存到本地硬盘上
2012-08-27 12:53 1388自己研究吧。。。 //解释一下由于我们不是绘制到手机屏幕上所 ... -
关于ListView中notifyDataSetChanged()刷新数据不更新原因
2012-08-26 21:41 50345使用Listview的时候: 当要动态显示更改后的数据(例如数 ... -
android中获取联系人相关信息
2012-08-26 18:42 1696自己看........... public static ... -
修改Android中strings.xml文件, 动态改变数据
2012-08-24 18:25 10868有些朋友可能会动态的修改Android中strings.xml ... -
android内存泄漏
2012-07-25 21:04 1719尽量不要使用setImageBitmap或setImageRe ... -
将程序安装到SD卡
2012-04-28 22:11 890Android 2.2系统的一大改进就是通过Move to S ... -
一个很好的加密解密字符串
2012-04-28 22:11 1148package net.sf.andhsli.hotspotl ... -
获取手机位置
2012-04-28 22:11 1016private double[] getGPS() { Lo ... -
获取手机位置
2012-05-04 09:39 1113private double[] getGPS() { Lo ... -
查看内存存储
2012-05-03 10:05 1107import java.io.File; import a ... -
获取本机电话号码
2012-05-03 10:04 1124private String getMyPhoneNumber ... -
发送彩信
2012-05-03 10:04 1018Uri uri = Uri.parse(\"cont ... -
发送彩信
2012-05-02 09:26 856Uri uri = Uri.parse(\"cont ...
相关推荐
`cursor`对象将包含所有短信的记录,你可以通过遍历它来获取短信内容,例如短信的发送者、接收者、时间、内容等字段。 接着,我们讨论如何实现实时刷新短信内容。Android提供了BroadcastReceiver,可以监听系统广播...
二、获取短信内容 1. 查询短信: 你可以使用`ContentResolver`和`Uri`来查询短信数据库。通常,短信存储在`content://sms/`这个URI下,分为收件箱(inbox)、草稿箱(drafts)、发件箱(sent)和已发送(outbox)四...
在Android平台上,获取短信和通话记录信息是...总结,获取短信和通话记录信息是Android开发中的常见任务,涉及到内容提供者、Cursor和权限管理等关键概念。正确理解和使用这些技术对于构建功能丰富的通讯应用至关重要。
获取短信内容需要用到`SmsManager`类和`ContentResolver`。同样,你需要在`AndroidManifest.xml`中声明`READ_SMS`权限: ```xml <uses-permission android:name="android.permission.READ_SMS" /> ``` 接着,通过`...
以上就是Android获取短信中心号码的基本步骤和知识点。在实际开发中,你可能还需要处理各种异常情况,例如权限问题、数据为空等。同时,对于Android的不同版本,可能需要适配不同的API接口,以确保应用在不同设备上...
在Android系统中,获取短信内容是一项常见的功能,例如在开发某些需要验证用户手机的APP时。这个主题主要涉及Android的Content Provider、权限管理和SQLite数据库的知识点。以下将详细阐述这些内容。 首先,Android...
当系统收到短信时,会发出一个action名称为android.provider.Telephony.SMS_RECEIVED的广播Intent,该Intent存放了接收到的短信内容,使用名称“pdus”即可从Intent中获取短信内容。最好使用动态注册的方法,去注册...
以上就是从给定的代码中解析出的Android获取短信的主要知识点,包括Content Resolver、Content Provider Uri、查询操作、Cursor使用以及数据处理等。这些知识对于开发Android应用,特别是涉及到读取或管理用户数据的...
在Android系统中,获取短信中心号码是一个常见的任务,特别是在开发与短信相关的应用程序时。这个"android 获取短信中心号 Demo"提供了实现这一功能的实例代码,为开发者提供了学习和实践的平台。下面,我们将深入...
3. **准备短信内容**:确定要发送的短信内容和接收者的电话号码。 4. **发送短信**:调用SmsManager的sendTextMessage()方法,传入电话号码、短信内容和发送状态回调的BroadcastReceiver。 5. **处理发送状态**:...
在Android平台上,获取手机内的所有短信是一项常见的任务,特别是在开发涉及短信功能的应用程序时。本文将详细介绍如何在Android中读取短信,以及涉及到的相关知识点。 首先,为了读取短信,我们需要使用Android...
【Android开发获取短信内容并截取短信】 在Android开发中,获取短信内容并截取短信涉及到以下几个关键知识点: 1. **广播接收器(BroadcastReceiver)**:在Android中,广播接收器是一种重要的组件,用于监听系统...
综上所述,实现“Android即时读取短信内容”功能,主要涉及权限管理、广播接收器的创建与注册、短信数据的解析以及业务逻辑处理。通过这个小Demo,开发者可以了解如何在Android应用中集成这一功能,提升用户体验。
获取短信需请求`READ_SMS`权限。 - 权限申请:在AndroidManifest.xml中声明`READ_SMS`权限。 - 查询短信:使用`ContentResolver.query()`,指定`Telephony.Sms.Inbox.CONTENT_URI`或`Telephony.Sms.Outbox.CONTENT...
在Android中,短信权限(READ_SMS)用于读取短信内容,这对于许多需要短信验证或短信服务的应用而言是必不可少的。但MIUI中的通知类短信权限则指代另外一种特别的情况,它涉及到的是系统对短信通知类别的特殊处理...
2、从获得的内容中解析出短信发送者和短信内容 3、在Activity中注册广播 4、添加接收短信权限 下面放上具体的代码 activity_main.xml文件用于显示短信发送者号码和显示短信内容 <?xml version=1.0 encoding=...
1. **获取短信内容**:Android系统的短信存储在SQLite数据库中,通常位于`data/data/com.android.providers.telephony/databases/mmssms.db`。然而,由于权限问题,直接访问这个数据库是不允许的。所以,我们需要...
在`onReceive`方法中,你需要解析接收到的短信内容,寻找并提取其中的手机号码。由于不同的运营商回复格式可能不同,所以这一步可能需要针对特定的运营商进行定制。例如,你可以使用正则表达式来匹配手机号码的模式...
`SmsManager`类用于发送短信,而`Uri.SMS_CONTENT_URI`则是获取短信内容的URI。你可以使用`CursorLoader`或直接执行`ContentResolver.query()`来查询短信表,获取短信的发送者、接收者、时间、内容等信息。同时,...