Android基础与应用 数据存储与访问

实验三 Android数据存储 实验三 Android数据存储一、实验目的及要求二、实验内容及步骤三、总结 一、实验目的及要求 (1) 掌握Android的SharedPreferences的使用 (2) 掌握在Android中使用SQLite的方法 二、实验内容及步骤 任务:根据下述要求实现对应程序 1、 根据所给界面1完成登入功能,用户名为admin,密码为123456,如果用户名和密码不是admin和123456,则使用Toast提示“用户名或密码错误”,如果是则在checkbox选中的情况下,将用户名和密码保存,当此Activ 阅读详情

一、实验目的

1. 掌握SharedPreferences的使用方法;

2. 掌握各种文件存储的区别与适用情况;

3. 了解SQLite数据库的特点和体系结构;

4. 掌握SQLite数据库的建立和操作方法;

5. 理解ContentProvider的用途和原理;

6. 掌握ContentProvider的创建与使用方法。

 

二、实验过程

1、简单存储

使用SharedPreferences方式在程序关闭时保存用户在图1.1的界面上输入的数据,并在程序重新启动时自动恢复这些数据。

在onStart()函数中调用loadSharePreferences()函数,读取保存的信息,在onStop()函数中调用saveSharePreferences()函数,在关闭时保存界面上的信息。

代码如下:

public static final String PREFERENCE_NAME = "SaveSetting";

public static int MODE = Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE;

@Override

protected void onStart() {

super.onStart();

loadSharePreferences();

}

private void loadSharePreferences() {

SharedPreferences share = getSharedPreferences(PREFERENCE_NAME, MODE);

String name = share.getString("name", "赵明");

    . . . . . .

e1.setText(name);

   . . . . . .

}

 

@Override

protected void onStop() {

super.onStop();

saveSharePreferences();

}

 

private void saveSharePreferences() {

SharedPreferences share = getSharedPreferences(PREFERENCE_NAME, MODE);

SharedPreferences.Editor editor = share.edit();

editor.putString("name", e1.getText().toString());

. . . . . . .

editor.commit();

}

效果如图4.1所示

 

图4.1 简单存储

 

 

 

2、建立存储设置界面

为图1.2的“设置”菜单项添加一个“存储设置”子菜单项

在res->menu布局文件下创建子菜单,效果如图4.2所示。

 

 

图 4.2 设置子菜单

 

创建新的Blank Activity,Activity Name和Layout Name修改为有实际含义的名称,其中“数据库存储”是默认选择项。

Activity Name:SaveActivity   Layout Name:activity_save

如图4.3所示:


图4.3 存储设置界面

 

当点击图4.2的“存储设置”子菜单项时,则启动图4.3的存储设置界面。

代码如下:

int SUB1;

if(id==R.id.item2){

Intent intent = new Intent(MainActivity.this,SaveActivity.class);startActivityForResult(intent,SUB1);

}

 

当点击图4.3的“确定”按钮则采用选择的存储方式保存数据,同时返回到图1.1的界面。

代码如下:

Button choose

Android手机音乐播放器应用开发指南 Android多媒体框架提供了一套丰富的API集合,允许开发者在应用中集成音频、视频和静态图像资源的播放、录制和处理功能。该框架由一系列核心类和接口组成,它们协同工作以支持多媒体功能。框架的组件包括:MediaRecorder: 用于录制音频和视频。MediaPlayer: 用于播放音频和视频。Camera: 提供了与设备摄像头交互的接口。MediaCodec: 处理底层的编解码任务。AudioTrack 和 AudioRecord: 分别用于播放和录制音频数据流。 阅读详情

相关推荐

掌握Android权限管理:AccessControlContentProvider详解

为了方便权限的管理和用户体验,Android将权限分类定义为权限组。同一权限组中的权限通常具有相似的用途。开发者在请求权限时,不需要单独声明每个权限,而是可以声明整个权限组。例如,位置权限组包括和,开发者可以通过声明来获取到两个权限。在中,声明权限组通常需要配合标签。不过,需要注意的是,普通应用开发者通常不需要手动定义权限组,而是直接使用系统预定义好的权限组进行声明。

weixin_42613018的博客 903

FaceRecognizer: 完成Android面部识别概念验证应用

OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,由一系列 C 函数和少量 C++ 类构成。自2000年首次发布以来,OpenCV 已成为计算机视觉领域广泛使用的库,它包含众多图像处理和机器视觉相关算法。

weixin_36289813的博客 1080

Android数据存储和访问实验报告

1.掌握SharedPreferences的使用方法; 2.掌握各种文件存储的区别与适用情况; 3.了解SQLite数据库的特点和体系结构; 4.掌握SQLite数据库的建立和操作方法; 5.理解ContentProvider的用途和原理; 6.掌握ContentProvider的创建与使用方法。 源码和整个工程会上传到博客中,若有需要可下载。 该实验报告包含部分源码,和内容介绍。

实验九 使用SharedPreferences存储简单数据

实验九 使用SharedPreferences存储简单数据

Android数据存储与访问

