অ্যাপ অ্যাকশন (লেভেল 2) সহ Google সহকারীতে একটি Android অ্যাপ প্রসারিত করুন

১. সংক্ষিপ্ত বিবরণ

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

প্রথম অ্যাপ অ্যাকশনস কোডল্যাবে , আপনি শিখেছেন কীভাবে হেলথ অ্যান্ড ফিটনেস বিআইআই ক্যাটাগরি থেকে বিল্ট-ইন ইনটেন্ট (বিআইআই) প্রয়োগ করে একটি নমুনা ফিটনেস অ্যাপে গুগল অ্যাসিস্ট্যান্টকে প্রসারিত করা যায়। বিআইআই-গুলোকে বিভিন্ন ক্যাটাগরিতে ভাগ করা হয়েছে, যা ব্যবহারকারীরা প্রায়শই অ্যাসিস্ট্যান্টকে যে ধরনের কাজ করতে বলেন, সেগুলোকে উপস্থাপন করে।

এই কোডল্যাবে আপনি শিখবেন কীভাবে "কমন" BII ক্যাটাগরির BII ব্যবহার করে একটি অ্যাপে অ্যাপ অ্যাকশন যোগ করতে হয়, যা এমন সাধারণ অ্যাপ টাস্কগুলোকে প্রতিনিধিত্ব করে যা প্রায় যেকোনো অ্যান্ড্রয়েড অ্যাপই সম্পন্ন করতে পারে।

এই কোডল্যাবটিতে অ্যাপ অ্যাকশন ব্যবহার করে ডেভেলপ করার জন্য মধ্যম-স্তরের ধারণাগুলো আলোচনা করা হয়েছে। আপনার অ্যান্ড্রয়েড অ্যাপ ডেভেলপ করা এবং অ্যান্ড্রয়েড ইন্টেন্ট প্রয়োগ করার পূর্ব অভিজ্ঞতা থাকা উচিত।

আপনি যা তৈরি করবেন

এই কোডল্যাবে, আপনি একটি নমুনা টু-ডু লিস্ট অ্যাপে দুটি কমন BII যোগ করবেন, যা ব্যবহারকারীদের অ্যাসিস্ট্যান্টকে নিম্নলিখিত কাজগুলো করতে বলতে সক্ষম করবে:

  • actions.intent.OPEN_APP_FEATURE BII ব্যবহার করে অ্যাপের ভেতরের ফিচারগুলোতে নেভিগেট করুন।
  • actions.intent.GET_THING BII ব্যবহার করে ইন-অ্যাপ সার্চের মাধ্যমে কন্টেন্ট অনুসন্ধান করুন।

তিনটি পর্যায়ক্রমিক স্ক্রিন, যেখানে গুগল অ্যাসিস্ট্যান্ট একটি অ্যাপের চলমান কাজগুলো প্রদর্শন করে।

চিত্র ১। তিনটি পর্যায়ক্রমিক স্ক্রিন যেখানে গুগল অ্যাসিস্ট্যান্ট একটি অ্যাপের সক্রিয় কাজগুলো প্রদর্শন করে।

আপনি যা শিখবেন

আপনি শিখবেন কীভাবে কমন ক্যাটাগরি BII ব্যবহার করে বেশিরভাগ অ্যান্ড্রয়েড অ্যাপে অ্যাসিস্ট্যান্টকে সম্প্রসারিত করা যায়। এছাড়াও আপনি শিখবেন কীভাবে অ্যান্ড্রয়েড স্টুডিওর জন্য গুগল অ্যাসিস্ট্যান্ট প্লাগইন দিয়ে কমন BII পরীক্ষা করতে হয়।

পূর্বশর্ত

