eclipse的基本android:进程android.process.acore意外停止了

时间:2012-02-04 03:28:43

标签: android eclipse

我已经开始从Android开发书中做一些练习了。 我所做的只是

  • 创建项目

  • 输入一些代码

    package com.wuhu.testapps;
    
    import android.app.Activity;
    import android.app.ListActivity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    
    public class AndroidbasicsActivity extends ListActivity {
        String tests[] = {"LifeCycleTest", "SingleTouchTest","MultiTouchTest"};
    
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            //setContentView(R.layout.main);
            setListAdapter( new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,tests));        
    }
    
        protected void onListItemClick( ListView list, View view, int position, long id)
    {    
        super.onListItemClick(list, view, position, id );
        String testName = tests[position];
        try
        {
            Class clazz = Class.forName("com.wuhu.testapps." + testName);
            Intent intent = new Intent( this, clazz );
            startActivity(intent);
        }
        catch( ClassNotFoundException e)
        {
            e.printStackTrace();
        }
      }
    }   
    
  • 以Android应用程序运行

  • VM在后台启动活动,但错误一直出现'进程android.process.acore意外停止'强制关闭。

logcat中的前几行错误如下:

02-04 03:05:21.218: ERROR/ContactsProvider(343): Cannot start provider
02-04 03:05:21.218: ERROR/ContactsProvider(343): java.lang.IllegalStateException: error upgrading the database to version 353
02-04 03:05:21.218: ERROR/ContactsProvider(343):  at com.android.providers.contacts.ContactsDatabaseHelper.onUpgrade(ContactsDatabaseHelper.java:1545)
02-04 03:05:21.218: ERROR/ContactsProvider(343):  at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:132)
02-04 03:05:21.218: ERROR/ContactsProvider(343):  at com.android.providers.contacts.ContactsDatabaseHelper.getWritableDatabase(ContactsDatabaseHelper.java:2550)
02-04 03:05:21.218: ERROR/ContactsProvider(343):  at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:187)
02-04 03:05:21.218: ERROR/ContactsProvider(343):  at com.android.providers.contacts.LegacyApiSupport.<init>(LegacyApiSupport.java:525)

我不确定出了什么问题,任何人都可以帮助我吗? 尝试寻找答案,但有用。 提前谢谢,

4 个答案:

答案 0 :(得分:2)

我通过以下方法修复它。

Android虚拟设备管理器&gt;新

重新制作Android虚拟设备。旧设置删除。

答案 1 :(得分:1)

来自Exception,它看起来像sqlite导致这个问题,Anriod有机制,它可以自动更新你的数据库,如果你覆盖onUpgrade方法,就像下面这样:

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  String sql = "DROP TABLE IF EXISTS " + TABLE_NAME;
  db.execSQL(sql);
  onCreate(db);
}

答案 2 :(得分:1)

问题不在于你的代码。即使您直接使用虚拟设备,也应该得到相同的错误。

创建新的虚拟设备效果很好。确保删除旧的。

答案 3 :(得分:0)

请尝试以下操作,从以下行中删除评论。

//setContentView(R.layout.main);setContentView(R.layout.main);

然后再试一次。