学号 20189214 《Java程序设计》第十周学习总结
教材学习内容总结
偏好
- 在sharedPreferences包含一个键值对,可使用contains方法,来判断指定的键是否存在。可使用getAll方法对全部的键值对获取为一个Map。
- SettingFragment类是PreferenceFragment类的一个子类。它是一个简单的类,直接调用了addPreferences FromResource方法来加载3个Preference子类的布局xml文档。
操做文件
- Android设备提供了两种存储区域,分别是内部的外部的。内部存储对于应用程序是私有的,用户和其余的应用程序不能访问它。而外部存储的文件将会和其余的应用程序分享。好比Camera应用程序。
- 要操做外部存储的文件,首先要在清单文件中添加Permission。
- 存储在内部存储中的文件和存储在外部存储的公有文件并不具备相同的安全等级。存储在外部的文件用户能够删除该存储,而且使用某种工具来访问该文件。
操做数据库
SQLiteDataBase和SQLiteOpenHelper类都属于android.database.sqlite包。html
- 要在Android应用程序中使用数据库,扩展SQLiteOpenHelper以帮助建立数据库和表,以及链接数据库。
- 提供构造方法,它调用本身的超类,传入Context和数据库名称以及其余内容。
- 覆盖onCreate方法和onUpgrade方法。
- SQLiteOpenHelper自动管理到底层数据库的链接。有getReadableDatabase()和 getWritableDatabase()两种方法返回一个SQLiteDatabase实例。
- SQLiteDatabase类中有insert或者execSQL等方法操做数据库的数据。
- Cursor接口提供了对数据库查询所返回的结果集的读和写访问。其moveToFirst、moveToNext、moveToPrevious、moveToLast或moveToPosition方法。经常使用来自行刷新ListView。
获取图片
Android为获取静态图像的应用程序提供了两个选项,使用一个内建的意图来启动Camera或者使用Camera API。
在API中有4个参数shutter、raw、postview、jpeg。分别用来捕获瞬间的回调,解压缩图像数据的回调、预览图像数据的回调、JPEG图像数据的回调。java
Camera2 中主要的API类android
- CameraManager类 : 摄像头管理类,用于检测、打开系统摄像头,经过getCameraCharacteristics(cameraId)能够获取摄像头特征。
- CameraCharacteristics类:相机特性类,例如,是否支持自动调焦,是否支持zoom,是否支持闪光灯一系列特征。
- CameraDevice类: 相机设备,相似早期的camera类。
- CameraCaptureSession类:用于建立预览、拍照的Session类。经过它的setRepeatingRequest()方法控制预览界面 , 经过它的capture()方法控制拍照动做或者录像动做。
- CameraRequest类:一次捕获的请求,能够设置一些列的参数,用于控制预览和拍照参数,例如:对焦模式,曝光模式,zoom参数等等。
Camera API详解sql
代码调试中的问题和解决过程
- 问题1:SharedPreferences中putStringSet测试无效的问题

问题1解决方案:缘由在于putStringSet和getStringSet中的参数不能是同一个object,因此更改成new HashSet<>(SharedPreferences.getStringSet("abc",new HashSet
()));以NEW对象来避免同一个object的问题。
此时
数据库
Set
s = new HashSet<>();
s.add("zhy");
s.add("lxq");
editor.putStringSet("abc", s);
安全

学习进度条
目标 |
5000行 |
30篇 |
400小时 |
|
第一周 |
150/200 |
2/2 |
20/20 |
|
第二周 |
200/400 |
1/3 |
20/40 |
|
第三周 |
100/500 |
1/4 |
10/50 |
|
第四周 |
200/700 |
1/5 |
15/65 |
|
第五周 |
1486/2186 |
1/6 |
15/80 |
|
第六周 |
1400/3586 |
1/7 |
18/98 |
|
第七周 |
1400/5000 |
1/8 |
18/116 |
|
第八周 |
1200/6200 |
1/9 |
15/131 |
|
第九周 |
800/7000 |
2/11 |
12/143 |
|
第十周 |
1500/8500 |
1/12 |
15/158 |
|
计划学习时间:15小时ide
实际学习时间:15小时工具
参考资料