2010-11-28 2 views
0

Я пытаюсь показать имя и номер контакта из телефонной книги Android, у меня есть один контакт, сохраненный в моем AVD. может кто-нибудь сказать мне, что случилось с этим кодом, пожалуйста ... это показывает приложение перестало работать Пожалуйста, попробуйте еще раз ... заранее спасибо ...Приложение неожиданно перестало работать. Повторите попытку

public class get extends Activity { 
     private void getColumnData(Cursor cur) 
    { 
     if(cur.moveToFirst()) 
     { 
      int numi=cur.getColumnIndex(People.NUMBER); 
      int namei=cur.getColumnIndex(People.NAME); 
      String name,num; 
      do{ 
       name=cur.getString(namei); 
       num=cur.getString(numi); 

      }while(cur.moveToNext()); 
     } 
    } 
    @Override 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     Uri u=People.CONTENT_URI; 
     String[] proj=new String[]{People.NAME,People.NUMBER}; 
     Cursor cur=managedQuery(u, proj, null, null, null); 
     getColumnData(cur); 
     TextView tv=new TextView(this); 
     tv.setText("First step"); 
     setContentView(tv); 
    } 
} 
+1

Пожалуйста, нам кнопку «код» для форматирования кода (один со всеми мало 0 и 1.) ... это просто сдвигает все четыре пространства. – sje397 2010-11-28 13:42:21

ответ

0

Попробуйте использовать android.provider.ContactsContract.Contacts;

Также поместите READ_CONTACTS разрешение в файле манифеста

0

импорт android.provider.ContactsContract; импорт android.provider.ContactsContract.Contacts;

ListView lv = (ListView) findViewById (R.id.list_view);

Uri uri=Contacts.CONTENT_URI; 

String [] projection=new String[]{ContactsContract.Contacts._ID,ContactsContract.Contacts.DISPLAY_NAME}; 
Cursor c=managedQuery(uri,null, null, null, null); 
String[] from=new String[]{ContactsContract.Contacts._ID,ContactsContract.Contacts.DISPLAY_NAME}; 
int[] to=new int[]{android.R.id.text1,android.R.id.text2}; 
SimpleCursorAdapter sAdapter=new SimpleCursorAdapter(this,android.R.layout.simple_list_item_2, c, from, to); 
lv.setAdapter(sAdapter); 

Также поместите в файле манифеста