ইন-অ্যাপ প্রোমো SDK ব্যবহার করে শর্টকাট সাজেস্ট করুন

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

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

উদাহরণস্বরূপ, যদি কোনো ব্যবহারকারী আপনার মিউজিক অ্যাপে "হেভি মেটাল ওয়ার্কআউট" সার্চ করেন, তাহলে আপনি ভবিষ্যতে সেই সার্চ ফলাফলে সরাসরি একটি অ্যাসিস্ট্যান্ট শর্টকাট সাজেস্ট করতে পারেন। আপনি যখন একটি শর্টকাট প্রস্তাব করেন, তখন আপনার অ্যাপে একটি প্রম্পট প্রদর্শিত হয় যা শর্টকাটের জন্য প্রস্তাবিত বাক্যাংশটি প্রদর্শন করে এবং ব্যবহারকারীকে জিজ্ঞাসা করে যে শর্টকাট তৈরি করা যেতে পারে কিনা।

এই উদাহরণে, আপনি এই বাক্যাংশটি সুপারিশ করেন, "আমার ভারী ধাতুর ব্যায়াম শুরু করুন।" ব্যবহারকারী পরামর্শটি গ্রহণ করেন এবং তারপর এই বলে শর্টকাট চালু করতে পারেন, "হে গুগল, আমার হেভি মেটাল ওয়ার্কআউট শুরু করুন।"

আপনার অ্যাপের দর্শক বাড়ানোর উপায় সম্পর্কে আরও তথ্যের জন্য, অ্যাপ অ্যাকশনের মাধ্যমে আপনার অ্যাপ বাড়ান দেখুন।

ইন-অ্যাপ প্রোমো SDK নিম্নলিখিত পদ্ধতিগুলি প্রদান করে:

  • lookupShortcut : আপনি যে শর্টকাটটি সাজেস্ট করতে চান তা আগে থেকেই আছে কিনা তা পরীক্ষা করে। পদ্ধতিটি শর্টকাট তৈরি হওয়া থেকে বাধা দেয় এমন কোনও সমস্যার জন্যও পরীক্ষা করে। যদি শর্টকাট তৈরি করা না যায়, lookupShortcut এর কারণগুলি ফেরত দেয়।

  • createShortcutSuggestionIntent : একটি উদ্দেশ্য প্রদান করে যা আপনি ব্যবহারকারীকে প্রস্তাবিত শর্টকাট তৈরি করতে অনুরোধ করতে ব্যবহার করতে পারেন।

  • createShortcutSettingsIntent : এমন একটি অভিপ্রায় প্রদান করে যা আপনি ব্যবহারকারীকে আপনার অ্যাপের জন্য সহকারী শর্টকাট সেটিংসে নিয়ে যেতে ব্যবহার করতে পারেন।

পূর্বশর্ত এবং সীমাবদ্ধতা

এই বিভাগে পরামর্শগুলি ব্যবহার করার পূর্বশর্ত এবং প্রয়োজনীয়তা এবং সেইসাথে আপনার সম্মুখীন হতে পারে এমন সীমাবদ্ধতাগুলি বর্ণনা করে৷

উন্নয়ন পূর্বশর্ত

পরামর্শগুলি ব্যবহার করার জন্য, আপনার বিকাশের পরিবেশ অবশ্যই নিম্নলিখিত পূর্বশর্তগুলি পূরণ করতে হবে৷

  • অ্যাপ অ্যাকশন ব্যবহার করতে আপনার অ্যান্ড্রয়েড অ্যাপ প্রসারিত করুন।

  • আপনার ম্যানিফেস্টে <queries> ট্যাগের মধ্যে com.google.android.googlequicksearchbox অন্তর্ভুক্ত করুন। যেমন:

    <manifest ...>
      <queries>
        <package android:name="com.google.android.googlequicksearchbox" />
      </queries>
      ...
    </manifest>
    
  • আপনার অ্যাপ প্রকাশ করতে অ্যান্ড্রয়েড অ্যাপ বান্ডেল ব্যবহার করুন।

