diff --git a/app/src/main/java/io/homeassistant/companion/android/launch/LaunchActivity.kt b/app/src/main/java/io/homeassistant/companion/android/launch/LaunchActivity.kt index 759d846c578..9a2fac86153 100644 --- a/app/src/main/java/io/homeassistant/companion/android/launch/LaunchActivity.kt +++ b/app/src/main/java/io/homeassistant/companion/android/launch/LaunchActivity.kt @@ -1,5 +1,8 @@ package io.homeassistant.companion.android.launch +import android.content.Intent +import android.content.pm.PackageManager +import android.os.Build import android.os.Bundle import android.util.Log import androidx.activity.compose.setContent @@ -81,7 +84,20 @@ class LaunchActivity : AppCompatActivity(), LaunchView { override fun displayWebview() { presenter.setSessionExpireMillis(0) - startActivity(WebViewActivity.newInstance(this, intent.data?.path)) + val isAutomotive = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + this.packageManager.hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE) + } else { + false + } + if (isAutomotive && BuildConfig.FLAVOR == "full") { + val carIntent = Intent( + this, + Class.forName("androidx.car.app.activity.CarAppActivity") + ).putExtra("TRANSITION_LAUNCH", true).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + startActivity(carIntent) + } else { + startActivity(WebViewActivity.newInstance(this, intent.data?.path)) + } finish() overridePendingTransition(0, 0) // Disable activity start/stop animation } diff --git a/app/src/main/java/io/homeassistant/companion/android/vehicle/MainVehicleScreen.kt b/app/src/main/java/io/homeassistant/companion/android/vehicle/MainVehicleScreen.kt index d8bd7c51ef2..4f2cc933ac8 100644 --- a/app/src/main/java/io/homeassistant/companion/android/vehicle/MainVehicleScreen.kt +++ b/app/src/main/java/io/homeassistant/companion/android/vehicle/MainVehicleScreen.kt @@ -26,6 +26,7 @@ import com.mikepenz.iconics.IconicsDrawable import com.mikepenz.iconics.typeface.library.community.material.CommunityMaterial import com.mikepenz.iconics.utils.sizeDp import com.mikepenz.iconics.utils.toAndroidIconCompat +import io.homeassistant.companion.android.BuildConfig import io.homeassistant.companion.android.common.data.authentication.SessionState import io.homeassistant.companion.android.common.data.integration.Entity import io.homeassistant.companion.android.common.data.integration.domain @@ -242,7 +243,7 @@ class MainVehicleScreen( return ListTemplate.Builder().apply { setTitle(carContext.getString(commonR.string.app_name)) setHeaderAction(Action.APP_ICON) - if (isAutomotive && !iDrivingOptimized) { + if (isAutomotive && !iDrivingOptimized && BuildConfig.FLAVOR != "full") { setActionStrip( ActionStrip.Builder().addAction( Action.Builder()