একটি ইন্টারনেট অফ থিংস অ্যাপ তৈরি করুন

IOT অ্যাপগুলি ব্যবহারকারীদের গাড়ির মধ্যে থেকে সংযুক্ত ডিভাইসগুলিতে প্রাসঙ্গিক পদক্ষেপ নিতে সক্ষম করে। উদাহরণগুলির মধ্যে রয়েছে নির্দিষ্ট কিছু ডিভাইসের অবস্থা নিয়ন্ত্রণ করা, যেমন গ্যারেজের দরজা খোলা, বাড়ির আলোর সুইচ ফ্লিপ করা বা বাড়ির নিরাপত্তা সক্ষম করা।

আপনার ম্যানিফেস্টে বিভাগ সমর্থন ঘোষণা করুন

আপনার অ্যাপটিকে তার CarAppService এর উদ্দেশ্য ফিল্টারে androidx.car.app.category.IOT গাড়ি অ্যাপ বিভাগ ঘোষণা করতে হবে।

<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>

আপনার অ্যাপের কার্যকারিতা বাস্তবায়ন করুন

আপনার অ্যাপটি বাস্তবায়ন করতে, গাড়ি অ্যাপ লাইব্রেরি অ্যাপগুলি কীভাবে তৈরি করা হয় সে সম্পর্কে Android for Cars অ্যাপ লাইব্রেরি ব্যবহার করুন দেখুন। এছাড়াও, IOT অ্যাপগুলির জন্য কার অ্যাপের গুণমানের নির্দেশিকাগুলির সাথে নিজেকে পরিচিত করতে ভুলবেন না, কারণ এই নির্দেশিকাগুলির বিরুদ্ধে আপনার অ্যাপ পর্যালোচনা করা হবে।

IOT অ্যাপ্লিকেশানগুলির জন্য, GridTemplate ডিভাইসগুলির একটি তালিকা প্রদর্শন করার জন্য এবং ব্যবহারকারীকে তাদের সাথে ইন্টারঅ্যাক্ট করার অনুমতি দেওয়ার জন্য একটি দুর্দান্ত পছন্দ, যেমনটি নিম্নলিখিত নমুনায় দেখানো হয়েছে:

কোটলিন

val listBuilder = ItemList.Builder()

listBuilder.addItem(
    GridItem.Builder()
        .setTitle("Garage door")
        .setImage(...)
        // Handle user interactions
        .setOnClickListener {...}
        .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()
    .setTitle("Devices")
    .setHeaderAction(Action.APP_ICON)
    .setSingleList(listBuilder.build())
    .build()

জাভা

ItemList.Builder listBuilder = new ItemList.Builder();

listBuilder.addItem(
    new GridItem.Builder()
        .setTitle("Garage door")
        .setImage(...)
        // Handle user interactions
        .setOnClickListener(() -> {...})
        .build()
);

listBuilder.addItem(
    new 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 new GridTemplate.Builder()
    .setTitle("Devices")
    .setHeaderAction(Action.APP_ICON)
    .setSingleList(listBuilder.build())
    .build();