ডিভাইসের প্রয়োজনীয়তা

একটি ডিভাইসে আপনার পরামর্শ পরীক্ষা করার জন্য, আপনার ডিভাইসে নিম্নলিখিত ইনস্টল থাকা আবশ্যক।

পরিচিত সীমাবদ্ধতা

পরামর্শ শুধুমাত্র ইংরেজিতে সমর্থিত. ব্যবহারকারীরা যাতে আপনার পরামর্শ দেখতে পারেন, তাদের ডিভাইসে অ্যাসিস্ট্যান্টের ভাষা ইংরেজিতে সেট করতে হবে।

পরামর্শ বাস্তবায়ন করুন

পরামর্শগুলি বাস্তবায়ন করতে, আপনাকে আপনার build.gradle ফাইলটি আপডেট করতে হবে, সাজেশন ক্লায়েন্ট সেট আপ করতে হবে এবং তারপরে আপনি ব্যবহারকারীদের যে পরামর্শগুলি দিতে চান তা সংজ্ঞায়িত করতে হবে৷

  1. আপনার build.gradle ফাইলে লাইব্রেরি নির্ভরতা যোগ করুন।

    dependencies {
      ...
      implementation "com.google.assistant.appactions:suggestions:1.0.0"
    }
    
  2. AssistantShortcutSuggestionsClient এর একটি উদাহরণ সংজ্ঞায়িত করুন।

    কোটলিন

    val shortcutsClient =
      AssistantShortcutSuggestionsClient.builder()
        .setContext(CONTEXT: Context)
        .setVerifyIntents(VERIFY_INTENTS: Boolean)
        .setCustomExecutor(CUSTOM_EXECUTOR: Object)
        .build()
    

    জাভা

    AssistantShortcutSuggestionsClient shortcutsClient =
      AssistantShortcutSuggestionsClient.builder()
        .setContext(CONTEXT: Context)
        .setVerifyIntents(VERIFY_INTENTS: Boolean)
        .setCustomExecutor(CUSTOM_EXECUTOR: Object)
        .build();
    

    এই উদাহরণে:

    • CONTEXT (প্রয়োজনীয়) হল অ্যাপ্লিকেশন প্রসঙ্গ।

    • VERIFY_INTENTS (প্রয়োজনীয়) ব্যবহারকারীদের শর্টকাট প্রস্তাব করার সময় তৈরি করা প্রতিটি উদ্দেশ্য যাচাই করতে হবে কিনা তা নির্ধারণ করে। true হলে, AssistantShortcutSuggestionsClient দ্বারা তৈরি করা উদ্দেশ্য যাচাই করা হয়। যদি একটি অভিপ্রায় অবৈধ হয়, একটি ব্যতিক্রম ফিরে আসে।

    • CUSTOM_EXECUTOR (ঐচ্ছিক) হল অ্যাসিঙ্ক্রোনাস কাজ চালানোর জন্য একটি কাস্টম নির্বাহক৷ প্রদান না করা হলে, SDK টাস্কের জন্য একটি একক-থ্রেডেড এক্সিকিউটর ব্যবহার করে।

  3. আপনি যে শর্টকাটটি প্রস্তাব করতে চান তা বৈধ কিনা এবং ঐচ্ছিকভাবে, শর্টকাটটি ইতিমধ্যেই বিদ্যমান কিনা তা নির্ধারণ করতে lookupShortcut পদ্ধতি ব্যবহার করুন।

    1. একটি অ্যাপ শর্টকাট অভিপ্রায় তৈরি করুন। শর্টকাট অভিপ্রায় সেই শর্টকাটটি উপস্থাপন করে যা আপনি একজন ব্যবহারকারীকে প্রস্তাব করতে চান। নিম্নলিখিত উদাহরণটি একটি পানীয় অর্ডার করার জন্য একটি শর্টকাটের জন্য একটি অভিপ্রায় তৈরি করে৷

      কোটলিন

      val menuItem = mapOf(
          "@type" to "MenuItem",
          "@context" to "http://schema.googleapis.com",
          "name" to "Fresh Lemon Honey Jasmine Green Tea",
      )
      
      val appShortcutIntent = AppShortcutIntent.builder()
          .setIntentName("actions.intent.ORDER_MENU_ITEM")
          .setPackageName("my.app.package")
          .setIntentParamName("menuItem")
          .setIntentParamValue(menuItem)
          .build()
       

      জাভা

        Map<String, Object> menuItem = new HashMap<>();
        menuItem.put("@type", "MenuItem");
        menuItem.put("@context", "http://schema.googleapis.com");
        menuItem.put("name", "Fresh Lemon Honey Jasmine Green Tea");
      
        AppShortcutIntent appShortcutIntent =
            AppShortcutIntent.builder()
                .setIntentName("actions.intent.ORDER_MENU_ITEM")
                .setPackageName("my.app.package")
                .setIntentParamName("menuItem")
                .setIntentParamValue(menuItem)
                .build();
       
    2. lookupShortcut পদ্ধতিতে শর্টকাট অভিপ্রায় পাস করুন।

      কোটলিন

      val result = shortcutsClient.lookupShortcut(appShortcutIntent).await()
      if (!result.isShortcutPresent) {
          // App can suggest creating a shortcut
      } else {
          // App can remind the user that they have a shortcut for this app action
      }
      

      জাভা

      shortcutsClient.lookupShortcut(appShortcutIntent)
        .addOnSuccessListener(shortcutLookupResult -> {
          if (!shortcutLookupResult.isShortcutPresent()) {
            // App can suggest creating a shortcut
          } else {
            // App can remind the user that they have a shortcut for this app action
          }
        })
        .addOnFailureListener(e -> Log.e(TAG, "Shortcut lookup failed", e));
      
  4. শর্টকাট উদ্দেশ্য ব্যবহার করে পরামর্শ তৈরি করুন। একটি পরামর্শ তৈরি করতে আপনি দুটি পদ্ধতি ব্যবহার করতে পারেন:

    • createShortcutSuggestionIntent : একটি Android অভিপ্রায় প্রদান করে যা আপনি আপনার অ্যাপের প্রসঙ্গে শর্টকাট সাজেশন কার্যকলাপ শুরু করতে ব্যবহার করেন।

      কোটলিন

      val orderShortcut = AppShortcutSuggestion.builder()
          .setAppShortcutIntent(appShortcutIntent)
          .setCommand(PHRASE: String)
          .build()
      
      val intent = shortcutsClient.createShortcutSuggestionIntent(orderShortcut).await()
      application.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK))
      

      জাভা

        AppShortcutSuggestion orderShortcut =
            AppShortcutSuggestion.builder()
                .setAppShortcutIntent(appShortcutIntent)
                .setCommand(PHRASE: String)
                .build();
      
        shortcutsClient.createShortcutSuggestionIntent(orderShortcut)
            .addOnSuccessListener(intent ->
                getApplication().startActivity(
                    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
            )
            .addOnFailureListener(e ->
                Log.e(TAG, "Failed to get shortcut suggestion intent", e);
            );
      

      এই উদাহরণে, PHRASE হল সেই উচ্চারণ যা আপনি ব্যবহারকারীকে শর্টকাট হিসাবে প্রস্তাব করতে চান। উদাহরণস্বরূপ, আপনি যদি ব্যবহারকারীকে একটি শর্টকাট হিসাবে "Hey Google, আমার বুদবুদ চা অর্ডার করুন" বলতে চান, তাহলে PHRASE এর পরিবর্তে "order my bubble tea"

      কোটলিন

      val orderShortcut = AppShortcutSuggestion.builder()
          .setAppShortcutIntent(appShortcutIntent)
          .setCommand("order my bubble tea")
          .build()
      

      জাভা

      AppShortcutSuggestion orderShortcut =
          AppShortcutSuggestion.builder()
              .setAppShortcutIntent(appShortcutIntent)
              .setCommand("order my bubble tea")
              .build();
      
    • createShortcutSettingsIntent : একটি Android ইন্টেন্ট প্রদান করে যা ব্যবহারকারীকে সহকারী অ্যাপের শর্টকাট সেটিংস ইন্টারফেসে নিয়ে যায়।

      কোটলিন

      val intent = shortcutsClient.createShortcutSettingsIntent().await()
      application.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK))
      

      জাভা

        shortcutsClient.createShortcutSettingsIntent()
          .addOnSuccessListener(intent ->
              getApplication().startActivity(
                  intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
          )
          .addOnFailureListener(e ->
              Log.e(TAG, "Failed to get shortcut settings intent", e);
          );
      
  5. পূর্ববর্তী ধাপে ফিরে আসা Android অভিপ্রায় ব্যবহার করে startActivity কল করুন।

সমস্যা সমাধানের পরামর্শ

এই বিভাগে শর্টকাট প্রস্তাব করার সময় আপনি সম্মুখীন হতে পারেন যে সমস্যা এবং ব্যতিক্রম তালিকা.

"Google ইনস্টলেশন অসমর্থিত ব্যতিক্রম: পরিষেবাতে আবদ্ধ হতে পারে না"

প্যাকেজ দৃশ্যমানতা ফিল্টারিংয়ের কারণে, " GoogleInstallationUnsupportedException : পরিষেবার সাথে আবদ্ধ হতে পারে না" Android 11 এবং পরবর্তীতে ঘটতে পারে। নিশ্চিত করুন যে com.google.android.googlequicksearchbox আপনার ম্যানিফেস্টের <queries> ট্যাগের মধ্যে অন্তর্ভুক্ত রয়েছে:

<manifest ...>
  <queries>
    <package android:name="com.google.android.googlequicksearchbox" />
  </queries>
  ...
</manifest>

"এপিকে স্বাক্ষর যাচাই করতে ব্যর্থ হয়েছে"

আপনি যদি আপনার প্রোডাকশন অ্যাপটিকে অ্যাপ বান্ডেল হিসেবে জমা না দেন তাহলে নিম্নলিখিত ত্রুটি ঘটতে পারে:

Failed to verify the APK signature. If this is a development build, please
make sure to update the preview of your app in App Actions Test Tool.

নিশ্চিত করুন যে আপনি আপনার অ্যাপটিকে একটি Android অ্যাপ বান্ডেল হিসেবে জমা দিয়েছেন

"ব্যবহারকারীর শর্টকাট পেতে ব্যর্থ হয়েছে"

"ব্যবহারকারীর শর্টকাট পেতে ব্যর্থ" ত্রুটি বার্তাটি ঘটতে পারে যদি আপনি সম্প্রতি ডিভাইসে একটি অ্যাকাউন্ট যোগ করেছেন এবং নতুন অ্যাকাউন্টের শর্টকাট ডেটা এখনও ডিভাইসে ক্যাশে করা হয়নি৷

ডিভাইসে শর্টকাট ডেটা সিঙ্ক করতে, অ্যাসিস্ট্যান্ট অ্যাপের ইন্টারফেস ব্যবহার করে অ্যাসিস্ট্যান্ট শর্টকাট যোগ করুন বা মুছুন।

শর্টকাট সৃষ্টি কার্যকলাপ অবিলম্বে কোন বিষয়বস্তু প্রদর্শন ছাড়া বন্ধ

আপনি যদি অ্যাপ অ্যাকশন টেস্ট টুল ব্যবহার করে প্রিভিউ তৈরি না করেন বা প্রিভিউ মেয়াদ শেষ হয়ে যায় তাহলে শর্টকাট তৈরির অ্যাক্টিভিটি কোনো বিষয়বস্তু প্রদর্শন না করেই বন্ধ হয়ে যেতে পারে। আপনার পূর্বরূপ আপডেট করুন এবং আবার চেষ্টা করুন.