本章节翻译自《Beginning-Android-4-Application-Development》,如有翻译不当的地方,敬请指出。
原书购买地址http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/
在开发过程中,有时候,预先创建好数据库比在程序运行时创建数据库更加地高效。举个例子,你想编写一个程序,这个程序把你去过的地方的坐标都显示出来。这种情况下,预先创建数据库是更加容易的,比在运行时创建数据库。
这里,需要使用一些免费的工具。推荐使用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开发中的数据库连通性,特别是使用SQLite数据库。SQLite是Android平台上的默认数据库,它是一个轻量级的...
这份"Android开发教程笔记完全版"涵盖了Android开发的基础到高级主题,旨在帮助开发者全面理解并掌握Android应用的构建过程。 一、Android系统概述 Android是由Google主导的开源操作系统,基于Linux内核。它的开放...
《Android开发教程基础版》是一本专为初学者设计的Android应用开发指南,旨在帮助读者快速掌握Android开发的基础知识和技能。本教程以其清晰易懂的特性,为想要踏入Android开发领域的学习者提供了全面的指导。 一、...
本教程"最详细的Android开发教程实例"旨在提供一个全面的学习路径,帮助新手和有经验的开发者深入理解Android开发的核心概念和技术。 【Android开发入门】: Android开发入门是学习Android编程的第一步。"101- ...
在Android开发中,直连SQL数据库是一种常见的需求,特别是在快速原型开发或小规模项目中,可以简化架构,提高效率。本教程将详细讲解如何在Android应用中直接连接到SQL数据库,特别是利用jtds库来实现这一功能。 ...
总之,《Android 安卓 开发教程》虽然年代稍久,但其内容仍然适用于当前的Android开发学习。通过这本书,读者可以全面了解Android开发的基本概念和实践,为进一步深入学习和项目开发打下坚实基础。
"新版Android开发教程+笔记十二--文件存取、数据库编程.pdf"涵盖了Android中的数据存储,包括内部存储、外部存储、SQLite数据库的使用,以及ContentProvider的基本概念,这些都是Android应用中数据管理的重要部分。...
其次,"Android开发教程详细版.pdf"将深入探讨更复杂的主题,如多线程处理、网络编程、SQLite数据库操作、ContentProvider的使用,以及各种传感器和硬件接口的访问。此外,还可能涉及UI设计,如自定义View,以及动画...
在Android开发领域,掌握核心概念和技术是至关重要的。这篇教程集合了全面的Android开发知识,旨在帮助初学者和有经验的开发者...这个“经典Android开发教程”将引导你逐步掌握这些技能,祝你在开发旅程中取得成功。
【新版Android开发教程+笔记十二--文件存取、数据库编程.pdf】将讲解数据存储,包括内部存储、外部存储以及SQLite数据库的使用。理解如何持久化数据对任何Android应用都是关键,因为这涉及到应用的数据备份、恢复和...
《Android开发教程CHM》是一本专为Android开发者设计的详尽指南,旨在帮助初学者和有经验的开发者深入理解Android平台的各个方面。这个CHM(Microsoft Compiled HTML Help)文件包含了大量的信息,使得学习和查阅...
新版Android开发教程及笔记将涵盖Android系统的基本架构、应用程序生命周期管理以及UI设计等核心概念。 1. **Android系统架构**:Android系统分为应用层、应用框架层、系统运行库层和Linux内核层。开发者主要在应用...
在Android开发中,SQLite是存储本地数据的重要手段,SQLiteOpenHelper类帮助开发者轻松地创建、升级和管理数据库,而SQLiteDatabase则提供了一系列的方法来执行SQL语句,实现数据的增删改查。 总结来说,SQLite是...
Android Android Android Android 开发背景 � 计算技术、无线接入技术的发展,使嵌入式系统逐渐有能力对桌面系统常规业务进行支持。 � 谷歌长期以来奉行的移动发展战略:通过与全球各地的手机制造商和移动运营商...
在本压缩包中,我们找到了一份详尽的Android开发教程笔记,涵盖了从第11篇到第13篇的内容。这些笔记是作者无私分享的精华,旨在帮助开发者深入理解和掌握Android开发的关键技能。以下是每篇笔记的主要知识点: 1. *...
【Android开发教程】是IT领域中的一个重要分支,尤其对于初学者而言,这是一份非常宝贵的资源。这份"新版Android入门开发教程 完整pdf开发笔记"涵盖了从零开始学习Android应用开发所需的基础知识和实践技能。 ...
在《新版Android开发教程+笔记十二--文件存取、数据库编程.pdf》中,讲解了SQLite数据库的使用,包括创建数据库,定义表,插入、查询、更新和删除数据的基本操作。同时,也介绍了ContentProvider,它是Android系统中...
Android开发教程是面向那些想要构建和开发Android应用的程序员们的重要资源。这门教程涵盖了从基础知识到高级技术的全面内容,旨在帮助学习者熟练掌握Java编程语言,并运用这些技能在Android平台上创建功能丰富的...
数据库编程在Android应用中至关重要,"新版Android开发教程+笔记十二--文件存取、数据库编程.pdf"详细阐述了SQLite数据库的使用,包括创建数据库、表,执行SQL语句,以及数据的存取操作。 "新版Android开发教程+...