是否有可能在Android没有数据库存储?

是否可以在应用程序中存储列表,而不必拥有数据库? 否则,存储简单列表最简单的方法是什么?

我认为这取决于您正在处理的列表的内容。 如果List仅存储“简单对象”(如只有少数成员的整数或其他对象的字符串列表),则可以使用Android中内置的SharedPrefenrence。 他们需要一把钥匙和一个价值。 因此,如果你的List包含5个对象 – 让我们说点保持简单 – 你可以保存它们

SharedPreferences.Editor editor = getSharedPreferences("YourListName", MODE_PRIVATE).edit(); for(int i = 0; i < YOUR_LIST.count() ; i++){ Point p = YOUR_LIST.get(i); editor.putInt("Element" + i + " X", px); editor.putInt("Element" + i + " Y", py); } editor.commit(); 

再次接受这个你可以说

 SharedPreferences prefs = getSharedPreferences("YourListName", MODE_PRIVATE); Map map = prefs.getAll(); 

Android中的数据存储有多种方法:查看开发人员专区,您可以获得所需的所有信息:

共享首选项将私有原始数据存储在键值对中。

内部存储将私有数据存储在设备内存中。

外部存储将公共数据存储在共享外部存储上。

SQLite数据库将结构化数据存储在私有数据库中。

网络连接使用您自己的网络服务器在Web上存储数据。

当您找到最适合您需求的存储时,请随时询问任何类型的存储。

数据库有多种持久性替代方案。 仅举几例(可通过Java访问),您可以

  • 使用简单文件(使用序列化或其他配置格式 – 在这种情况下,请查看commons配置 )
  • 编写XML内容(使用XML序列化 – 再次?!? – 或其他机制,如XStream , JAXB ,……)
  • 使用任何NoSQL存储(图形DB,文档DB等,……)
  • 使用普遍度层(如space4j )
  • 使用transactionnal数据存储(如JDBM )

仅列举Java中许多存储function中的一小部分

有几种方法,请查看文档http://developer.android.com/guide/topics/data/data-storage.html

Java允许您使用简单的API来使用对象的序列化。 这里有一个来自java网页的技术文章。