diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/ImageArchive.kt b/android/TerminalApp/java/com/android/virtualization/terminal/ImageArchive.kt index 9ff5024c3..e3b2873cb 100644 --- a/android/TerminalApp/java/com/android/virtualization/terminal/ImageArchive.kt +++ b/android/TerminalApp/java/com/android/virtualization/terminal/ImageArchive.kt @@ -175,12 +175,12 @@ internal class ImageArchive { } /** - * Creates ImageArchive from either SdCard or Internet. SdCard is used only when the build - * is debuggable and the file actually exists. + * Creates ImageArchive from either SdCard or Internet. SdCard is used only when the + * file actually exists. */ fun getDefault(): ImageArchive { val archive = fromSdCard() - return if (Build.isDebuggable() && archive.exists()) { + return if (archive.exists()) { archive } else { fromInternet() diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.kt b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.kt index e1949f0d8..aefd7f886 100644 --- a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.kt +++ b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.kt @@ -64,6 +64,7 @@ public class InstallerActivity : BaseActivity() { setContentView(R.layout.activity_installer) updateSizeEstimation(ESTIMATED_IMG_SIZE_BYTES) + sdcardLocation(fromSdCard().getPath()) measureImageSizeAndUpdateDescription() waitForWifiCheckbox = findViewById(R.id.installer_wait_for_wifi_checkbox) @@ -78,6 +79,15 @@ public class InstallerActivity : BaseActivity() { } } + private fun sdcardLocation(dst: String) { + val desc = + getString(R.string.installer_sdcard_info_text_format, dst) + runOnUiThread { + val view = findViewById(R.id.installer_sdcard_info) + view.text = desc + } + } + private fun updateSizeEstimation(est: Long) { val desc = getString(R.string.installer_desc_text_format, Formatter.formatShortFileSize(this, est)) @@ -109,7 +119,7 @@ public class InstallerActivity : BaseActivity() { override fun onResume() { super.onResume() - if (autoInstall || (Build.isDebuggable() && fromSdCard().exists())) { + if (autoInstall || fromSdCard().exists()) { showSnackBar("Auto installing", Snackbar.LENGTH_LONG) requestInstall() } diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.kt b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.kt index 79bb2f8ef..a2ff91057 100644 --- a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.kt +++ b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerService.kt @@ -152,11 +152,6 @@ class InstallerService : Service() { val archive = fromSdCard() val archive_path = archive.getPath() - // Installing from sdcard is preferred, but only supported only in debuggable build. - if (!Build.isDebuggable()) { - Log.i(TAG, "Non-debuggable build doesn't support installation from $archive_path") - return false - } if (!archive.exists()) { return false } diff --git a/android/TerminalApp/res/layout/activity_installer.xml b/android/TerminalApp/res/layout/activity_installer.xml index 38b29b9b5..8a6d437f2 100644 --- a/android/TerminalApp/res/layout/activity_installer.xml +++ b/android/TerminalApp/res/layout/activity_installer.xml @@ -63,6 +63,17 @@ android:layout_marginHorizontal="32dp" android:textSize="16sp" /> + + Install Linux terminal To launch Linux terminal, you need to download roughly \u200E%1$s\u200E of data over the network.\nWould you like to proceed? + + Alternatively, if you want to provide your own custom image, you can place it under %1$s using adb or the Files app Download using Wi-Fi only