Fix installing from url doesn't mark complete

Currently, installing from url doesn't marl complete so it will
reinstall every time.

Bug: 375873838
Test: Manually
Change-Id: I26ec3d784f9abd5e046c72252d1c803ff57c658f
diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.java b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.java
index b3102db..6737d49 100644
--- a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.java
+++ b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.java
@@ -206,7 +206,7 @@
             notifyError(getString(R.string.installer_error_unknown));
             return false;
         }
-        return true;
+        return InstallUtils.createInstalledMarker(this);
     }
 
     private void notifyError(String displayText) {
diff --git a/libs/vm_launcher_lib/java/com/android/virtualization/vmlauncher/InstallUtils.java b/libs/vm_launcher_lib/java/com/android/virtualization/vmlauncher/InstallUtils.java
index 17dc8dd..a4e7809 100644
--- a/libs/vm_launcher_lib/java/com/android/virtualization/vmlauncher/InstallUtils.java
+++ b/libs/vm_launcher_lib/java/com/android/virtualization/vmlauncher/InstallUtils.java
@@ -49,6 +49,16 @@
         return Files.exists(getInstallationCompletedPath(context));
     }
 
+    public static boolean createInstalledMarker(Context context) {
+        try {
+            File file = new File(getInstallationCompletedPath(context).toString());
+            return file.createNewFile();
+        } catch (IOException e) {
+            Log.e(TAG, "Failed to mark install completed", e);
+            return false;
+        }
+    }
+
     private static Path getPayloadPath() {
         File payloadDir = Environment.getExternalStoragePublicDirectory(PAYLOAD_DIR);
         if (payloadDir == null) {
@@ -114,14 +124,7 @@
         }
 
         // Create marker for installation done.
-        try {
-            File file = new File(getInstallationCompletedPath(context).toString());
-            file.createNewFile();
-        } catch (IOException e) {
-            Log.e(TAG, "Failed to mark install completed", e);
-            return false;
-        }
-        return true;
+        return createInstalledMarker(context);
     }
 
     private static Function<String, String> getReplacer(Context context) {