`
zero1111
  • 浏览: 15411 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

记录一下我的Android学习过程-第一课

阅读更多
   最近一直在看Android的书,由于英语很烂,写的练习很少,决定在这里记录一下自己的学历过程,以便鞭策自己,也让自己有好笔记好总结.

   给自己的第一课,编程世界里习惯了都是Hello World! 这个大家都会写,我就不记载了,看着别人的例子,我的第一个课是Android里 对Sqlite3的建库 插入数据,通过命令行查看。
   例子是网上抄的,代码都是我自己敲进去的,比copy & 粘贴 好一点
上代码

package com.test;
//DatabaseHelper.java
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;

public class DatabaseHelper extends SQLiteOpenHelper {

	public DatabaseHelper(Context context, String name, CursorFactory factory,
			int version) {
		super(context, name, factory, version);
		System.out.println("DatabaseHelper init.");
	}

	@Override
	public void onCreate(SQLiteDatabase db) {
		System.out.println("Create database test_user and table user.");
		
		db.execSQL("CREATE TABLE USER (c_id varchar(39),c_name varchar(50))");
	}

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		// TODO Auto-generated method stub
		System.out.println("upgrade a database.");
	}

}

package com.test;
//SQLiteTest 
import android.app.Activity;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class SQLiteTest extends Activity {
	
	private Button insert=null;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        insert=(Button)findViewById(R.id.button1);
        insert.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				DatabaseHelper dbhp=new DatabaseHelper(SQLiteTest.this,"test_user",null,1);//test_user为数据库名称
				SQLiteDatabase db= dbhp.getWritableDatabase();
				ContentValues values=new ContentValues();
				values.put("c_id", "123");
				values.put("c_name", "wangtao");
				db.insert("user", null, values);//user为表名称
				
			}
		});
        
    }
}

/layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
<Button android:text="Button" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
    
</LinearLayout>


写完代码运行程序,ok了. 下面通过adb查看数据,在android sdk下
adb shell
cd data/data
ls 
cd apk包名/databases
ls 就显示那个数据库了
sqlite3 test_user 进入 .table查看所有表
select * from user;

能看到数据啦,呵呵 虽然简单抄别人的,但我感觉在Android上实现嵌入数据库操作还算不错的开始吧,android学的挺早,但一直荒废了,最近有时间,赶紧加快学习吧.
   总结一下,今天虽然是照着例子写,但感觉也比看书深刻,SQLiteOpenHelper,SQLiteDatabase一会好好看看Api啦,加油!
分享到:
评论

相关推荐

    android-support-v4-v7-v13-v14-v17(官方最新完整版)

    android-support-v4-v7-v13-v14-v17(官方最新完整版),官方最新版的,压缩包内包含android-support-v4、android-support-v7-appcompat,android-support-v7-cardview,android-support-v7-gridlayout,android-support-...

    android-sdk-4.2.2 android-sdk-4.2.2-platforms

    标题中的"android-sdk-4.2.2 android-sdk-4.2.2-platforms"指的是Android SDK的一个特定版本,即Android 4.2.2(API级别17),该版本的SDK平台组件。这个版本是Android操作系统的 Jelly Bean 版本的一部分,发布于...

    ksoap2-android-assembly-2.6.5-jar-with-dependencies.jar

    ksoap2-android-assembly-2.6.5-jar-with-dependencies.jar 要是需要最新的,下载地址: http://code.google.com/p/ksoap2-android/

    android-sdk-windows-1.5_r3.zip-tools

    标题中的“android-sdk-windows-1.5_r3.zip-tools”表明这是一个针对Windows平台的Android SDK的早期版本,具体为1.5_r3。这个压缩包包含的是SDK中的“tools”目录,里面通常装有用于Android应用开发和设备管理的...

    android-4.3-sdk android-sdk-4.3-platforms

    当描述中提到"将android-18解压到Android\android-sdk\platforms下"时,这意味着你需要下载并安装Android 4.3(API级别18)的SDK平台,以便在开发环境中使用。 1. **API级别18**:每个Android版本都有一个对应的API...

    android-support-multidex.jar

    使用android-support-multidex解决Dex超出方法数的限制问题,让你的应用不再爆棚.Google在API 21中提供了通用的解决方案,那就是android-support-multidex.jar. 这个jar包最低可以支持到API 4的版本(Android L及以上...

    android-gif-drawable

    "android-gif-drawable" 是一个专门为 Android 平台设计的开源组件,它使得在 Android 应用中轻松处理和展示 GIF 动态图变得轻而易举。这个库的目的是提供一个高效且功能丰富的解决方案,以替代系统默认对 GIF 支持...

    android-gif-drawable解决5.0适配

    `android-gif-drawable`库正是为了解决这个问题而诞生的,它是一个强大的第三方库,提供高效、内存友好的GIF解析和渲染。 `android-gif-drawable`库由Sebastian Staudt开发,其核心目标是为Android平台提供高性能的...

    android-support-v7-appcompat.jar 全架包

    android-support-v13.jar android-support-v7-gridlayout.jar android-support-v7-appcompat.jar android-support-v4.jar

    android-support-v4-23

    高版本的android-support-v4包

    Android音频混合 -- K歌合成

    在Android平台上,音频混合是一个非常有趣的领域,尤其对于开发K歌应用或者音乐制作类应用来说,音频混合功能是必不可少的。本项目名为“Android音频混合 -- K歌合成”,旨在实现类似唱吧K歌合成和Tom猫录音的效果,...

    android-x86-4.0(原版安装包)

    android-x86-4.0-RC2-eeepc.iso 用于安装测试机中使用.

    android-async-http-1.4.8.jar

    强大的网络请求库,主要特征如下: 处理异步Http请求,并通过匿名内部类处理回调结果 Http请求均位于非UI线程,...通过线程池处理并发请求 处理文件上传、下载 响应结果自动打包JSON格式 自动处理连接断开时请求重连

    android-serialport-api

    Android-SerialPort-API是专门为Android平台设计的一个串口通信库,它提供了简单易用的接口,使得开发者可以方便地与串行端口设备进行数据交互。本文将深入探讨这一API的使用方法及其核心知识点。 一、Android串口...

    android-serialport-api串口通信精简demo

    关于利用android-serialport-api实现在安卓设备上进行串口通信,附精简版demo,亲测可用。符个人博文说明:http://blog.csdn.net/ckw474404603/article/details/37811499

    android-studio-bundle-130.677228-windows

    android-studio-bundle-130.677228-windows android-studio-bundle-130.677228-windows

    android-ndk-r9c

    android-ndk-r9c ffmpeg android

    android-support-v13.jar

    android-support-v13.jar

    android-sdk-windows.rar

    总结,"android-sdk-windows.rar"提供了一整套在Windows上开发Android应用所需的工具和资源。从安装配置到实际使用,每个环节都需要细致的操作和理解。通过学习和掌握Android SDK,开发者能够创建出功能丰富、用户...

Global site tag (gtag.js) - Google Analytics