Имя отправителя SMS отображается как labuser в приложении SMS по умолчанию

#android

#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 не является кондиционером на моей машине разработки, и это происходит только с соответствующими SMS-сообщениями. Я не могу определить источник этого.

Спасибо Himanshu

Ответ №1:

Предоставление ему разрешения READ_CONTACTS исправило это. То, что мое приложение, считывающее SMS без соответствующих разрешений, могло испортить стандартное, было странным.