Shared db uses Shared Preferences in
WORLD_READABLE mode which can make another applications read the data. For example if you store a value in Application1. It can be accessed ( Read only ) by Application which is not possible in normal Preferences.
Do Not use to Store Confidential/Important data in this DB. Other applications can also read the data. ( If you are storing information like this, Please Encrypt your data before Storing and Decrypt it once after Retrieving )
Do not use the same the namespace if you are using TinyDB which will interfere with this SharedDB.
This event fires when getting data from other Applications only. Fires if any problem occurs with packagename not found or namespace not found.
You can change the Namespace as your need. (Ignore the warning)
This property will be used when getting/storing information with the current app
You can use this to store value in the Shared Preference Database. Namespace property will be used as namespace.
You can use this to get value within the current application in the Shared Preference Database. Namespace property will be used as namespace.
You can use this block to get value from other applications by the parameters.
This block won’t use the namespace property. Fires ErrorOccured if any error occurs.
1.Is this SharedDB an online database?
No, It works using the SharedPreferences class like the TinyDB does. Your data is stored on the device and will be cleared once uninstalled or if they clear the application data.
2.What’s the difference between TinyDB and this extension?
This extension uses a different permission mode to store data. It stores using the
WORLD_READABLE where TinyDB uses
MODE_PRIVATE where the data can be stored/retrieved/modified only by the applicaton. But, in SharedDB, any application ( knowing it’s namespace and tag names ) can read the values.
3.What about the data security?
Yes, other applications can still read the data if they know your namespace and tag ( Only using SharedPreferences ) names. The user cannot access them without root. This happens even with TinyDB too. Root users can do anything in both DB’s which uses the same class. So, It is recommended to Encrypt your data on both DB’s (TinyDB and SharedDB)
You can take a look at the code to see how I made this extension or contribute to this in the future.
Aix: com.jaxparrow.shareddb.aix (5.8 KB)