私は連絡先テーブルから連絡先を読み込み、リスト変数にそれらのすべてを格納しようとしています。しかし、なぜそれがうまくいかないのかを考え出すことができません。実行時に強制終了します。連絡先はjsonオブジェクトを介してWebサーバーに送信することができます。すべての連絡先を連絡先データベースから一覧に読み込んで格納する方法
private static final String TABLE_CONTACTS = "contacts";
// contacts JSONArray
JSONArray contacts = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
List<contact> l=new ArrayList<contact>();
String query="SELECT * FROM"+ TABLE_CONTACTS;
DBHelper help= new DBHelper(getBaseContext());
SQLiteDatabase db=help.getWritableDatabase();
Cursor cursor = db.rawQuery(query, null);
if(cursor.moveToFirst())
{
do{
contact contact = new contact();
contact.setID(Integer.parseInt(cursor.getString(0)));
contact.setName(cursor.getString(1));
contact.setPhoneNumber(cursor.getString(2));
Toast.makeText(this,contact.name,Toast.LENGTH_LONG);
l.add(contact);
}
while(cursor.moveToNext());
}
とマニフェストファイルが2つのパーミッション
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_CONTACTS"/>
とgetWritableDatabaseにsqlitopenhelperを拡張するために使用されるDBHelperクラス..
class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "contactsManager";
// Contacts table name
private static final String TABLE_CONTACTS = "contacts";
DBHelper(Context context) {
super(context,DATABASE_NAME, null,1);
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
エラーログを送信してください。 – Sam
電話から連絡先を使用しようとしていますか? – ValayPatel
@ValayPatel ..はい、,,,アンドロイド携帯電話の定義済み連絡先から –