এই কোডল্যাবে, আপনি আপনার অ্যাকশনগুলো পরীক্ষা করার জন্য একটি অ্যান্ড্রয়েড ডিভাইস (ফিজিক্যাল বা ভার্চুয়াল) ব্যবহার করবেন। ফিজিক্যাল ডিভাইস ব্যবহার করলে, নিশ্চিত করুন যে এটি আপনার লোকাল ডেভেলপমেন্ট মেশিনের সাথে সংযুক্ত আছে। আপনাকে অবশ্যই ডিভাইসের গুগল অ্যাপে এবং অ্যান্ড্রয়েড স্টুডিওতে একই গুগল অ্যাকাউন্ট ব্যবহার করে সাইন ইন করতে হবে। ডিভাইসটিতে গুগল অ্যাসিস্ট্যান্ট অ্যাপটিও ইনস্টল করা থাকতে হবে।

২. এটি কীভাবে কাজ করে তা বুঝুন

অ্যাপ অ্যাকশন ব্যবহারকারীদের গুগল অ্যাসিস্ট্যান্ট থেকে আপনার অ্যান্ড্রয়েড অ্যাপের সাথে সংযুক্ত করে। কিন্তু এগুলো কীভাবে কাজ করে?

যখন কোনো ব্যবহারকারী অ্যাসিস্ট্যান্টকে জানান যে তিনি আপনার অ্যাপটি ব্যবহার করতে চান, তখন অ্যাসিস্ট্যান্ট একটি shortcuts.xml ফাইল থেকে আপনার অ্যাপে রেজিস্টার করা অ্যাপ অ্যাকশনগুলো খুঁজে দেখে। এই ফাইলটিতে অ্যাপটির ক্যাপাবিলিটিগুলো থাকে, যা অ্যাসিস্ট্যান্টের বিল্ট-ইন ইন্টেন্ট বা কাস্টম ইন্টেন্টকে একটি অ্যান্ড্রয়েড ইন্টেন্ট বা ডিপ লিঙ্কের সাথে যুক্ত করে।

যখন কোনো ব্যবহারকারী অ্যাসিস্ট্যান্টকে কোনো প্রশ্ন করেন, তখন অ্যাসিস্ট্যান্ট ব্যবহারকারীর ইনপুটটি পার্স করে এবং সেটিকে একটি অ্যাপ অ্যাকশনস ইন্টেন্টের (এই কোডল্যাবে, এটি একটি BII হবে) সাথে মিলিয়ে নেয়। আপনার অ্যান্ড্রয়েড অ্যাপের shortcuts.xml ফাইল থেকে অ্যাসিস্ট্যান্ট জানতে পারে যে আপনি কোন কোন ক্যাপাবিলিটি সাপোর্ট করেন। ইন্টেন্টটি মেলানোর সাথে সাথে, সেই BII-এর অন্তর্ভুক্ত ক্যাপাবিলিটিটিতে উল্লেখ থাকে যে আপনি কীভাবে সেই অনুরোধটি পূরণ করতে চান। এই কোডল্যাবে, অনুরোধটি পূরণ করার প্রক্রিয়াটি হলো একটি অ্যান্ড্রয়েড ইন্টেন্ট, যা আপনার অ্যাপে একটি অ্যাক্টিভিটি চালু করে।

নিম্নলিখিত ডায়াগ্রামটি এই অ্যাসিস্ট্যান্ট ফ্লো দেখায়:

গুগল অ্যাসিস্ট্যান্ট কীভাবে ব্যবহারকারীর ভয়েস কোয়েরি প্রক্রিয়া করে, তার একটি কার্যপ্রবাহ। চিত্র ২. গুগল অ্যাসিস্ট্যান্ট কীভাবে একটি ভয়েস কোয়েরি প্রক্রিয়া করে তার কার্যপ্রবাহ।

shortcuts.xml প্রজেক্ট ফাইলে প্রতিটি অ্যাপ অ্যাকশনের জন্য নিম্নলিখিত তথ্য থাকে:

  • অ্যাপ অ্যাকশনটি কোন বিল্ট-ইন ইন্টেন্ট বা কাস্টম ইন্টেন্ট ব্যবহার করে
  • ব্যবহারকারীকে কোন অ্যান্ড্রয়েড অ্যাক্টিভিটি বা ডিপ লিঙ্ক প্রদান করা উচিত
  • বিল্ট-ইন ইনটেন্টের প্যারামিটারগুলো কীভাবে ব্যবহারকারীর দ্বারা অ্যাসিস্ট্যান্টকে দেওয়া তথ্যের সাথে সংযুক্ত হয়

