2013-02-16 165 views
0

我已經創建了一個應用程序,它向我展示了內容提供商的所有列「內容://聯繫人/人」。其中一個領域是times_contacted。所以,我做了一個應用程序來顯示顯示名稱和times_contacted。我瞭解ContactContract。但是我想知道,休閒代碼不會顯示帳戶詳細信息。該應用程序在JellyBean模擬器上正常工作,但在運行冰淇淋三明治的手機上,應用程序顯示空白活動,而在仿真器上顯示聯繫人列表。另一件我想知道的事情是,在使用CursorLoader時,我可以遍歷查詢結果,因爲我無法獲取任何遊標引用。我應該分開使用ContentResolver嗎? 這是我的應用程序的代碼。我已經包含了READ_CONTACT權限。應用程序不顯示聯繫人

package legacy_systems.contactsdisplay; 

import android.net.Uri; 
import android.os.Bundle; 
import android.app.ListActivity; 
import android.app.LoaderManager.LoaderCallbacks; 
import android.content.CursorLoader; 
import android.content.Loader; 
import android.view.Menu; 
import android.widget.SimpleCursorAdapter; 
import android.widget.Toast; 
import android.database.Cursor; 
public class MainActivity extends ListActivity implements LoaderCallbacks<Cursor>{ 
    SimpleCursorAdapter madapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     madapter = new SimpleCursorAdapter(this, 
              android.R.layout.simple_list_item_2, 
              null, 
              new String[]{"display_name","times_contacted" }, 
              new int[]{android.R.id.text1, android.R.id.text2},0); 
     setListAdapter(madapter); 

     getLoaderManager().initLoader(0, null, this); 
     Toast.makeText(this, "Done", Toast.LENGTH_LONG).show(); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 
    public Loader<Cursor> onCreateLoader(int id, Bundle args) { 
     Uri baseUri = Uri.parse("content://contacts/people"); 
     return new CursorLoader(this, baseUri,null,null,null,null); 
     // TODO Auto-generated method stub  
    } 
    @Override 
    public void onLoadFinished(Loader<Cursor> arg0, Cursor arg1) { 
     // TODO Auto-generated method stub 
     madapter.swapCursor(arg1); 
    } 



    @Override 
    public void onLoaderReset(Loader<Cursor> arg0) { 
     // TODO Auto-generated method stub 
     madapter.swapCursor(null); 
    } 

} 

回答

0

那麼,在遍歷從查詢聯繫內容提供者獲得的遊標時,我得知遊標是空的。它沒有任何行。所以,沒有機會被展示。

相關問題