1. android操作sqlite数据库需要new一个新thread吗
不需要,如果sqlite查询很耗时的话可以使用thread异步查询。
SQLite是轻量级嵌入式数据库引擎,它支持 SQL 语言,并且只利用很少的内存就有很好的性能。此外它还是开源的,任何人都可以使用它。许多开源项目((Mozilla, PHP, Python)都使用了 SQLiteSQLite 由以下几个组件组成:SQL 编译器、内核、后端以及附件。SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试、修改和扩展 SQLite 的内核变得更加方便。
Android 集成了 SQLite 数据库 Android 在运行时(run-time)集成了 SQLite,所以每个 Android 应用程序都可以使用 SQLite 数据库。
数据库存储在 data/< 项目文件夹 >/databases/ 下。 Android 开发中使用 SQLite 数据库 Activites 可以通过 Content Provider 或者 Service 访问一个数据库。
Android 提供了 SQLiteOpenHelper 创建一个数据库,只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。
SQLiteOpenHelper 的子类,至少需要实现三个方法:
1 构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。
2 onCreate()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。
3 onUpgrage() 方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和一个新的版本号,这样就可以清楚如何把一个数据库从旧的模型转变到新的模型。
2. 在安卓手机里面可以搭建数据库吗
搭建数据库的目的就是数据的存储,android手机可以使用嵌入式数据库sqlite,还可以使用api访问云服务提供的数据,内部使用json来存储解析
3. 学习Android嵌入式需要做哪些准备
说几句:
1. 第一张图中有“基础”和“高级”部分,大可不要在意。看看自己想走哪个层面的开发,或者想先从哪一部分入手,确定后,学习对应的知识即可,嗯,我说得很宽泛不具体。
2. 既然有培训基础,那么应该对应用层很熟悉。
3. Android是OS,GUI/APP/库/框架等的集合。因此,这方面和我们平常的Ubuntu/Windows没有什么区别,可以不懂硬件。底层的Kernel,和Android“没有什么关系”,就算做linux驱动开发也不需要太多的硬件基础,看得懂原理图即可,大二大三学的数电模电和组成原理足够了。
做App的话,直接Android手机就足够了。如果搞Linux 驱动开发,那么用的最广,资料最多的S3C2440芯片的开发板是第一推荐。
4. android嵌入式开发大纲
课程安排 课程简介
第一阶段
Linux 操作和编程基础
预备营阶段主要讲解 Linux 的基本命令和linux培训基础编程知识,包括Linux的文件操作和目录操作命令,VI编辑器,GCC编译器,GDB调试器和 Make 项目管理工具等知识。
该阶段学生可以通过学习Linux下编程方法,完成实现一个简单的游戏编程,例如五子棋、俄罗斯方块、贪吃蛇等。此项任务完成后,学员的编码量可以达到1000行,能够进行基本程序开发。
第二阶段
嵌入式环境开发核心技能
初级营阶段主要讲解在嵌入式开发编程中C语言的重要概念和编程技巧中的重点难点,以复习串讲和实例分析的形式,重点介绍包括函数与程序结构,指针、数组和链表,库函数的使用等知识。
该阶段学员会进行大量的编码练习,主要包括整数算法训练,递归和栈编程训练,位操作训练,指针训练,字符串训练,链表和二叉树训练、掌握常用C库
函数编程接口实践,函数指针、动态内存分配,程序预处理、链接原理,ELF文件格式,标准I/O库等核心技能,强化学员对嵌入式开发环境下基本编程开发的
理解和编码调试的能力。
该阶段学员在完成上述编码练习任务后,将独立完成“快译通”宝典项目开发,实现一个类“金山词霸”字典功能的实用程序开发。该项目完成后,学员的
编码量可以达到5000-8000行,具备初级程序员开发能力,能够胜任企业一般开发编码类的任务要求。
第三阶段
嵌入式Linux环境高级
编程和项目开发实践
中级营阶段主要讲解包括系统编程(信号/系统调用/管道/FIFO/消息队列/共享内存等),文件I
/O编程(文件描述符/文件读写接口/原子操作/阻塞与非阻塞IO等),多任务和多线程编程(进程标识/用户标识/fork与vfork/多线程概念/线
程同步等),网络编程(网络基本概念/套接口编程/网络字节次序/ Client/Server 结构/ UDP
编程);掌握Linux下Socket编程的开发流程,熟悉网络编程的调用接口函数和相关数据结构,使学员初步具备在Linux上进行系统编程开发的能
力。同时还会讲解搭建嵌入式 Linux
开发环境,包括嵌入式Linux基本概念和开发流程、内核裁减配置和交叉编译、根文件系统制作、网络编程等知识。
该阶段学员将综合之前所学内容和编程技术,以小组为单位进行一个团队合作项目的开发,完成一个嵌入式产品“数码相框”的设计和实现,涉及技术内容
包括文件I/O编程,多线程编程,网络编程和项目文档编写。该项目完成后,学员的编码量可以达到10000-15000行,具备中级程序员开发能力,能够
胜任企业项目开发和产品开发类的任务要求。
第四阶段
嵌入式Linux开发方向 Android开发方向
(2选1)
高级营课程将按照学员兴趣和特长,选择2个专业选修方向进行深入学习,包括:
·嵌入式ARM硬件开发(公共部分)
·嵌入式Linux开发方向
·Android手机开发方向
该阶段完成后,学员的编码量可以达到和超过20000行,具备独立开发项目,完成嵌入式产品软件设计和实现的能力。
以下为这2个方向的详细描述:
嵌入式ARM硬件开发
(公共部分)
该部分学习的内容包括ARM体系结构、指令集、裸板开发等等,该阶段要求学员完成从0开始的Bootloader项目:
·Bootloader项目(从0启动硬件,加载Linux内核)
该项目主要涉及
ARM体系结构及其基本编程知识,包括指令分类,寻址方式、指令集、存储系统、异常中断处理、ARM汇编语言以及C和汇编语言的混合编程,ARM开发板启
动代码的框架分析等知识。同时要求结合ARM嵌入式开发板硬件设计原理图分析各种外设的工作原理和驱动机制,并自己动手实践完成一个ARM开发板上的
Bootloader编程大作业。
嵌入式Linux开发方向
—上层应用开发
该部分主要针对上层应用开发,学习的内容包括C++面向对象编程基础、QT图形界面开发、网页脚本语言、SQLite数据库等知识。
该阶段要求学员设计并实现1个真实完整的嵌入式项目开发流程,该方向的项目选题可以从以下项目案例中任选:
·广告机项目(交互式多媒体网络系统)
·飞鸽传书项目(局域网文件共享系统)
·QQ聊天室项目(多客户登录即时通讯系统)
·数据采集和远程控制项目(Web远程控制系统)
以上项目开发,涉及到文件I/O编程、数据库编程、网络通讯、以及图形界面开发等多种嵌入式Linux编程技术,要求学员建立起团队开发和协同工
作的企业项目开发模式的概念和流程,强化学员对编写项目概要设计文档和详细设计文档的理解,为就业的职业技能和素质训练做好充分准备。
嵌入式Linux开发方向
—底层驱动开发
该部分主要针对底层驱动开发, Linux设备驱动程序开发规范、USB协议规范、LCD液晶屏/TS触摸屏/网卡/AC97声卡等硬件驱动开发知识。
该阶段要求学员实现2-5个真实的硬件设备驱动,该方向的项目选题可以从以下项目案例中任选:
·CS8900网卡驱动
·USB驱动
·LCD液晶屏驱动
·TS触摸屏驱动
·AC97声卡驱动
·串口驱动
上述项目主要涉及嵌入式 Linux
上驱动程序开发规范,包括设备驱动程序概念、字符设备驱动程序、块设备与网络设备、网卡驱动以及常用嵌入式设备驱动开发等知识。要求学员独立实现至少2种
嵌入式设备驱动程序的编写,包括驱动模块的调试和加载以及完整的项目开发文档的编写。
专业选修方向二
Android开发方向
该方向主要为了满足人才合作单位对Android高端技术人才的需求而设,基于对市场最前沿高端平板电脑产品方案的研发实践,使学员系统全面地掌握多核Android平台上的开发技术,满足企业对有实际开发经验的Android高端工程师的需求。
该阶段要求学员学习Android系统框架、Android系统移植优化和Android应用开发等知识,完成2个商业级android项目。该方向的项目选题可以从以下项目案例中任选:
·mp3/mp4播放器(实现各种媒体格式的播放功能)
·云点阅读器(能够浏览epub、txt等文档)
·点菜系统(酒店点菜系统, 实现菜单浏览,下单)
·游戏引擎(开发完整的android平台游戏引擎)
上述项目均采用最新Android高端硬件平台:NVIDIA Tegra2双核1GHz,3D、flash、高清硬件加速,基于ARM Cortex-A9内核,支持重力传感,WiFi无线网络,3G上网,HDMI高清接口。
5. android中的数据库怎么去写如何建表,希望有具体代码参考啊!
android 中的数据库操作 android 中的应用开发很难避免不去使用数据库, 聊聊 android 中的数据 库操作,我发给你 word 贴不下
一、android 内的数据库的基础知识介绍
1.用了什么数据库
android 中采用的数据库是 SQLite 这个轻量级的嵌入式开源数据库,它是用 c 语言构建的。相关简介可以从链接查看。
2.数据库基本知识观花
对于一些和我一样还没有真正系统学习数据库技术的同学来说,把 SQL92 标 准中的一些基本概念、基本语句快速的了解一下,是很有必要的,这样待会用 Android 的 database 相关方法去执行一些数据库语句时就不会茫然了。
①数据库的基本结构——表格
表格是数据库中储存资料的基本架构。表格被分为栏位 (column) 及列位 (row)。每 一列代表一笔资料,而每一栏代表一笔资料的一部份。举例来说,如果我们有一个记载顾客 资料的表格,那栏位就有可能包括姓、名、地址、城市、国家、生日..等等。每一个表格 . 拥有一个独一无二的名字(Table Name)以便能够让用户定位到它上面。一个典型的表格结 构如下:
Store_Information 表格
store_name Sales Date Los Angeles $1500 Jan-05-1999 San Diego $250 Jan-07-1999 Los Angeles $300 Jan-08-1999 Boston $700 Jan-08-1999 该表格的表格名字为 Store_Information, 一共有三个栏位, 分别为 store_name , Sales , Data , 已经录入了四笔数据所以有四个列位。
②关于数据类型
和其他的数据库不同的是,sqlite 是无类型的。也就是当你创建一个表格时,无需对 每一个栏位要存储的数据的类型进行声明,当你在给表格增加数据条目时,sqlite 会自动找 到存入的数据的类型。
SQLite 允许忽略数据类型,但是,仍然建议在 Create Table 语句中指定数据类型, 因为数据类型有利于增强程序的可读性。SQLite 支持常见的数据类型,如 VARCHAR、 NVARCHAR、TEXT、INTEGER、FLOAT、BOOLEAN、CLOB、BLOB、TIMESTAMP、 NUMERIC、VARYING、CHARACTER、NATl0NAI, VARYINGCHARACTER。这些数据类 型都是 SQL92 标准中规定的标准数据库数据类型,想要有更近一步了解,请参看下表。
SQL 数据库数据类型详解 数据类型 类型 描 述 bit 整型 bit 数据类型是整型,其值只能是 0、1 或空值。这种数据类型用于存储只有两 种可能值的数据,如 Yes 或 No、True 或 Fa lse 、On 或 Off int 整型 int 数据类型可以存储从- 231(-2147483648)到 231 (2147483 647)之间的整数。存 储到数据库的几乎所有数值型的数据都可以用这种数据类型。 这种数据类型在数据库里占用 4 个字节 smallint 整型 smallint 数据类型可以存储从- 215(-32768)到 215(32767)之间的整数。这种 数据类型对存储一些常限定在特定范围内的数值型数据非常有用。 这种数据类型在数据库里 占用 2 字节空间 tinyint 整型 tinyint 数据类型能存储从 0 到 255 之间的整数。 它在你只打算存储有限数目 的数值时很有用。 这种数据类型在数据库中占用 1 个字节 numeric 精确数值型 numeric 数据类型与 decimal 型相同 decimal 精确数值型 decimal 数据类型能用来存储从-1038-1 到 1038-1 的固定精度和范围 的数值型数据。使用这种数据类型时,必须指定范围和精度。 范围是小数点左右所能存储