এরপর আপনার অ্যান্ড্রয়েড অ্যাক্টিভিটি প্রদত্ত অ্যান্ড্রয়েড ইন্টেন্ট বা ডিপ লিঙ্কটি ফিল্টার করে এবং ব্যবহারকারীকে তার কাঙ্ক্ষিত কার্যকারিতা প্রদান করার জন্য সেটিকে পরিচালনা করে। এর ফলে এমন একটি ব্যবহারকারী অভিজ্ঞতা তৈরি হয়, যেখানে অ্যাসিস্ট্যান্ট ব্যবহারকারীর জিজ্ঞাসার জবাবে আপনার অ্যাপের কার্যকারিতা চালু করে।

৩. আপনার ডেভেলপমেন্ট পরিবেশ প্রস্তুত করুন

এই কোডল্যাবে অ্যান্ড্রয়েডের জন্য তৈরি টু-ডু লিস্ট স্যাম্পল অ্যাপটি ব্যবহার করা হয়েছে। এই স্যাম্পল অ্যাপটির সাহায্যে টু-ডু লিস্টে আইটেম যোগ করা, ক্যাটাগরি অনুযায়ী আইটেম খোঁজা এবং সম্পন্ন হওয়া কাজগুলোর তথ্য দেখা যায়।

আপনার বেস ফাইলগুলি ডাউনলোড করুন

স্যাম্পল অ্যাপটির গিটহাব রিপোজিটরি ক্লোন করতে নিম্নলিখিত কমান্ডটি চালান:

git clone --branch codelab-start https://github.com/actions-on-google/appactions-common-biis-kotlin.git

রিপোজিটরিটি ক্লোন করার পর, অ্যান্ড্রয়েড স্টুডিওতে এটি খোলার জন্য এই ধাপগুলো অনুসরণ করুন:

  1. "Welcome to Android Studio" ডায়ালগ বক্সে, "Import project" -এ ক্লিক করুন।
  2. যে ফোল্ডারে আপনি রিপোজিটরিটি ক্লোন করেছেন, সেটি খুঁজুন এবং নির্বাচন করুন।

সম্পূর্ণ কোডল্যাবের সংস্করণটি দেখতে, --branch master ফ্ল্যাগ ব্যবহার করে স্যাম্পল অ্যাপ রিপোটি ক্লোন করুন।

অ্যান্ড্রয়েড অ্যাপ্লিকেশন আইডি আপডেট করুন

অ্যাপের অ্যাপ্লিকেশন আইডি আপডেট করলে আপনার টেস্ট ডিভাইসে অ্যাপটিকে একটি স্বতন্ত্র পরিচয় দেওয়া যায় এবং প্লে কনসোলে অ্যাপটি আপলোড করার সময় "ডুপ্লিকেট প্যাকেজ নেম" ত্রুটি এড়ানো যায়। অ্যাপ্লিকেশন আইডি আপডেট করতে, app/build.gradle খুলুন:

android {
...
  defaultConfig {
    applicationId "com.MYUNIQUENAME.android.fitactions"
    ...
  }
}

applicationId ফিল্ডে থাকা 'MYUNIQUENAME'-এর পরিবর্তে আপনার নিজস্ব কোনো অনন্য নাম ব্যবহার করুন।

আপনার ডিভাইসে অ্যাপটি পরীক্ষা করুন