武科大安卓移动平台实验3 Android数据存储与访问 1. 掌握SQLite数据库编程基本方法。 2. 掌握SimpleCursorAdapter基本用法。 3. 掌握上下文菜单基本用法。

上海建桥学院-移动应用开发-实验报告3-Android数据存储

实验三 Android数据存储 一、实验目的及要求 (1) 掌握Android的SharedPreferences的使用 (2) 掌握在Android中使用SQLite的方法 二、实验内容及步骤 任务:根据下述要求实现对应程序 1、 根据所给界面1完成登入功能,用户名为admin,密码为123456,如果用户名和密码不是admin和123456,则使用Toast提示“用户名或密码错误”,如果是则在checkbox选中的情况下,将用户名和密码保存,当此Activity再次启动时,将已保存的数据显示到界面中,实现记住密码功能。 2、 根据图2来实现功能,启动界面有两个按钮,当点击创建按钮,需要创建一个数据库(数据库名为姓名拼音+学号),创建完数据库的同时创建student表,并往表中插入三条数据(表结构:StuNo(主键)、StuName(姓名)、Score(成绩)、ClassName(班级))。当点击查询按钮时,如图所示,将查询结果在ListView中显示。

Android课程试验报告-实现数据库存储.docx

1.建立DbHelper类: package DbClass; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; public class DbHelper extends SQLiteOpenHelper { public DbHelper(Context context, String name, CursorFactory factory,

超详细流式细胞术全流程解析:从样本制备到结果分析全攻略

流式细胞术(Flow Cytometry)是现代生物学和医学研究中不可或缺的高通量分析技术,可实现对细胞表型、功能状态、细胞周期等多维度参数的快速检测。本文将从实验全流程出发,详解样本制备、上机操作、参数设置及结果处理的核心要点,帮助科研人员精准掌握流式实验关键技术。

good_rrrrr的博客 3867

从零到一:如何用YOLOv8和PyQt5打造你的第一个花卉识别桌面应用

本文详细介绍了如何使用YOLOv8和PyQt5从零开始构建一个花卉识别桌面应用。涵盖环境搭建、数据准备、模型训练、界面设计、模型集成与性能优化等全流程,帮助开发者快速掌握深度学习目标识别技术的实际应用。

weixin_29048775的博客 452

Linux内核4.14版本——drm框架分析(1)——drm简介

drm框架分析

yangguoyu8023的博客 1万+

车辆TBOX科普 第64次 TBOX系统集成测试与文档编写

汽车电子开发中,TBOX作为核心网关面临独特挑战:需处理多网络接口、满足严苛安全标准并确保10年以上可靠性。项目文档是开发流程的核心资产,必须与编码同步更新,构建从需求到测试的完整闭环。系统集成测试需分层进行,结合硬件在环测试和自动化工具,并严格管理缺陷。文档与测试深度协同,通过追溯矩阵确保每个需求都被覆盖验证。最终交付不仅是软件包,更是一套包含完整验证报告的信任体系。这种严谨的工程纪律,是将代码转化为车规级可靠产品的关键保障。

IT深耕十余载,大道之简 1315

绕过Cloudflare的两种简便方案

绕过Cloudflare的两种简便方案

自成背后的博客 1万+

AI自瞄原理剖析(四)从Yolo推理坐标到屏幕坐标:基于FOV视角与焦距的坐标变换与精准瞄准

从Yolo推理框架得到的坐标到屏幕坐标的转换是一个涉及到FOV视角、焦距以及分辨率的复杂过程。通过数学公式,我们可以将推理框坐标反推为游戏内的实际坐标,并最终映射到屏幕坐标系中。利用这些信息,AI自瞄系统能够精确计算出准星从当前位置移动到敌人位置的距离,实现精准的自动瞄准。通过这种方法,AI自瞄系统能够在不同的游戏环境下灵活应对,提供高度精确的操作体验。在AI自瞄系统中,目标检测仅仅是第一步,获取到预测框的坐标后,我们还需要将这些坐标转换为实际屏幕上的精确位置。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1332

基于Verilog的8位CPU设计及UART扩展实现方案,包含完整的架构设计、核心代码实现和仿真验证方法

基于Verilog的8位CPU设计及UART扩展实现方案,包含完整的架构设计、核心代码实现和仿真验证方法

a_zxswer的博客 186

YOLO11 Backbone改进:二值化、三值化权重实战(一)

本文介绍了二值化/三值化神经网络的基本概念、优势挑战及应用场景。二值化网络将权重限制为±1,三值化则增加0值,显著减少模型存储需求和计算复杂度。虽然存在精度下降等挑战,但通过技术改进已能在移动设备、自动驾驶等领域应用。文章分析了YOLO11中适合量化的层,并详细阐述了二值化权重原理及Straight-Through Estimator等关键技术。二值化/三值化神经网络为资源受限设备提供了高效的深度学习解决方案。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 297

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

上一篇: Android基础及应用 Service的使用
下一篇: 解决ajax发送Formdata数据包含文件和text数据,spring后台无法通过MultipartFile拿到文件
Walter Sun
博客等级 码龄9年 1726粉丝 288原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Walter Sun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值