热爱分享,热爱编程。

最近写完了一个android的APK,感觉小有成就感,好久没有做软件了,写篇博客纪念分享下。

妞妞驾考是我这近为了应对驾照考试C级科目一而开发的一款android平台下的软件。最近我也在考驾照,很多小空闲时间,其实可以拿出来好好利用,但是带本书看,确实又不方便,于是就有为像我这样的人量身定做一款 驾考软件的想法,有了这款“妞妞驾考”软件,无论何时,无论何地,上班途中,排队闲时,你都可以拿出来复习下,加深记忆,哈哈,我这次的98分可就多亏这个软件了。

妞妞驾考分为6个主要模块,1.随机练习 2.顺序练习 3.章节练习 4.交通标志 5.模拟考试 6.错题练习 具体功能大家可以去http://mobile.91.com/Soft/Android/com.yuejing.steerexam.activity-1-1.0.html上下载查看。

数据库方面采用的是SQLite,数据表主要有题目表【用来记录驾考的题目】、交通标志表【记录交通标志识别的题目】、得分表【记录自己每次做题的得分情况】。

程序设计方面采用了mvc的模式进行开发的。这里我将activity和service、view分开。这样有助于结构的清晰化,利用维护和扩展。

在android数据库编程方面,大家有没有遇到过,我要从指定位置的已经存在的数据库来进行操作的问题。之前我尝试了很多方法都没有成功,后来找到了解决的方法,简要代码如下:

String databaseFilename = DATABASE_PATH + "/" + DATABASE_NAME;
File dir = new File(DATABASE_PATH);
if (!dir.exists())
dir.mkdir();
if (!(new File(databaseFilename)).exists()) {
InputStream is = context.getResources().openRawResource(R.raw.jobexam);
FileOutputStream fos = new FileOutputStream(databaseFilename);
byte[] buffer = new byte[8192];
int count = 0;
while ((count = is.read(buffer)) > 0) {
fos.write(buffer, 0, count);
}
fos.close();
is.close();
}
db = SQLiteDatabase.openOrCreateDatabase(databaseFilename, null);

这段代码的意思大家一看就明白,第一步先判断在指定的路劲是否存在,不存在就创建。第二步将android的资源下的数据库复制到指定路径下面。第三步就是根据指定路径打开或者创建数据库,然后得到操作数据库的对象。

章节练习的实现,主要是在数据表中将这些题目给归类了。这样大家可以根据驾考的章节来进行查看。

交通标志项,主要是用来教我们识别各种各样的交通图标的含义,从而加深我们对图标识别题目的理解,有助于练习图标题目。

错题练习包括了你每次练习的得分和做错的题目。点击错题列表中的某一项,然后查看详情,你可以看到你这次练习或考试做错的题目。这个功能有助于我们复习错误的题目。

模拟考试项,采用了生成随机数来解决的,在题目范围内随机生成100道题目。如果你做了10次模拟考试,每次模拟考试都在90分以上,那恭喜你,驾照考试你没有什么问题了。我在这款软件的熏陶下,成功的拿下了98分。

就这样,这款软件的主要功能已经实现了,简单吧,大家都试试吧~软件有需要改进的地方不吝赐教,这是我初次写博客,多多包涵~

更多相关文章

  1. 基于Android的英文电子词典
  2. Android(安卓)Paging分页库的学习(二)—— 结合Room数据库进行分页
  3. Android(安卓)GreenDao使用总结(包括模型生成、增删改查、修改存
  4. 如何Android数据库缓存进行管理
  5. Android(安卓)数据库开发之事务
  6. Android(安卓)sdcard媒体文件更新(程序控制刷新MediaStore数据库)
  7. 写了个Android聊天客户端框架,基本聊天功能、数据库、服务器都有
  8. android ContentProvider ApplyBatch
  9. SnappyDB—Android上的NoSQL数据库

随机推荐

  1. and 使用以及添加一个自己的mime type在C
  2. Android构建报错:Android(安卓)resource l
  3. android的单元测试摘要
  4. Android和JAVA面试题相关资料
  5. mono for android 获取手机照片或拍照并
  6. Android(安卓)获取设备信息
  7. eclipse ADT在线安装 https://dl-ssl.goo
  8. android 监听去电实现ip拨号 广播接收者
  9. 【Android(安卓)view】获取状态栏高度sta
  10. android测试器