অ্যাপটিতে আরও পরিবর্তন আনার আগে, নমুনা অ্যাপটি কী করতে পারে সে সম্পর্কে ধারণা থাকা সহায়ক। আপনার এমুলেটরে অ্যাপটি চালানোর জন্য, এই ধাপগুলো অনুসরণ করুন:

  1. অ্যান্ড্রয়েড স্টুডিওতে, রান > রান অ্যাপ নির্বাচন করুন অথবা রান-এ ক্লিক করুন। টুলবারে।
  2. 'Select Deployment Target' ডায়ালগে, একটি ডিভাইস নির্বাচন করুন এবং 'OK' ক্লিক করুন। প্রস্তাবিত OS সংস্করণ হলো Android 10 (API লেভেল 30) বা তার উচ্চতর, যদিও অ্যাকশনগুলি Android 5 (API লেভেল 21) পর্যন্ত পুরোনো ডিভাইসেও চলে।
  3. অ্যাসিস্ট্যান্ট সেট আপ করতে এবং এর কার্যকারিতা যাচাই করতে হোম বাটনে দীর্ঘক্ষণ চাপ দিন। যদি আগে থেকে সাইন ইন করা না থাকে, তবে আপনাকে আপনার ডিভাইসে অ্যাসিস্ট্যান্টে সাইন ইন করতে হবে।

অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইস সম্পর্কে আরও তথ্যের জন্য, ভার্চুয়াল ডিভাইস তৈরি এবং পরিচালনা দেখুন।

টাস্ক লিস্ট নমুনা অ্যাপটি প্রদর্শনকারী অ্যানিমেশন

চিত্র ৩. করণীয় কাজের তালিকা নমুনা অ্যাপটির একটি অ্যানিমেশন।

অ্যাপটি কী কী করতে পারে তা দেখতে সংক্ষেপে এটি ঘুরে দেখুন। প্লাস আইকনে ট্যাপ করলে একটি নতুন টাস্ক আইটেম তৈরি হয়, এবং উপরের ডানদিকের মেনু আইটেমগুলো আপনাকে সম্পন্ন হওয়ার অবস্থা অনুযায়ী টাস্ক আইটেম অনুসন্ধান ও ফিল্টার করার সুযোগ দেয়।

টেস্ট প্লাগইন ইনস্টল করুন

গুগল অ্যাসিস্ট্যান্ট প্লাগইন আপনাকে একটি টেস্ট ডিভাইসে আপনার অ্যাপ অ্যাকশনগুলো পরীক্ষা করার সুযোগ দেয়। যদি আপনার কাছে আগে থেকেই টেস্ট টুলটি না থাকে, তবে এই ধাপগুলো অনুসরণ করে এটি ইনস্টল করুন:

  1. ফাইল > সেটিংস- এ যান (MacOS-এ Android Studio > Preferences )।
  2. প্লাগইন বিভাগে, মার্কেটপ্লেসে যান এবং 'গুগল অ্যাসিস্ট্যান্ট' লিখে অনুসন্ধান করুন। এছাড়াও আপনি ম্যানুয়ালি টেস্ট টুলটি ডাউনলোড এবং ইনস্টল করতে পারেন।
  3. টুলটি ইনস্টল করুন এবং অ্যান্ড্রয়েড স্টুডিও পুনরায় চালু করুন।

৪. Get Thing BII সক্ষমতাটি যোগ করুন

actions.intent.GET_THING BII আপনার অ্যাপের ভেতরের সার্চ কার্যকারিতাকে গুগল অ্যাসিস্ট্যান্ট পর্যন্ত প্রসারিত করে। এই ধাপে, আপনি GET_THING BII প্রয়োগ ও পরীক্ষা করবেন, যা ব্যবহারকারীদের নমুনা অ্যাপটিতে নির্দিষ্ট কাজ অনুসন্ধান করতে সক্ষম করবে।

Get Thing সক্ষমতা সংজ্ঞায়িত করুন

অনুসন্ধান-সম্পর্কিত অ্যাপ অ্যাকশনের সময়, অ্যাসিস্ট্যান্ট ব্যবহারকারীর কোয়েরি থেকে সার্চ টার্মগুলো thing.name BII প্যারামিটারে নিয়ে আসে এবং তারপর সেই মানটি অ্যান্ড্রয়েড অ্যাপ্লিকেশনে পাঠিয়ে দেয়।

