Estoy usando el enfoque estándar que aprendí del ejemplo popular de la libreta para construir mi primera aplicación .
Pero me quedé atrapado en un problema extraño.
El archivo de base de datos SQLite (.db) no se está creando en/data/data/package/databases. He verificado el archivo de manifiesto y el archivo OpenHelper desde el desarrollador de Android HeadFirst. Libro (lo estoy usando como referencia) pero no pude averiguar por qué no se creó el archivo de la base de datos.
¿Hay algún permiso especial o algo que necesitemos para ponerlo en funcionamiento?
Lo extraño es que funciona bien para ejemplos precargados. significa que el archivo '.db' se creó para el ejemplo del bloc de notas, pero cuando lo intento, falla. :(
aquí son mis archivosbase de datos sqlite no creada
paquete -. Database.test
1. AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<uses-sdk android:minSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".Database_testActivity"
android:label="@string/app_name" >
</activity>
</application>
2.TestOpenHelper.java
package database.test;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class TestOpenHelper extends SQLiteOpenHelper {
TestOpenHelper(Context context){
super(context,"mydb.db",null,1);
}
@Override
public void onCreate(SQLiteDatabase database){
database.execSQL("create table test_1 " + " (field1 integer primary key, field2 integer);");
}
public void onUpgrade (SQLiteDatabase database, int oldVersion, int newVersion){
database.execSQL("drop table if exists test1");
onCreate(database);
}
}
3.Database_testActivity.java
package database.test;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ListView;
public class Database_testActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView listview = (ListView)findViewById(R.id.test_list);
TestAdapter ta = new TestAdapter();
listview.setAdapter(ta);
TestOpenHelper openHelper = new TestOpenHelper(this);
}
}
Sé que es una pregunta muy básica, pero yo he estado tratando de resolver esto por últimos quince días y ahora estoy completamente frustrado.
Por favor, ayuda ..
Debe usar 'Log' en varios lugares y monitorear' logcat' para rastrear lo que está sucediendo. También puedo estar equivocado, pero ¿ha intentado usar "mydb" para el nombre db en el constructor 'TestOpenHelper'? Como dije, puedo estar equivocado, pero no puedo evitar sentir que usar una extensión de nombre de archivo (como en "mydb.db") podría causar problemas. – Squonk
puede arrojar algo de luz sobre 'usar Log'. He intentado varios nombres, pero no pasa nada. gracias – Bond
también todas las aplicaciones. in/data/data comienza con com.android.something pero el mio no. ¿puede ser la razón de mi problema? – Bond