編輯:Android開發教程
在開發過程中,有時候,預先創建好數據庫比在程序運行時創建數據庫更加地高效。舉個例子,你想編寫 一個程序,這個程序把你去過的地方的坐標都顯示出來。這種情況下,預先創建數據庫是更加容易的,比在 運行時創建數據庫。
這裡,需要使用一些免費的工具。推薦使用SQLite Database Browser,支持多 平台,並且免費。下載地址: http://sourceforge.net/projects/sqlitebrowser/
下面是創建一個 聯系人表的例子。

在設計階段把數據庫建好,下 一步,就是把數據庫和程序捆綁在一起,這樣,在運行時,就能使用數據庫了。
1. 把數據庫放在 assets文件夾下面。

2. 把assets文件夾下面的數 據庫,復制到程序的安裝路徑下。
public class DatabasesActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DBAdapter db = new DBAdapter(this);
try {
String destPath = "/data/data/" + getPackageName() +
"/databases";
File f = new File(destPath);
if (!f.exists()) {
f.mkdirs();
f.createNewFile();
//---copy the db from the assets folder into
// the databases folder---
CopyDB(getBaseContext().getAssets().open("mydb"),
new FileOutputStream(destPath + "/MyDB"));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//---get all contacts---
db.open();
Cursor c = db.getAllContacts();
if (c.moveToFirst())
{
do {
DisplayContact(c);
} while (c.moveToNext());
}
db.close();
}
public void CopyDB(InputStream inputStream,
OutputStream outputStream) throws IOException {
//---copy 1K bytes at a time---
byte[] buffer = new byte[1024];
int length;
while ((length = inputStream.read(buffer)) > 0) {
outputStream.write(buffer, 0, length);
}
inputStream.close();
outputStream.close();
}
public void DisplayContact(Cursor c)
{
Toast.makeText(this,
"id: " + c.getString(0) + "\n" +
"Name: " + c.getString(1) + "\n" +
"Email: " + c.getString(2),
Toast.LENGTH_LONG).show();
}
}
3. 調試,用DDMS查看,數據庫被復制到了指定的位置。
![]()
Android屬性動畫之實現布局的下拉展開
前段時間,我們做了一下Android的幾個動畫(http://blog.csdn.net/qq_25193681/article/details/51777248),對A
Android平台調用WebService詳解
上篇文章已經對Web Service及其相關知識進行了介紹(Android開發之WebService介紹 ),相信有的朋友 已經忍耐不住想試試在Android應用中調用W
QQ國際版4.6.11 for Android支持大表情和轉發說說
QQ國際版 for Android 的最新版本(ver. 4.6.11)已經正式上線了。作為全球最流行的即時通信工具之一,QQ國際版的用戶已經覆蓋全球180多個國家和地區
Android開發入門(二十)內容提供者 20.1 數據共享
在上一章節中,我們介紹了數據持久化的幾種方法:首選項,文件,以及數據庫。在保存復雜的數據結構 時,推薦使用SQliteDatabase。但是,共享數據就成了一種挑戰,因為