আপনার অ্যাপে GET_THING BII যোগ করতে, app/src/main/res/xml স্যাম্পল প্রজেক্ট ডিরেক্টরিতে অবস্থিত shortcuts.xml ফাইলটি আপডেট করুন এবং এর টপ লেভেল <shortcuts> ট্যাগের মধ্যে একটি <capability> এলিমেন্ট যুক্ত করুন:

শর্টকাট.xml

<shortcuts ....>
    <capability android:name="actions.intent.GET_THING">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetPackage="com.yourApplicationId.appaction"
            android:targetClass="com.example.android.architecture.blueprints.todoapp.tasks.TasksActivity">
            <parameter
                android:name="thing.name"
                android:key="q"/>
        </intent>
    </capability>
</shortcuts>

উপরের কনফিগারেশন:

  1. ঘোষণা করে যে অ্যাপটি GET_THING BII-তে সাড়া দেয়।
  2. উক্ত BII-এর প্রতিক্রিয়ায় অ্যাপটি চালু করে এমন একটি অ্যান্ড্রয়েড ইন্টেন্ট কীভাবে তৈরি করতে হবে তা নির্দিষ্ট করে।
    • targetPackage এবং targetClass ব্যবহার করে অ্যাক্টিভিটিটি শনাক্ত করা হয়।
    • BII প্যারামিটার thing.name q নামের Intent Extra- তে ম্যাপ করা হয়।

নামযুক্ত অ্যাক্টিভিটিটি অবশ্যই অ্যাপের ম্যানিফেস্টে উপস্থিত থাকতে হবে এবং এক্সপোর্ট করা থাকতে হবে।

প্রদত্ত অ্যান্ড্রয়েড অ্যাপ্লিকেশনটিতে মেটাডেটা রয়েছে, ফলে AndroidManifest shortcuts.xml ফাইলটি সম্পর্কে অবগত থাকে:

<meta-data
   android:name="android.app.shortcuts"
   android:resource="@xml/shortcuts" />

আপনার অ্যাপ অ্যাকশন পরীক্ষা করুন

অ্যাসিস্ট্যান্ট থেকে আপনার অ্যাপের জন্য ইন-অ্যাপ সার্চ পরীক্ষা করতে, এই ধাপগুলো অনুসরণ করুন:

  1. আপনার অ্যান্ড্রয়েড ডিভাইসটি সংযুক্ত আছে কিনা তা নিশ্চিত করুন।
  2. টুলস > গুগল অ্যাসিস্ট্যান্ট > অ্যাপ অ্যাকশন টেস্ট টুল- এ যান।
  3. অ্যাপের নাম এবং লোকেল-এর জন্য ডিফল্ট মানগুলো গ্রহণ করতে 'ক্রিয়েট প্রিভিউ'-তে ক্লিক করুন। জিজ্ঞাসা করা হলে, অ্যাপ অ্যাকশন নীতিমালা এবং পরিষেবার শর্তাবলী পর্যালোচনা করে গ্রহণ করুন।
  4. প্রথম ধাপে, যেখানে টুলটি আপনাকে একটি BII নির্বাচন ও কনফিগার করতে বলবে, সেখানে actions.intent.GET_THING নির্বাচন করুন। name ভ্যালুটি running shoes থেকে milk এ পরিবর্তন করুন।
  5. রান অ্যাপ অ্যাকশন-এ ক্লিক করুন।

এই পরীক্ষায়, GET_THING BII ‘ name অ্যাট্রিবিউট ব্যবহার করে অ্যাপে ‘milk’ শব্দটি আছে এমন টাস্কগুলো খোঁজে। আগের অ্যাপ অ্যাকশনের মতোই, আপনি টেস্ট টুল ব্যবহার করে আপনার অ্যাকশনটি পরীক্ষা করতে পারেন, অথবা আপনার টেস্ট ডিভাইসে কেবল “Hey Google, search for cake mix in Task List” বা অন্য কোনো সার্চ ফ্রেজ বলতে পারেন।

