rendered paste bodypackage com.example.myandroid;import android.app.*;import android.view.*;import android.widget.*;import android.os.*;import android.content.*;import android.content.res.*;import android.graphics.drawable.*;import android.database.*;import android.database.sqlite.*;import android.util.*;import java.util.*;class DatabaseManager extends SQLiteOpenHelper { public final String TAG = "com.example.myandroid.DatabaseManager"; public final String DBNAME = "MyDatabaseName"; public final String DBTABLE = "serverlist"; DatabaseManager(Context context) { // calls the super constructor, requesting the default cursor factory. super(context, "fhs.db", null, 1); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("CREATE TABLE IF NOT EXISTS " + DBTABLE + " ( _id INTEGER PRIMARY KEY AUTOINCREMENT, title VARCHAR(32), url TEXT);"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // Logs that the database is being upgraded Log.w(TAG, "Upgrading database from version " + oldVersion + " to " + newVersion + ", which will destroy all old data"); // Kills the table and existing data db.execSQL("DROP TABLE IF EXISTS " + DBTABLE); // Recreates the database with a new version onCreate(db); }}--- and usage:package com.example.myandroid;import android.app.Activity;import android.graphics.*;import android.graphics.drawable.*;import android.view.*;import android.view.LayoutInflater.Factory;import android.view.animation.*;import android.widget.*;import android.widget.AdapterView.OnItemClickListener;import android.os.*;import android.content.*;import android.util.*;import android.database.*;import android.database.sqlite.*;import android.app.AlertDialog.Builder;import android.app.AlertDialog;import android.app.Dialog;import java.io.*;import java.util.*;import org.json.*;import org.apache.http.*;import org.apache.http.client.*;import com.example.myandroid.Connection;public class Settings_EditEntry extends Activity { private final String TAG = "Settings_EditEntry"; private static DatabaseManager dbManager; private static SQLiteDatabase db; private long server_id; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.settings_editentry); if( dbManager == null ) dbManager = new DatabaseManager(this); if( db == null ) db = dbManager.getWritableDatabase(); Bundle params = getIntent().getExtras(); String action = params.getString("action"); if( action.equals("edit") ) { server_id = params.getLong("server_id"); Cursor cur = db.query(dbManager.DBTABLE, new String[] {"title", "url"}, "_id=?", new String[] {String.valueOf(server_id)}, null, null, null); cur.moveToFirst(); String title = cur.getString(0); String url = cur.getString(1); EditText w_title = (EditText)findViewById(R.id.settings_editentry_title); EditText w_url = (EditText)findViewById(R.id.settings_editentry_url); w_title.setText(title); w_url.setText(url); Button b = (Button)findViewById(R.id.settings_editentry_button_delete); b.setVisibility(View.VISIBLE); cur.close(); } else if( action.equals("new") ) { server_id = 0; } } @Override public void onDestroy() { super.onDestroy(); } private final int CONFIRM_DELETE = 1; protected Dialog onCreateDialog(int id) { switch( id ) { case CONFIRM_DELETE: AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage("This action cannot be undone. Are you sure you wish to delete this entry?") .setCancelable(false) .setPositiveButton("Yes", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { doDelete(); } }) .setNegativeButton("No", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { dialog.cancel(); } }); AlertDialog alert = builder.create(); return alert; default: } return null; } public void createEntry(String title, String url) { ContentValues vals = new ContentValues(); vals.put("title", title); vals.put("url", url); db.insert(dbManager.DBTABLE, null, vals); } public void editEntry(long server_id, String title, String url) { ContentValues vals = new ContentValues(); vals.put("title", title); vals.put("url", url); db.update(dbManager.DBTABLE, vals, "_id=?", new String[] { String.valueOf(server_id) } ); } public void btnSave(View v) { EditText w_title = (EditText)findViewById(R.id.settings_editentry_title); EditText w_url = (EditText)findViewById(R.id.settings_editentry_url); String title = w_title.getText().toString(); String url = w_url.getText().toString(); if( server_id == 0 ) { createEntry(title, url); } else { editEntry(server_id, title, url); } Intent in = new Intent(); in.putExtra("invalid", true); setResult(1, in); finish(); } public void doDelete() { db.delete(dbManager.DBTABLE, "_id=?", new String[] { String.valueOf(server_id) }); Intent in = new Intent(); in.putExtra("invalid", true); setResult(1, in); finish(); } public void btnDelete(View v) { showDialog(CONFIRM_DELETE); } public void btnCancel(View v) { finish(); }