Flutter/Android development

Hello devs, I needed some guidance on a couple of things as relates to mobile app development. So I have an idea of an app which will need a prebuilt database that I want to build and I figured that using Flutter maybe easier since am not so well seasoned with Android development per say. And also to take advantage of deploying to ios and play store in the same sitting. Later on I hope that there will be a web version for it too. The following are the points I would need advice from your side.

  1. I have already designed the data base schema and picked on SQLITE as the database of choice since I want the app to have an offline experience. Is this the best choice or picking up on Firebase/firestone is better.
  2. The app will need to have some in app purchases for a premium experience. Question is how do I archieve this to enable a user access extra functionality from the database while offline…One of the articles that I came accross advised to allow authentication when the user is online and then encrypt the credentials and save them locally in the db. Any thoughts on this?
  3. How do you enforce that once the app is shared to another phone that the credentials are removed and thus the new user has to sign up or sign in to access the premium features. Thanks in advance and as I mentioned I dont have much experience around this field but your help goes a long way. @dkayiwa @f4ww4z @ibacher
1 Like

@reagan I am not so experienced with flutter development but in context of android development.

  1. we currently use Room DB which is an abstraction layer over SQLITE we used earlier which is better in many ways from the plain SQLITE we used earlier.
  2. for Implementing a free and paid version of your app in context of android is implemented using something called as a “Library Project” which manages both free and paid versions of the app using a single codebase, you will find this useful.
  3. Actually the login credentials are always required when we first install the app for the first time in any phone since once you login using a credential it sort of gets stored locally in that phone so I guess enforcing this will not be a problem !!

hope it helps !! :grinning:


Thanks @saurabh I have a starting point to investigate… I have also pushed the discussion to stackoverflow(Flutter)