৫. ওপেন অ্যাপ ফিচারের BII সক্ষমতা যোগ করুন।

এই ধাপে, আপনি ওপেন অ্যাপ ফিচার BII ইমপ্লিমেন্ট করবেন, যা ব্যবহারকারীদের অ্যাসিস্ট্যান্ট ব্যবহার করে তাদের সক্রিয় এবং সম্পন্ন হওয়া টাস্কগুলো দেখার সুযোগ দেবে। এটি করার জন্য, shortcuts.xml ফাইলে ক্যাপাবিলিটিটি সম্পূর্ণ করুন, যেখানে ক্যাপাবিলিটিটি কীভাবে ট্রিগার করা হবে, কীভাবে প্যারামিটার পাস করা হবে এবং কোন অ্যান্ড্রয়েড ইন্টেন্টগুলো ইনভোক করা হবে, সেই সম্পর্কিত তথ্য থাকে। এই কোডল্যাবের জন্য, আপনি OPEN_APP_FEATURE BII ব্যবহার করবেন। এই BII ইমপ্লিমেন্ট করার পর, আপনি আপনার ডিভাইসে অ্যাকশনটি পরীক্ষা করবেন।

অ্যাপ খোলার বৈশিষ্ট্য ক্ষমতা যোগ করুন

shortcuts.xml ফাইলে Get Thing Capability এলিমেন্টের নিচে Open app ফিচারের জন্য একটি দ্বিতীয় ক্যাপাবিলিটি যোগ করুন:

শর্টকাট.xml

<capability android:name="actions.intent.OPEN_APP_FEATURE">
   <intent
       android:action="android.intent.action.VIEW"
       android:targetPackage="yourApplicationId"
       android:targetClass="com.example.android.architecture.blueprints.todoapp.tasks.TasksActivity">
       <parameter
           android:name="feature"
           android:key="feature"/>
   </intent>
</capability>

এই সক্ষমতাটি ‘ওপেন অ্যাপ’ ফিচার BII এবং অ্যান্ড্রয়েড ইন্টেন্টকে একসাথে ম্যাপ করে, ফলে যখন ‘ওপেন অ্যাপ’ ফিচারটি ট্রিগার হয়, তখন অ্যান্ড্রয়েড ইন্টেন্টটিও ট্রিগার হবে।

অ্যান্ড্রয়েড ইন্টেন্ট ট্রিগার করার আগে, ব্যবহারকারীর ইনপুট থেকে সমর্থিত প্যারামিটারগুলো নেওয়া হয়। OPEN_APP_FEATURE BII একটি প্যারামিটার, feature , সমর্থন করে, যা ব্যবহারকারীর কোয়েরি থেকে সংগৃহীত অ্যাপের বৈশিষ্ট্যকে উপস্থাপন করে। এই অ্যাপ্লিকেশনটি দুই ধরনের বৈশিষ্ট্য সমর্থন করবে: Active Task এবং Completed Task। এই বৈশিষ্ট্যগুলো ব্যবহারকারীদের তাদের কাজের তালিকার একটি ফিল্টার করা ভিউ সহ অ্যাপটি খুলতে দেয়। এই বৈশিষ্ট্যগুলো সমর্থন করার জন্য আপনাকে ইনলাইন ইনভেন্টরি ব্যবহার করতে হবে।

ইনলাইন ইনভেন্টরি ব্যবহার করে ইনটেন্ট প্যারামিটারগুলি পরিচালনা করুন

ইনটেন্ট প্যারামিটারগুলো ব্যবহারকারীর কোয়েরি থেকে সংগৃহীত উপাদানগুলোকে উপস্থাপন করে। উদাহরণস্বরূপ, যদি কোনো ব্যবহারকারী বলেন, "হে গুগল, ExampleApp থেকে একটি পিজ্জা অর্ডার করো," তাহলে অ্যাসিস্ট্যান্ট "pizza" শব্দটিকে একটি food.item schema.org ইনটেন্ট প্যারামিটারে এক্সট্র্যাক্ট করে এবং হ্যান্ডেল করার জন্য প্যারামিটারটি আপনার অ্যাকশনে পাঠিয়ে দেয়।

