`

Android数据存档SharedPreferences(1)

阅读更多

App运行中,需要配置很多的参数信息,这些参数信息保存在哪里呢?

  • SharedPreferences 配置信息存储

这个接口保存只是一些基本数据类型,例如String,int,float,boolean,long因此接下来的实例我们就围绕这几个数据类型展开。

首先SharedPreferences 里面存储的形式相当于map的键值,都有对应的相应的key,利用key方法我们可以取出对应的数据类型。同时利用edit写入数据。

public class MainActivity extends Activity {

	private static final String FILENAME="ee"; 
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//指定操作的文件名称
		SharedPreferences share=super.getSharedPreferences(FILENAME, Activity.MODE_PRIVATE);
		//编辑文件
		SharedPreferences.Editor edit=share.edit();
		edit.putString("name", "张依依");//保存字符串类
		edit.putInt("age", 21);//保存int类
		edit.commit();//利用commit进行提交

	}

 

注意:这里数据一定要用commit进行提交,否则不会被保存

这样程序运行之后,数据又保存到了哪里?保存到了ee.xml文件里,那这个文件又去哪里找呢

其实保存在了DDMS文件中,想要寻找的话,打开windows-open perspective-other 打开DDMS

再打开file explore

data-data-你的包名称下的shared_prefs


可以用DDMS的put a file from the device

导出ee.xml,然后用记事本打开效果如图:



 
 

上面讲了如何写入,现在重要的是如何读出:

为了显示我们首先配置布局文件:

 

<TextView
        android:id="@+id/name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textSize="22px" />

    <TextView
        android:id="@+id/age"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textSize="22px" />

 

 在定义Activity文件:

在原有基础上加上读功能

 

 

 

 

 

 

 

private static final String FILENAME="ee"; 
	private TextView name=null;
	private TextView age=null;
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//指定操作的文件名称
		SharedPreferences share=super.getSharedPreferences(FILENAME, Activity.MODE_PRIVATE);
		//编辑文件
		SharedPreferences.Editor edit=share.edit();
		edit.putString("name", "张依依");//保存字符串类
		edit.putInt("age", 21);//保存int类
		edit.commit();//利用commit进行提交
		this.name=(TextView)super.findViewById(R.id.name);
		this.age=(TextView)super.findViewById(R.id.age);
		this.name.setText("作者:"+share.getString("name", "没有作者信息"));
		this.age.setText("年龄:"+share.getInt("age", 0));
		
	}

 

 实现效果如下:

 



 

 

  • 大小: 3.4 KB
  • 大小: 10.5 KB
  • 大小: 13.7 KB
  • 大小: 17.6 KB
  • 大小: 31.5 KB
  • 大小: 31.5 KB
  • 大小: 77 KB
0
1
分享到:
评论

相关推荐

    Android-旅行青蛙辅助存档修改明信片导出

    1. **Android SDK与环境搭建**: - 开发前,首先需要安装Android Studio,这是Google提供的官方集成开发环境(IDE),包含了Android SDK,用于编写、调试和构建Android应用。 - 配置Android虚拟设备(AVD)或连接...

    android游戏开发:魔塔

    SQLite数据库可以用来存储游戏数据,SharedPreferences用于轻量级的配置存储,或者使用序列化和JSON解析来保存更复杂的数据结构。 5. **网络功能**:如果游戏有在线元素,如排行榜、云存档,那么开发者需要掌握网络...

    Android 飞机大战小游戏

    Android的SharedPreferences可以用来存储用户的本地数据,如得分记录和游戏进度。 通过研究“Android 飞机大战小游戏”的源代码,开发者不仅能学习到基础的Android应用开发,还能深入了解游戏开发的核心技术,包括...

    android源码游戏源代码跳动的心

    Android提供了SharedPreferences和FileInputStream/OutputStream等工具,可以用来保存玩家的分数、等级等信息,或序列化游戏状态。 七、游戏逻辑 "跳动的心"游戏的源码必然包含了游戏的逻辑规则,如得分系统、关卡...

    坦克大战Android

    9. **游戏保存与加载**:为了提供存档功能,游戏可能会保存玩家分数、进度等信息,Android提供了SharedPreferences或文件系统来实现数据持久化。 10. **网络对战功能**:如果游戏支持多人对战,可能涉及到网络编程...

    安卓Android源码——Android游戏源码——忍者快跑.zip

    1. **Android游戏开发基础**:Android游戏开发通常使用Java或Kotlin编程语言,结合Android SDK进行。这个源码提供了实际应用实例,展示了如何构建一个完整的Android项目,包括项目结构、资源管理、Activity生命周期...

    Android游戏开发PDF

    游戏进度和用户数据通常需要保存在本地,SQLite数据库或SharedPreferences是常见的数据存储方式。对于大量数据,还可以考虑使用云同步服务。 十、发布与分发 完成游戏开发后,开发者需要打包APK并签名,然后通过...

    安卓Android源码——游戏源码休闲小游戏年年有鱼项目.zip

    Android提供了SharedPreferences、SQLite数据库等方法来保存游戏数据。 以上是对"年年有鱼"项目源码的一些基本分析,通过学习和研究这个项目,开发者不仅可以掌握Android游戏开发的基础技术,还能了解到如何将这些...

    android手机迷宫游戏

    8. **存档与读取**:为了让用户能够保存进度,需要实现数据存储功能。Android提供了SharedPreferences、SQLite数据库和内部/外部存储等多种方式,根据需求选择合适的方法。 9. **人机交互设计**:游戏的易用性和...

    Android 安卓游戏打地鼠源码-IT计算机-毕业设计.zip

    Android提供了SQLite数据库和SharedPreferences等存储机制,源码中可能会看到如何使用它们来保存用户的游戏进度和高分记录。 总结起来,通过分析这个“Android安卓游戏打地鼠源码”,我们可以学习到Android应用开发...

    Android游戏开发大全(PDF+源码)part03

    对于大量数据的存储,可能涉及SQLite数据库或SharedPreferences。 最后,测试和性能优化是确保游戏质量的关键步骤。书中可能介绍如何使用Android的性能分析工具进行内存和CPU使用监控,以及如何进行单元测试和兼容...

    Android游戏开发大全.rar

    1. **Android SDK**: Android Software Development Kit (SDK) 是开发Android应用的基础,包括了开发环境、API文档、调试工具等。对于游戏开发,Android SDK提供了必要的库和工具,如Android Studio IDE,用于构建、...

    android 雷电游戏源码

    12. **存档与数据持久化**:游戏进度、用户设置等数据需要保存,Android提供了SQLite数据库和SharedPreferences等机制进行数据持久化。 13. **版本控制与构建工具**:项目中很可能使用了Git进行版本控制,并配合...

    基于android的网球游戏

    SQLite数据库或SharedPreferences可以用来存储轻量级数据,对于大量数据,可使用云存储服务。 10. **性能优化** 为了保证游戏在各种设备上运行良好,需要进行性能优化。这包括减少内存占用、提高渲染效率、避免ANR...

    Android 游戏实例(日本人编写)

    另外,游戏可能还涉及到数据存储,例如SQLite数据库或SharedPreferences,用于保存用户进度和设置。 最后,游戏实例可能还会涵盖如何使用Google Play服务实现游戏成就、排行榜和云存档等功能,以增强游戏的社交性和...

    Android 手机游戏完整源代码

    1. **Android SDK**: 开发Android游戏的第一步是安装并熟悉Android Software Development Kit (SDK)。SDK提供了必要的工具和库,用于构建、调试和部署Android应用,包括游戏。 2. **Java编程语言**: Android游戏...

    Android小鳄鱼闯关源码

    关卡进度、玩家分数等信息通常需要持久化存储,Android提供了SQLite数据库或SharedPreferences来实现这一功能。源码中会有相关的数据存储和读取代码。 十、测试与调试 游戏开发过程中,测试和调试是必不可少的环节...

    android 捕鱼源码

    Android的SharedPreferences或SQLite数据库可能会被用来存储这些数据。 10. **性能优化** - 为了保证游戏流畅运行,源码中可能会包含一些性能优化技巧,比如减少不必要的绘图操作,使用高效的算法,或者利用多线程...

    android 纸牌游戏

    这可以通过SharedPreferences进行轻量级的数据存储,或者采用更复杂的方式如云存档,以满足不同用户的需求。 此外,良好的用户体验也是关键。游戏应有清晰的UI设计,流畅的动画效果,以及友好的错误处理机制。可以...

    android冒险游戏——胜利大逃亡开发实例

    数据存储是另一个重要方面,开发者可能使用SQLite数据库保存用户进度、成就等信息,或者使用SharedPreferences进行轻量级的数据存储。网络功能则可能用于在线排行榜、云存档或者多人联机,这需要对HTTP协议和JSON...

Global site tag (gtag.js) - Google Analytics