Android Automotive OS için İlk Uygulamanızı Nasıl Oluşturursunuz – Grape Up

In: Genel


Android Automotive OS, otomotiv şirketleri müşterilerine daha özel bir deneyim sunmaya çalıştıkça daha fazla tanınırlık kazanıyor. Burada AAOS için ilk uygulamayı oluşturmaya yönelik kılavuzumuzu paylaşıyoruz.

Başlamadan önce, ilk makalemizi okuyun AAOS hakkında bilgi edinin ve ne beklemeniz gerektiğinin farkında olmak için incelememizi öğrenin. Basit bir şekilde yapmayı deneyelim Selam Dünya android otomotiv için uygulama. IDE almak için şu adrese gidin: Android Studio Önizlemesi | Android Geliştiricileri ve bir kanarya yapısı edinin:

AAOS Merhaba Dünya: Android Otomotiv İşletim Sistemi için İlk Uygulamanızı Nasıl Oluşturursunuz

Bir sonraki adımda SDK’yı hazırlayın, SDK yöneticisinde Otomotiv sistem görüntüsünü kontrol edin ve indirin. Api32, Android 9 veya Android 10’dan herhangi birini alabilirsiniz, ancak çok gecikmeli ve şu anda çok fazla çöktüğü için en yenisini önermiyorum. Volvo ve Polestar görüntüleri de var.

SDK Güncelleme Sitelerine bağlantı eklemeniz gerekenler için:

https://developer.volvocars.com/sdk/volvo-sys-img.xml

https://developer.polestar.com/sdk/polestar2-sys-img.xml

Yeni bir proje başlatın, şuraya gidin: Dosya> Yeni Proje ve Seç otomotiv ile birlikte aktivite yok

Android Otomotiv İşletim Sistemi

Herhangi bir sınıf olmadan güzel ve temiz bir proje oluşturulmalıdır: Git build.gradle ve araba uygulaması kitaplığını bağımlılıklara ekleyin, elde etmek için proje

AAOS Merhaba Dünya

yeni bağımlılığımız:

implementation "androidx.car.app:app-automotive:1.2.0-rc01"

Önce ekran sınıfımız olmak üzere bir kod yazalım. İstediğiniz gibi adlandırın ve Screen sınıfını genişletmesini sağlayın android.car.app paketleyin ve gerekli yöntemleri uygulamasını sağlayın:

public class GrapeAppScreen extends Screen {

   public GrapeAppScreen(@NonNull CarContext carContext) {
       super(carContext);
   }

   @NonNull
   @Override
   public Template onGetTemplate() {
       Row row = new Row.Builder()
.setTitle("Thats our Grape App!").build();

       return new PaneTemplate.Builder(
               new Pane.Builder()
                       .addRow(row)
                       .build()
       ).setHeaderAction(Action.APP_ICON).build();
   }
}

Bu, simgemiz ve başlığımızla basit bir ekran oluşturmalı, şimdi genişleyen başka bir sınıf oluşturun. ArabaUygulama Hizmeti aynı paketten ve aynı zamanda gerekli yöntemler. İtibaren createHostValidator() yöntemi, bu eğitimin amacı için tüm ana bilgisayar adlarına izin veren statik bir tane döndürür ve ekranımızdaki yepyeni oturumu döndürür. onCreateSession()geçmek Araba Bağlam kullanarak Oturum sınıf getCarContext() yöntem:

public class GrapeAppService extends CarAppService {

   public GrapeAppService() {}

   @NonNull
   @Override
   public HostValidator createHostValidator() {
       return HostValidator.ALLOW_ALL_HOSTS_VALIDATOR;
   }

   @NonNull
@Override
public Session onCreateSession() {
   return new Session() {
       @Override
       @NonNull
       public Screen onCreateScreen(@Nullable Intent intent) {
           return new GrapeAppScreen(getCarContext());
       }
   };
}

}

Ardından, şuraya gidin: AndroidManifest ve ana bildirim etiketinin içine çeşitli özellikler ekleyin:

