android数据库加载
1. android往数据库添加数据后刷新列表,新数据无法显示
我通常的做法是,自己写adapter继承于BaseAdapter,然后加一个setData的公开方法。
在activity中可以开启一个线程去取数据,取完数据调用handler对listView进行加载或刷新。
如果是加载就new
MyAdapter,listView.setAdapter
如果是刷新就adapter.setData(),
adapter.notifyDataSetChanged().
有不懂再问。
2. android怎么将数据存入数据库
你通过getText()方法首先得到输入的值,然后调用数据库的插入方法 db.insert();插入到数据库中就行 就想这样
EditText et ;
String num = et.getText().toString();
public void addData(String num) {
sqliteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("num", num);
db.insert("表名", null, values);
}
当你调用这个 addData()方法时就会向数据库中插入数据了
3. 如何解决android读数据库慢的问题
这种读本地数据库的时间快慢在相同的代码下是和手机的配置相关的,至于代码嘛,读取你肯定也知道的。最重要的一点要提醒你,在进行数据库操作的时候记得要新开一个线程,不要在主线程做,不然肯定感觉到程序卡顿
4. Android APP,登陆的第一个界面有很多数据要加载,应该用什么方式在数据库改动,还是带adapter的view
手机app获取数据一般都是调用后台接口,在接口中可以连接数据库。 比如可以用ksoap连接webservices接口
5. android settings中数据库是什么时候加载的
数据库什么时候加载的话,需要你代码中来决定,也许并没有完全理解你的意思,可以贴一些代码看看
6. android应用是如何访问数据库的
android本地数据库sqlite基本是用来存本地数据或者加载服务器上的数据的。你是想问android客户端如何和服务器的数据库交互吧?这个很简单,他们不直接交互,android会发消息给服务器,请求某一些操作,然后服务器收到客户端的消息后,对应的再操作服务器上的数据库,然后返回消息给客户端。
7. 如何往android中添加数据库
一、新建外部SQLite数据库
(1)下载并安装 SQLite可视化管理工具(SQLite Expert Pro) v3.4.17 破解版
http://www.cr173.com/soft/36343.html
(2)将你手头上的数据放到EXCEL表格中,保存为CSV格式的数据
(3)在此工具中按照你现有的数据格式新建数据库和表,如数据库为:contact.db,表为employee
(4)通过此工具菜单栏中Import/Export下的Import text file(CSV,TSC)功能,将你现有的CSV数据导入到你新建的数据表中(主要目的是省的一个一个的录入了)
二、在eclipse中新建一个android app工程,并在新建的工程文件夹点右键new->folder,在res文件夹下新建raw文件夹(如果有就不用新建了)
三、用鼠标将新建的SQLite数据库文件contact.db拖动到新建工程的res下的raw文件下,出现提示,选择
四、程序代码
private static final String DATABASE_PATH = "/data/data/你的主程序包路径(如:com.szair.contact)/databases";
private static final int DATABASE_VERSION = 0;
private static final String DATABASE_NAME = "contact.db";
private static String outFileName = DATABASE_PATH + "/" + DATABASE_NAME;
try {
buildDatabase();//见下
} catch (Exception e) {
e.printStackTrace();
}
//SQLiteDatabase对象
SQLiteDatabase db=SQLiteDatabase.openDatabase(outFileName, null,SQLiteDatabase.NO_LOCALIZED_COLLATORS);
String t="SELECT 字段名1,字段名2 FROM employee WHERE **** ORDER BY ***";
Cursor c =db.rawQuery(t, null);
if(c.moveToFirst()){
for(int i=0;i
{
String zian1=c.getString(0);//字段1的数据
String zian2=c.getString(1);//字段1的数据
}
}
------------------------------------------------
//前面用到的buildDatabase方法
private void buildDatabase() throws Exception{
InputStream myInput = getResources().openRawResource(R.raw.sz_contact);
File file = new File(outFileName);
File dir = new File(DATABASE_PATH);
if (!dir.exists()) {
if (!dir.mkdir()) {
throw new Exception("创建失败");
}
}
if (!file.exists()) {
try {
OutputStream myOutput = new FileOutputStream(outFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer))>0){
myOutput.write(buffer, 0, length);
}
myOutput.close();
myInput.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
五、程序发布
按照以上方式,可以将外部建的SQLite数据库成功的发布出来
8. 安卓系统中从其他应用中读取共享的数据库数据需要用到
可以按以下步骤进行:
Android应用的数据库一般都是私有的,其他应用无法访问,那么怎么在手机已root的前提下,在自己的应用中读取指定应用中的数据信息呢,现提供一种思路。
以uc浏览器历史浏览记录为例:
一:对手机进行root。
某些厂家的Android设备是支持在系统设置中一键root的,如魅族手机。更通用的情况下一般是用第三方软件进行root,如KingRoot。
二:在手机上安装RootExplorer。
RootExplorer是在Android上使用很方便的文件浏览器,借用它,我们可以找到uc浏览器的历史记录数据库所在为data/data/com.UCMobile/databases/history/history。
三:将数据库文件复制到sd卡指定目录。
四:从sd卡数据库文件中读取数据。
五:将数据加载到Recyclerview中展示。
至此,我们已经实现了在自己应用中读取其他应用数据库数据的一个完整过程,诚然这种方式存在许多局限性,但不失为解决方案的一种。
9. android 如何加载有数据的数据库
通过SQLiteOpenHelper创建的数据库是默认放到/data/data/your.app.package/databases/这个目录下的,所以你可用过AssetManager 得到数据库文件,然后再写到这个目录下去,你就可以通过
创建SQLiteOpenHelper访问这个数据库,注意访问的数据库名字就是你复制的那个文件的文件名
10. 在android中!由于我的页面在加载时要从本地数据库(sqlite)中取数据!我感觉有点太浪费
更新UI要在主线程中进行,如果有控件赋值需要在主线程中进行。4.0版本后不支持非UI线程运行修改UI,访问数据库起一个新线程是对的