我正在使用此代码从Emulator中检索SMS。之后我需要将其发布到DropBox。我将一些消息保存到Emulator,它检索了两件事Number和Body。在检索时它显示了 错误的数字但正确的身体。如何更正数字,我将数字保存到变量数字。我的代码在这里,我使用的是2.1版本。
码
ContentResolver cr = getContentResolver();
Cursor c = getContentResolver().query(Uri.parse("content://sms/inbox"), null, null, null, null);
while(c.moveToNext()){
Number = c.getInt(c.getColumnIndexOrThrow("address"));
Body = c.getString(c.getColumnIndexOrThrow("body")).toString();
smslist.add( Number + ":" +"\n"+ Body);
}
itemAdapter.notifyDataSetChanged();
c.close();
任何解决方案?
答案 0 :(得分:1)
在您使用的代码中
Number = c.getInt(c.getColumnIndexOrThrow("address"));
使用c.getString(c.getColumnIndexOrThrow("address"))
方法代替getInt()
方法
请参阅以下链接,SMS uri中的类型列
答案 1 :(得分:0)
将地址视为字符串而不是Int。
我认为应该解决这个问题。
String str = cursor.getString(c.getColumnIndexOrThrow(“address”));
的问候,
dattatray。