chore(android): section 5 - ten permissions down to three, no secrets in release
The manifest asked for fine and coarse location, camera, phone, phone state and external storage - Delphi's defaults, none of them used. On a password vault those are exactly the wrong signals: whoever reads the app's listing saw a request for position and camera with no possible explanation. The list is written by hand now. A trap on the way: naming the substitution marker inside the comment that explains its removal is enough to bring it back. The substitution is textual and does not care that it lands in a comment. The bench credentials are no longer compiled into a release - the local include is debug-only. Verified in the binary in UTF-8 AND UTF-16: Delphi stores strings as UTF-16, so an ASCII grep returned zero on both sides and proved nothing. The log leaves the home screen in release without leaving the application: a 1.5 s press on the status line brings it back. Nothing secret is in it, but a permanent Log button is development noise, and diagnostics must stay reachable for the day something goes wrong remotely. And the Release configuration did not compile at all, which nobody knew: the two self-checks had their declarations under IFDEF DEBUG and their bodies outside. Invisible as long as one only ever builds Debug. Signing is what remains, and the keystore password is the user's to hold.
This commit is contained in:
@@ -7,7 +7,23 @@
|
||||
android:versionName="%versionName%"
|
||||
android:installLocation="%installLocation%">
|
||||
<uses-sdk android:minSdkVersion="%minSdkVersion%" android:targetSdkVersion="%targetSdkVersion%" />
|
||||
<%uses-permission%>
|
||||
<!-- LA LISTE EST ECRITE ICI, PAS HERITEE. Le marqueur de substitution qui
|
||||
se trouvait a cette place y deversait les defauts de Delphi :
|
||||
localisation fine et grossiere,
|
||||
camera, telephone, etat du telephone, stockage externe en lecture et
|
||||
en ecriture. Aucune n'est utilisee, et sur un coffre a mots de passe
|
||||
ce sont exactement les mauvais signaux - celui qui lit la fiche de
|
||||
l'application y voit une demande de position et d'appareil photo sans
|
||||
explication possible.
|
||||
|
||||
Il n'en reste qu'une : le reseau, pour parler au depot. Les deux de
|
||||
biometrie ci-dessous sont deja explicites depuis longtemps. Ajouter
|
||||
une permission demande donc de l'ecrire ici, ce qui est le but.
|
||||
|
||||
NE PAS ECRIRE LE NOM DU MARQUEUR DANS CE COMMENTAIRE : la substitution
|
||||
est textuelle et ne regarde pas si elle tombe dans un commentaire -
|
||||
le nommer pour l'expliquer suffit a le faire revenir. -->
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<!-- Absente de la liste par defaut de Delphi, et sans elle BiometricPrompt
|
||||
leve java.lang.SecurityException a la premiere invite - pas au
|
||||
demarrage, donc le defaut ne se voit qu'en essayant d'ouvrir le coffre.
|
||||
|
||||
Reference in New Issue
Block a user