android studio 读取短信
程序员文章站
2022-03-11 15:45:06
...
配置信息manifes中加入权限
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
之后main函数中 的代码
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getContentResolver().registerContentObserver(Uri.parse("content://sms"),true,
new MyObserver(new Handler()));
}
private final class MyObserver extends ContentObserver {
public MyObserver(Handler handler){
super(handler);
}
@Override
public void onChange(boolean selfChange) {
Cursor cursor=getContentResolver().query(Uri.parse("content://sms/inbox"),
null,null,null,null);
while (cursor.moveToNext()){
StringBuilder sb=new StringBuilder();
sb.append("address=").append(cursor.getString(cursor.getColumnIndex("address")));
sb.append(";subject").append(cursor.getString(cursor.getColumnIndex("subject")));
sb.append(";body").append(cursor.getString(cursor.getColumnIndex("body")));
sb.append(";time").append(cursor.getLong(cursor.getColumnIndex("date")));
System.out.println("用户发送出去的信息"+sb.toString());
}
}
}
}
在虚拟机中 开启sms权限
打开之后,我们打开 写的 myapplication
并且用虚拟机发送信息
然后查看logcat 中debug
就可以查到 信息
数据库的位置
上一篇: 今日头条文字渐变特效项目实战(二):视图动画与属性动画
下一篇: 新人报道 iteye生活
推荐阅读
-
Android Studio Gradle依赖冲突解决方法
-
android中判断sim卡状态和读取联系人资料的方法
-
使用android studio打jar包并且集成第三方开源库(修改补充篇)
-
Android Studio 实现九宫格功能
-
如何在android studio项目中导入开源库
-
Android开发之获取短信验证码后按钮背景变化并且出现倒计时
-
Android 详解Studio引用Library与导入jar
-
Android ContentProvider查看/读取手机联系人实例
-
Mac OS下为Android Studio编译FFmpeg解码库的详细教程
-
Android实现短信加密功能(发送加密短信、解密本地短信)