sdk version/level is same as api version/level
minSdk is min version of android on a device that the app can run on
targetSdk is ideal version
compile is what gradle / compiler will compile too. set compile and target as same
minSdk should atleast 23
Keystore
holds your keys(certificates), links them to you as developer/person. keystore has a password too.
while google recommends same keystore for all YOUR apps,
instead have same keystore for a family of apps i.e organisation wise ex hukum and hyaku diff keystore cause otherwise you’ve to share keystore to them, and they coulldddd tamper w each others apps
android sdk comes with a default keystore that’s used by default for signing your android apps. this is a per device level. (when you install the sdk ex via android studio)
keytool - management and generation of keystore
app signing - you sign your app w a certificate (only 1, playstore won’t accept if signed with mulitple, even though you can sign w multiple)
fingerprint - sha1 hash of your specific certificate/key in keystore. obtained from keytool
play app signing - you create an upload keystore , and then upload to play app signing, which creates the actual deploy/release keystore of the published app(you don’t do this directly). basically it handles the release keystore for you. pro is if you loose your upload keystore, you can request to use another one