if we store data in sqllite database in android, then data will get erased if this apk is installed in another phone.
Then how does offline dictionary apps store data which is accessed by everyone having the app.
I might not fully understand this question, but if you are storing data in a SQLite database, it will only be persisted on that device; it has nothing to do with the apk or installing the apk on another device. The application will attempt to create a new database on every device it is installed.
Installing the apk on another device will not copy the database from one device to another.
Related
Offline application with user data that has to be saved on the device but also possible to delete app and reinstall on other device and use same data there.
Can room database be used fully offline?
Written in kotlin
I was using firebase till now and a friend recommended me to use Sqlite.. I was wondering if i setup a quiz in my app and it stores the data to my phone's sqlite... can others get access to it if my internet connection is fine? i used to use firebase for such a purpose but was wondering if sqlite can perform this function
Yes, others can get access to the data stored in that SQLite database. Here are just a couple of scenarios:
You store the SQLite database on external storage (e.g. a microSD card) and someone gets access to that microSD card. (E.g. you leave your phone unattended and someone removes the card.)
Someone gains physical access to your phone. (E.g. you turn it in for repairs without wiping the storage first.)
You store backups of your phone on your computer and someone gains access to those backups.
You store backups of your phone on an USB key and lose that USB key.
There is a security bug in Android that allows remote access to the phone's storage.
There is a security bug in the quiz app that allows remote access to app's storage.
These are just some of the ways in which someone can get access to that database.
Sqlite data is stored in your phone's storage (doesn't require internet) whereas firebase is cloud storage (requires internet). In both cases no one can see your data. If you are only making a quiz app i would recommend sqlite database as it will store the data in user's phone.
Sqlite database stored in internal storage of your app, so only your app can access to it. But if device have root, there are possibility to extract database.
Sqlite database was highly preferable if you are making a quiz app. Since it stores the data in user's device,I'm afraid that data can't be shared with other devices (until shared physically). And that won't be efficient for an application. I would prefer using parse server, for sharing those data over the internet with other devices.
For my best knowledge so far, the biggest difference between SQLite and MySQL is that it does not require a server to run, as SQLite stores data in a database file in each device.
The question rising from this part is..
Let's say I created an Android app which simply contains login and signup features. By installing this app in one device I create an ID with a password (let's say the ID is ricoangeloni and the password is 1234).
If I install the app in another device, is it still possible to log in with the pre-made ID? This is still very confusing, as I am probably not sure if the clients are sharing the centre database.
The answer to this question depends on where the database is located (regardless of whether you're using SQLite or MySQL to access the database). If you're storing the database on the Android device, then that database is specific to that device.
If the database however is stored on some internet-facing computer (doesn't have to be a "server" per say) and your app interacts with that hosted database, then an account created in that database is accessible from anywhere, not just your app. A website for example could also use the accounts in that database for login purposes.
The approach of housing the database on the device does have its advantages, namely you don't need to have a dedicated machine to host the database. But, if you wanted to have one database with all of the accounts and use that for authentication purposes, you're going to need to put that database on the internet.
Is it possible for data in a Meteor app deployed to a mobile device to be saved locally so that it persists across sessions.
I would like my MEteor app to be used without Internet connection.
However, the local database keeps resetting everytime I start a new session. This is how it behaves in the browser I know but not something I want happening on an app. I assume every time the app is replaced in memory, the local data storage is reset.
I've tried using Session variables, tried saving it in collections and anonymous collections - they all get wiped every time I delete the app from my recent apps list.
For Meteor, is there a way to save data to a mobile persistently?
I would suggest to start here: https://blog.groupbuddies.com/posts/45-offline-web-apps-with-meteor
I recently wrote and installed an Android app on my device. The app wrote data to the local SQL database and uploaded this data to my webserver. But due to network problems, there are a few records that were skipped, so they aren't on my webserver.
Now i want to get those rows (or my full SQL database) from my android device. But my question is how?
If I write a new version of my app and reinstall it, then all my data will be lost.
Isn't there a way to access my SQL database without losing my data?
My device is not rooted, so those backup app's won't work...
You may get access using DDMS.