ওপেন অ্যাপ ফিচার BII একটি প্যারামিটার, feature , সমর্থন করে, যা ব্যবহারকারীর কোয়েরি থেকে সংগৃহীত অ্যাপ ফিচারকে উপস্থাপন করে। এই প্যারামিটারের জন্য একটি ইনলাইন ইনভেন্টরি প্রয়োজন, যা অ্যাসিস্ট্যান্টকে প্যারামিটারের মানের সাথে মেলানোর জন্য সমর্থিত অ্যাপ ফিচারের নামগুলোর একটি সেট প্রদান করে।

feature ইন্টেন্ট প্যারামিটারটি পরিচালনা করতে, আপনার shortcuts.xml ফাইলে 'Open app' ফিচার ক্যাপাবিলিটির উপরে নিম্নলিখিত কোডসহ একটি শর্টকাট যোগ করুন:

শর্টকাট.xml

<shortcut
   android:shortcutId="active_tasks"
   android:shortcutShortLabel="@string/label_active"
   android:enabled="false">
   <capability-binding
       android:key="actions.intent.OPEN_APP_FEATURE">
       <parameter-binding
           android:key="feature"
           android:value="@array/active_tasks_synonyms" />
   </capability-binding>
</shortcut>

<shortcut
   android:shortcutId="completed_tasks"
   android:shortcutShortLabel="@string/label_completed"
   android:enabled="false">
   <capability-binding
       android:key="actions.intent.OPEN_APP_FEATURE">
       <parameter-binding
           android:key="feature"
           android:value="@array/completed_tasks_synonyms" />
   </capability-binding>
</shortcut>

উপরের কোডে আপনি একটি ইনলাইন ইনভেন্টরি সংজ্ঞায়িত করেছেন, যা ক্যাপাবিলিটি এবং প্যারামিটার বাইন্ডিং সহ shortcut এলিমেন্ট হিসেবে উপস্থাপিত। শর্টকাটগুলো BII প্যারামিটারের জন্য ইনভেন্টরি হিসেবে ব্যবহার করা যেতে পারে। গুগল অ্যাসিস্ট্যান্ট ব্যবহারকারীর কোয়েরিকে শর্টকাটের প্যারামিটার-বাইন্ডিং-এ থাকা ভ্যালুগুলোর সাথে মেলায়। একটি মিলে যাওয়া প্যারামিটার ভ্যালুর জন্য, shortcutId ফুলফিলমেন্ট ইন্টেন্টে যোগ করা হবে। যখন কোনো ব্যবহারকারী একটি অনুরোধের মাধ্যমে OPEN_APP_FEATURE BII সক্রিয় করে, তখন অ্যাসিস্ট্যান্ট ফিচার প্যারামিটার ভ্যালুটিকে একটি শর্টকাটের ভ্যালু অ্যাট্রিবিউটের সাথে মেলায় এবং সেই ভ্যালুটিকে Extra এর মধ্যে একটি parameter হিসেবে targetClass এ পাঠিয়ে দেয়।

উদাহরণস্বরূপ, যদি কোনো ব্যবহারকারী বলেন, "হে গুগল, ExampleApp-এ আমার সম্পন্ন করা কাজগুলো দেখাও," তাহলে অ্যাসিস্ট্যান্ট ফিচার ইন্টেন্ট প্যারামিটারের মান "completed tasks"-কে সংশ্লিষ্ট ইনভেন্টরি শর্টকাটের সাথে মেলায়, যা সেই মানটিকে OPEN_APP_FEATURE ক্যাপাবিলিটিতে পাঠিয়ে দেয়। এরপর অ্যাসিস্ট্যান্ট অ্যান্ড্রয়েড ইন্টেন্টটি ট্রিগার করে।

