Project Introduction
The Password Manager project provided here is a rewritten version of the Passwordsafe (released under Apache license) written by Steven Osborn, and has now implemented the basic password management functionality under the Android platform. The use of db4o in the project source code replaces the SQLite, which not only makes the persistence process more intuitive, but also makes the development process faster and the entire application more efficient.
In this project, you can obtain the following resources:
Comparison between Db4o and SQLite in basic persistence operations
Complete Android sample application code
Application Run Time Video Demo
Basic functions
The basic function of this application is to securely save the Web site login information, such as URL, username, password, which uses the 128-bit AES encryption algorithm. The user must provide the correct password to access the application, and the password is used to encrypt/decrypt the application data.
This provides an online video of the password manager operating under the Android emulator using DB4O technology:
Http://www.youtube.com/watch?v=UFSD44AcBwM
If you download the source code (see the detailed instructions at the end of this page), you will see that the Dbhepler class in the original Passwordsafe (the persistence under SQLite) has been replaced with the Db4ohelper class (implementing db4o persistence). Now, let me show you the difference between db4o and SQLite in the process of persistence.
SQL initialization Overhead
This is what you need to initialize the Password Manager SQL code (table name, table Creation command, and so on) under SQLite:
And here's the equivalent db4o code:
As you can see, there is no need for a predefined schema in db4o (you could use the Db4o object schema as a schema, and refactoring under this object model is very elegant and even automated in some simple cases).