IoT uygulamaları, kullanıcıların arabadan bağlı cihazlarda ilgili işlemleri yapmasına olanak tanır. Örneğin, belirli cihazların durumunu kontrol etme (ör. garaj kapısını açma, evdeki ışık anahtarlarını çevirme veya ev güvenliğini etkinleştirme)
Manifest dosyanızda kategori desteğini bildirin
Uygulamanız, CarAppService manifest dosyasının intent filtresinde androidx.car.app.category.IOT
araba uygulaması kategorisini beyan etmelidir.
<application>
...
<service
...
android:name=".MyCarAppService"
android:exported="true">
<intent-filter>
<action android:name="androidx.car.app.CarAppService" />
<category android:name="androidx.car.app.category.IOT"/>
</intent-filter>
</service>
...
<application>
Uygulamanızın işlevlerini uygulama
Uygulamanızı uygulamak için Arabalar için Android uygulama kitaplığını kullanma başlıklı makalede, Car App Library uygulamalarının nasıl oluşturulduğu açıklanmaktadır. Ayrıca, uygulamanız bu yönergelere göre inceleneceğinden IOT uygulamaları için Araba Uygulaması Kalite Yönergeleri hakkında bilgi edinmeyi unutmayın.
IoT uygulamalarında, aşağıdaki örnekte gösterildiği gibi, cihaz listesini görüntülemek ve kullanıcının cihazlarla etkileşim kurmasına izin vermek için GridTemplate
harika bir seçimdir:
val listBuilder = ItemList.Builder() val headerBuilder = Header.Builder() val garageIcon = IconCompat.createWithResource( carContext, R.drawable.ic_garage ) listBuilder.addItem( GridItem.Builder() .setTitle("Garage door") .setImage( CarIcon.Builder(garageIcon).build(), GridItem.IMAGE_TYPE_ICON ) .setOnClickListener { // Handle user interactions } .build() ) listBuilder.addItem( GridItem.Builder() .setTitle("Garage lights") // Show a loading indicator until the status of the device is known // (call invalidate() when the status is known to refresh the screen) .setLoading(true) .build() ) return GridTemplate.Builder() .setHeader( headerBuilder.setTitle("Devices") .setStartHeaderAction(Action.APP_ICON).build() ) .setSingleList(listBuilder.build()) .build()