From a4fa082ab9de4265518c337ae1ea0b16b0342850 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Fri, 24 Jan 2025 17:05:09 +0000 Subject: [PATCH 2/2] Set android:versionCode as an integer derived from the Emacs version The version code is intended to be an integer that increments for each Android package release (https://developer.android.com/studio/publish/versioning#versioningsettings). If we keep this updated under version control, then F-Droid (a third-party Android package repository), can watch for that, and use it to automatically build Emacs packages for Android each time a new Emacs release is tagged (https://f-droid.org/en/docs/Build_Metadata_Reference/#UpdateCheckData). * admin/admin.el (set-version): Update versionCode in java/AndroidManifest.xml.in. * java/AndroidManifest.xml.in: Bump versionCode to 300093000. * java/INSTALL: Note that Android packages can be downgraded with the `adb install -d' command. --- admin/admin.el | 7 +++++++ java/AndroidManifest.xml.in | 8 ++------ java/INSTALL | 3 ++- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/admin/admin.el b/admin/admin.el index d98b8243f25..57335f95d3a 100644 --- a/admin/admin.el +++ b/admin/admin.el @@ -116,6 +116,13 @@ set-version (rx (and "AC_INIT" (1+ (not (in ?,))) ?, (0+ space) ?\[ (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "java/AndroidManifest.xml.in" + (apply #'format "%02d%02d%02d000" + (mapcar #'string-to-number + (split-string version "\\."))) + (rx (and "android:versionCode=\"" + (submatch (1+ (in digit))) + "\""))) (set-version-in-file root "nt/README.W32" version (rx (and "version" (1+ space) (submatch (1+ (in "0-9.")))))) diff --git a/java/AndroidManifest.xml.in b/java/AndroidManifest.xml.in index 6243c5e13ba..e4874b5209b 100644 --- a/java/AndroidManifest.xml.in +++ b/java/AndroidManifest.xml.in @@ -18,11 +18,7 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see . --> + restrictions prevent Emacs from making HTTP connections. --> . --> android:appCategory="productivity" @ANDROID_SHARED_USER_ID@ @ANDROID_SHARED_USER_NAME@ - android:versionCode="30" + android:versionCode="300093000" android:versionName="@version@">