AppCards দেখায় এমন অ্যাপগুলির সাথে যোগাযোগ করতে AppCardHost
ব্যবহার করুন।
অনুমতি
AppCardHost
ব্যবহার করে এমন যেকোনো অ্যাপের নিম্নলিখিত অনুমতি থাকতে হবে:
-
android.permission.INTERACT_ACROSS_USERS_FULL
-
android.permission.QUERY_ALL_PACKAGES
- ( শুধুমাত্র API স্তর 34 এবং উচ্চতর)
android.car.permission.BIND_APP_CARD_PROVIDER
আরম্ভ করুন
হোস্ট শুরু করতে, প্রদান করুন:
- প্রসঙ্গ
-
updateRate
AppCard আপডেট রেট মিলিসেকেন্ডে। -
fastUpdateRate
EnforceFastUpdateRate
সাথে ট্যাগ করা উপাদানগুলির জন্য মিলিসেকেন্ডে আপডেটের হার -
responseExecutor
একটি থ্রেড যার উপর আপনি AppCard অ্যাপ থেকে প্রতিক্রিয়া পেতে চান।
ডিজাইন
একটি AppCardHost
এর সাথে দুটি উপায়ের একটিতে যোগাযোগ করা যেতে পারে:
- একটি
AppCardListener
হিসাবে নিবন্ধন করুন
বা,
-
AppCardHost
API-এর সাথে ইন্টারঅ্যাক্ট করুন
অ্যাপকার্ড লিসনার
AppCardListener
উপাদানটি AppCardHost
এবং AppCard অ্যাপ থেকে যোগাযোগের আপডেট পেতে একটি AppCardHost
এর সাথে নিজেকে নিবন্ধন করে। একটি AppCardListener
এর ইন্টারফেস ফাংশন এখানে বিস্তারিত আছে।
fun onAppCardReceived(AppCardContainer)
AppCardContainer
হিসাবে পাঠানো হয় যা একটি AppCard এবং একটি appIdentifier
প্রদান করে যেটি AppCard পাঠিয়েছে সেই অ্যাপটিকে সনাক্ত করতেfun onComponentReceived(AppCardComponentContainer)
AppCardComponentContainer
হিসাবে পাঠানো হয়, যা একটি AppCards উপাদান প্রদান করে, যে অ্যাপটি AppCard পাঠিয়েছে সেটি সনাক্ত করতে Identifier
এবং AppCard যেটির সাথে উপাদানটি সম্পর্কিত তা নির্দেশ করার জন্য একটি স্ট্রিং আইডি প্রদান করে৷fun onProviderRemoved(String, String?)
যদি কর্তৃপক্ষ {@code null}
হয়, তাহলে একটি সম্পূর্ণ প্যাকেজ সরানো হয়েছে৷
fun onProviderAdded(String, String?)
নমুনা ব্যবহার। একটি AppCard পিকারে উপলব্ধ সমস্ত AppCard রিফ্রেশ করতে একটি ট্রিগার হিসাবে এই ফাংশনটি ব্যবহার করুন৷ যদি কর্তৃপক্ষ {@code null}
হয়, তাহলে একটি সম্পূর্ণ প্যাকেজ যোগ করা হয়েছে৷
fun onPackageCommunicationError(appIdentifier, Throwable)
AppCardHost
একটি ত্রুটির সম্মুখীন হলে এই ফাংশনটি ট্রিগার হয়৷নমুনা ব্যবহার। ব্যবহারকারীকে দেখানোর জন্য এই পদ্ধতিটি ব্যবহার করুন যে তারা নির্বাচিত একটি AppCard একটি ত্রুটির সম্মুখীন হয়েছে৷
এপিআই
fun refreshCompatibleapp()
fun destroy()
fun registerListener(AppCardListener)
AppCardListener
রেজিস্টার করতে ব্যবহৃত হয়।fun unregisterListener(AppCardListener)
AppCardListener
নিবন্ধনমুক্ত করতে ব্যবহৃত হয়।fun getAllAppCards(AppCardContext)
AppCardContext
সহ সিস্টেমে প্রদত্ত সমস্ত AppCards সহ একটি নিবন্ধিত AppCardListener
সরবরাহ করতে এই পদ্ধতিতে কল করুন যা প্রদানকারীদের তাদের AppCard গঠনের বিষয়ে ইঙ্গিত দেয়৷fun requestAppCard(AppCardContext, appIdentifier, String)
AppCardListener
সরবরাহ করার জন্য এই পদ্ধতিতে কল করুন, একটি AppCardContext
দেওয়া হয়েছে যা প্রদানকারীদের তাদের AppCard কীভাবে গঠন করতে হবে তার ইঙ্গিত দেয়।fun notifyAppCardRemoved(appIdentifier, String)
fun notifyAppCardInteraction(appIdentifier, String, String, String)
AppCardMessageConstants.InteractionMessageConstants.MSG_INTERACTION_ON_CLICK
দ্বারা চিহ্নিত করা হয়।onClick
শ্রোতা সহ একটি AppCard-এর জন্য একটি বোতাম তৈরি করার পরামর্শ দিই যা এই ফাংশনটিকে appIdentifier
, AppCard আইডি, কম্পোনেন্ট আইডি এবং ইন্টারঅ্যাকশন আইডি দিয়ে কল করে৷fun sendAppCardContextUpdate(AppCardContext, appIdentifier, String)
AppCardContext
আপডেট পাঠান। উদাহরণস্বরূপ, পার্ক মোড থেকে ড্রাইভ মোডে স্থানান্তর করার সময়, একটি AppCardContext
আপডেট পাঠাতে এই পদ্ধতিটি ব্যবহার করুন যেখানে প্রতিটি সক্রিয় AppCard-এর জন্য isInteractable
false
সেট করা আছে।FAQ
আমি নমুনা বাস্তবায়ন কোথায় পেতে পারি?
নমুনা হোস্ট । পরীক্ষার ক্ষমতা সহ সিস্টেমে উপলব্ধ সমস্ত অ্যাপকার্ড দেখায়।
ড্রাইভারইউআই এবং প্যানো ম্যানেজার । প্যানো ম্যানেজার বাছাইকারী হিসাবে কাজ করে যখন DriverUI উপস্থাপক হিসাবে কাজ করে।
প্রতিটি
AppCardContentProvider
কতগুলি AppCard সমর্থন করতে পারে?একটি
AppCardContentProvider
অসীম সংখ্যক AppCard সমর্থন করতে পারে। যাইহোক, একটি ইতিবাচক ব্যবহারকারীর অভিজ্ঞতা বনাম অবনমিত কর্মক্ষমতা সহ AppCard সংখ্যার ভারসাম্য নিশ্চিত করুন৷