আপনার অ্যাপ অ্যাকশন পরীক্ষা করুন

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

টেস্ট টুল দিয়ে আপনার অ্যাপ অ্যাকশন পরীক্ষা করতে, এই ধাপগুলো অনুসরণ করুন:

  1. আপনার ফিজিক্যাল অ্যান্ড্রয়েড টেস্ট ডিভাইসটি সংযুক্ত করুন, অথবা আপনার অ্যান্ড্রয়েড এমুলেটর চালু করুন।
  2. যদি টেস্ট টুলটি দেখা না যায়, তাহলে Tools > Google Assistant > App Actions Test Tool- এ গিয়ে এটি খুলুন।
  3. আপনার প্রিভিউ রিফ্রেশ করতে আপডেট বাটনে ক্লিক করুন।
  4. প্রথম ধাপে, যেখানে টুলটি আপনাকে একটি BII নির্বাচন ও কনফিগার করতে বলে, সেখানে actions.intent.OPEN_APP_FEATURE নির্বাচন করুন।
  5. ফিচার বক্সে, ডিফল্ট History ভ্যালুটি Completed tasks দিয়ে আপডেট করুন।
  6. রান অ্যাপ অ্যাকশন-এ ক্লিক করুন।

বিকল্প হিসেবে, আপনার অ্যাপ অ্যাকশনটি পরীক্ষা করার জন্য আপনি আপনার ডিভাইসের অ্যাসিস্ট্যান্ট অ্যাপে সরাসরি ইনভোকেশন নামটি ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনি বলতে পারেন "হে গুগল, টাস্ক লিস্টে সম্পন্ন হওয়া কাজগুলো দেখাও"

৬. পরবর্তী পদক্ষেপ

অভিনন্দন!

এখন আপনি সাধারণ BII ব্যবহার করে প্রায় যেকোনো অ্যান্ড্রয়েড অ্যাপকে গুগল অ্যাসিস্ট্যান্টের সাথে কাজ করার উপযোগী করে তুলতে পারবেন।

আমরা যা আলোচনা করেছি

এই কোডল্যাবে আপনি শিখেছেন:

  • অ্যাসিস্ট্যান্ট ব্যবহার করে কীভাবে ব্যবহারকারীদের অ্যাপের নির্দিষ্ট ফিচারগুলো গভীরভাবে দেখার সুযোগ দেওয়া যায়।
  • ব্যবহারকারীরা কীভাবে অ্যাসিস্ট্যান্ট থেকে ইন-অ্যাপ সার্চ ব্যবহার করতে পারবেন।
  • গুগল অ্যাসিস্ট্যান্ট প্লাগইন ব্যবহার করে সাধারণ BII গুলো কীভাবে পরীক্ষা করবেন।

এরপর কী?

এখান থেকে, আপনি আপনার করণীয় তালিকা অ্যাপটিতে আরও কিছু পরিমার্জন করার চেষ্টা করতে পারেন। সম্পূর্ণ প্রকল্পটি দেখতে, গিটহাবে রিপোটির –মাস্টার শাখাটি দেখুন।

অ্যাপ অ্যাকশন ব্যবহার করে এই অ্যাপটিকে আরও উন্নত করার বিষয়ে জানার জন্য এখানে কিছু পরামর্শ দেওয়া হলো:

আপনার ‘অ্যাকশনস অন গুগল’ যাত্রা অব্যাহত রাখতে, এই রিসোর্সগুলো অন্বেষণ করুন:

আমাদের সর্বশেষ ঘোষণাগুলো সম্পর্কে জানতে টুইটারে @ActionsOnGoogle- এ আমাদের অনুসরণ করুন, এবং আপনি যা তৈরি করেছেন তা শেয়ার করতে #AoGDevs- এ টুইট করুন!

মতামত সমীক্ষা

অবশেষে, এই কোডল্যাবটির সাথে আপনার অভিজ্ঞতা সম্পর্কে মতামত জানাতে অনুগ্রহ করে এই সমীক্ষাটি পূরণ করুন।