SMS Sender的名称在默认SMS应用程序中显示为labuser

时间:2011-06-07 00:13:10

标签: android

我在我的Android 2.2手机上安装了以下代码,发件人的名字显示为labuser,用于显示某些消息: -

public class SMSReaderActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    ListView myListView = (ListView) findViewById(R.id.myListView);
    final ArrayList<String> smses = new ArrayList<String>();
    final ArrayAdapter<String> aa = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, smses);
    myListView.setAdapter(aa);
    Context context = getApplicationContext();
    Cursor cursor = context.getContentResolver().query(
            Uri.parse("content://sms/inbox"),
            new String[] { "address", "person", "date", "body" }, null,
            null, "date desc");
    cursor.moveToFirst();
    int count = cursor.getCount();
    for (int j = 0; j < count; j++) {
        String msg = cursor.getString(0) + ", " + cursor.getString(1)
                + ", " + cursor.getLong(2) + ", " + cursor.getString(3);
        Log.w("SMS", "Read SMS:" + msg);
        if (cursor.getString(3).indexOf("rbs") >= 0) {
            smses.add(msg);
            Log.w("SMS", "Added");
        }
        cursor.moveToNext();
    }
    cursor.close();
    aa.notifyDataSetChanged();
}

labuser不是我的开发机器上的a / c,只有匹配的smses才会发生这种情况。我无法弄清楚这个来源。

由于 人士Himanshu

1 个答案:

答案 0 :(得分:0)

给它READ_CONTACTS权限修复它。我的应用程序,没有适当的权限阅读短信,可能会搞砸默认的那个很奇怪。