diff --git a/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/app/AppInfo.kt b/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/app/AppInfo.kt
index c89ffe5..9611b13 100644
--- a/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/app/AppInfo.kt
+++ b/packages/SettingsLib/SpaPrivileged/src/com/android/settingslib/spaprivileged/template/app/AppInfo.kt
@@ -53,15 +53,24 @@
                 ),
             horizontalAlignment = Alignment.CenterHorizontally,
         ) {
+            val app = packageInfo.applicationInfo
             Box(modifier = Modifier.padding(SettingsDimension.itemPaddingAround)) {
-                AppIcon(app = packageInfo.applicationInfo, size = SettingsDimension.appIconInfoSize)
+                AppIcon(app = app, size = SettingsDimension.appIconInfoSize)
             }
-            AppLabel(packageInfo.applicationInfo)
+            AppLabel(app)
+            InstallType(app)
             if (displayVersion) AppVersion()
         }
     }
 
     @Composable
+    private fun InstallType(app: ApplicationInfo) {
+        if (!app.isInstantApp) return
+        Spacer(modifier = Modifier.height(4.dp))
+        SettingsBody(stringResource(R.string.install_type_instant))
+    }
+
+    @Composable
     private fun AppVersion() {
         if (packageInfo.versionName == null) return
         Spacer(modifier = Modifier.height(4.dp))
