Read build id lazily

Bug: 376784944
Test: N/A
Change-Id: Ie8ef404f0809917e31a818649ff36b7f5f9fa6fc
diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/InstalledImage.java b/android/TerminalApp/java/com/android/virtualization/terminal/InstalledImage.java
index 08ebac0..318f49a 100644
--- a/android/TerminalApp/java/com/android/virtualization/terminal/InstalledImage.java
+++ b/android/TerminalApp/java/com/android/virtualization/terminal/InstalledImage.java
@@ -48,7 +48,7 @@
     private final Path mBackup;
     private final Path mConfig;
     private final Path mMarker;
-    private final String mBuildId;
+    private String mBuildId;
 
     /** Returns InstalledImage for a given app context */
     public static InstalledImage getDefault(Context context) {
@@ -62,7 +62,6 @@
         mBackup = dir.resolve(BACKUP_FILENAME);
         mConfig = dir.resolve(CONFIG_FILENAME);
         mMarker = dir.resolve(MARKER_FILENAME);
-        mBuildId = readBuildId();
     }
 
     public Path getInstallDir() {
@@ -86,6 +85,9 @@
 
     /** Returns the build ID of the installed image */
     public String getBuildId() {
+        if (mBuildId == null) {
+            mBuildId = readBuildId();
+        }
         return mBuildId;
     }