<uses-feature
   android:name="android.hardware.type.automotive"
   android:required="true" />
<uses-feature
   android:name="android.software.car.templates_host"
   android:required="true" />
<uses-feature
   android:name="android.hardware.wifi"
   android:required="false" />
<uses-feature
   android:name="android.hardware.screen.portrait"
   android:required="false" />
<uses-feature
   android:name="android.hardware.screen.landscape"
   android:required="false" />

Uygulama etiketinin içine hizmetimizi ve etkinliğimizi ekleyin, unutmayın minCarApiLevel Bunun olmaması, uygulama başlangıcında bir istisna oluşturacağından:

<application
   android:allowBackup="true"
   android:appCategory="audio"
   android:icon="@mipmap/ic_launcher"
   android:label="@string/app_name"
   android:roundIcon="@mipmap/ic_launcher_round"
   android:supportsRtl="true"
   android:theme="@style/Theme.GrapeApplication">

<meta-data android:name="androidx.car.app.minCarApiLevel"
   android:value="1"
/>

   <service
       android:name="com.grapeup.grapeapplication.GrapeAppService"
       android:exported="true">
       <intent-filter>
           <action android:name="androidx.car.app.CarAppService" />
       </intent-filter>
   </service>

   <activity
       android:name="androidx.car.app.activity.CarAppActivity"
       android:exported="true"
       android:label="GrapeApp Starter"
       android:launchMode="singleTask"
       android:theme="@android:style/Theme.DeviceDefault.NoActionBar">

       <intent-filter>
           <action android:name="android.intent.action.MAIN" />
           <category android:name="android.intent.category.LAUNCHER" />
       </intent-filter>
       <meta-data
           android:name="distractionOptimized"
           android:value="true" />
   </activity>
</application>

Artık uygulamamızı cihaza yükleyebilir, oluşturulmuş bir otomotiv emülatörünüz olduğunu doğrulayabilir, otomotiv yapılandırmasını kullanabilir ve çalıştırabiliriz. Uygulama, Google Automotive App Host’ta çalıştırılır, bu nedenle bu cihazdaki ilk uygulamanızsa, oyun mağazasına gidip onu almanız gerekebilir.

İşte böyle görünüyor:

Android Otomotiv İşletim Sistemi için İlk Uygulamanızı Oluşturun

Son olarak, bir pencere açacak bir gezinme düğmesi ekleyeceğiz. Kızarmış ekmek. değiştir onGetTemplate() içinde Ekran sınıf, ekle Eylem ve EylemŞeridi:

Action action = new Action.Builder()
       .setOnClickListener(
               () -> CarToast.makeText(getCarContext(), "Hello!", CarToast.LENGTH_SHORT).show())
       .setTitle("Say hi!")
       .build();

ActionStrip actionStrip = new 

ekle PaneŞablon:

return new PaneTemplate.Builder(
       new Pane.Builder()
               .addRow(row)
               .build()
)       .setActionStrip(actionStrip)
       .setHeaderAction(Action.APP_ICON)
       .build();

Bu bizim HelloWorld uygulamamız:

Artık, Car App Library’yi kullanarak HelloWorld örnek uygulamanız hazır ve çalışıyor. Ekrandaki her şeyin bizim için görüntülenmesi ve düzenlenmesi ile ilgilenir. Tek sorumluluk, sahip olmak istediğimiz ekranları ve eylemleri (ve biraz yapılandırma) eklemektir. Bununla neler yapılabileceğini keşfetmek için Araba uygulama kitaplığına bakın, uygulamanızı oluştururken oynayın ve daha fazla AAOS uygulama oluşturma içeriği için yakında blogumuza göz atın.

Android Otomotiv İşletim Sistemi

Bir cevap yazın

Ready to Grow Your Business?

We Serve our Clients’ Best Interests with the Best Marketing Solutions. Find out More

How Can We Help You?

Need to bounce off ideas for an upcoming project or digital campaign? Looking to transform your business with the implementation of full potential digital marketing?

For any career inquiries, please visit our careers page here.
[contact-form-7 404 "Bulunamadı"]