【问题标题】:How to read SMS data and Transfer it to the Document or CSV file如何读取 SMS 数据并将其传输到 Document 或 CSV 文件
【发布时间】:2019-02-27 03:18:36
【问题描述】:
我应该使用 SMS 数据开发一个移动应用程序,想使用 Skip-Gram 和 Bow 算法来收集数据。问题是,如何使用 Java 或 Javascript 读取 SMS 数据并将其传输到“文档文件”。是否有任何库或可以收集所有 SMS 数据的东西?
对不起,我是编程新手。
短信
Sample SMS
文档
“嘿宝贝这是你查看纳帕谷葡萄酒地图的第一条线索
b10 madonna state 的酒厂是什么 下一条线索 我最喜欢的是什么
乐队电台司令打开前门,看看门廊是什么
等你花你赢了”
【问题讨论】:
标签:
javascript
java
android
sms
document
【解决方案1】:
你需要短信权限,android:name="android.permission.READ_SMS"
文件夹名称收件箱或已发送
public List<Sms> getAllSms(String folderName) {
List<Sms> lstSms = new ArrayList<Sms>();
Sms objSms = new Sms();
Uri message = Uri.parse("content://sms/"+folderName);
ContentResolver cr = mActivity.getContentResolver();
Cursor c = cr.query(message, null, null, null, null);
mActivity.startManagingCursor(c);
int totalSMS = c.getCount();
if (c.moveToFirst()) {
for (int i = 0; i < totalSMS; i++) {
objSms = new Sms();
objSms.setId(c.getString(c.getColumnIndexOrThrow("_id")));
objSms.setAddress(c.getString(c
.getColumnIndexOrThrow("address")));
objSms.setMsg(c.getString(c.getColumnIndexOrThrow("body")));
objSms.setReadState(c.getString(c.getColumnIndex("read")));
objSms.setTime(c.getString(c.getColumnIndexOrThrow("date")));
lstSms.add(objSms);
c.moveToNext();
}
}
// else {
// throw new RuntimeException("You have no SMS in " + folderName);
// }
c.close();
return lstSms;
}
要在具有 SMS 权限的 Play 商店中发布应用程序,您必须清楚地说明为什么需要此权限以获取更多信息 https://www.xda-developers.com/google-play-developer-policy-call-log-sms/