টুল ও পারফর্ম্যান্স

Google Play-তে মাল্টি-ডিভাইস কোয়ালিটি নেভিগেট করা এবং মোবাইল ছাড়া অন্যান্য ডিভাইসে প্রকাশ করা

স্পিকার

  • Jan Kleinert

    ডেভেলপার রিলেশনস ইঞ্জিনিয়ার

  • Faustine Liao

    DFX অপারেশন লিড

সম্পর্কে

টক সম্পর্কে

Android ইকোসিস্টেম স্মার্টওয়াচ, লিভিং রুম, গাড়ি ও XR-এ প্রসারিত হওয়ার সাথে সাথে নতুন স্ক্রিনে ব্যবহারকারীদের কাছে পৌঁছানোর সুযোগ বাড়ছে। তবে, Wear OS, Android TV, Android Auto, Android Automotive OS বা Android XR জুড়ে ডিস্ট্রিবিউট করার সময় টেস্টিং, স্টোর লিস্টিং ও অ্যাপ রিভিউয়ের জন্য আলাদা আলাদা বিষয় বিবেচনা করতে হয়।

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

সারাংশ

  • মডিউলার অ্যাপ বান্ডেল আপনার মোবাইল অ্যাপ থেকে ফর্ম-ফ্যাক্টর রিলিজ আলাদা করে। ফর্ম-ফ্যাক্টর পর্যালোচনা ব্যর্থ হলে, শুধুমাত্র সেই নির্দিষ্ট বান্ডেলটি ব্লক করা হয় এবং আপনার মোবাইল রিলিজ উদ্দেশ্য অনুযায়ী প্রকাশ করা হয়।
  • Play Console ট্র্যাক, Wear OS ও Android Auto-এর মতো ব্যতিক্রম সহ, প্রকাশ করার জন্য নমনীয় পথ অফার করে। Wear OS-এর জন্য একটি ডেডিকেটেড ট্র্যাক প্রয়োজন, যেখানে Android Auto-কে অবশ্যই স্ট্যান্ডার্ড মোবাইল ট্র্যাক ব্যবহার করতে হবে।
  • ইন্টার্নাল টেস্টিং ট্র্যাক, Play রিভিউ ট্রিগার না করেই ১০০ জন পর্যন্ত পরীক্ষকের মধ্যে বিল্ড ডিস্ট্রিবিউট করে। ক্লোজড ও ওপেন টেস্টিং ট্র্যাক রিভিউ ট্রিগার করে, যা লঞ্চ করার আগে বাধাগুলি সমাধান করতে আপনাকে সাহায্য করে।
  • ফর্ম-ফ্যাক্টর রিভিউ বাতিল করার কারণ হল ডিভাইসের প্রয়োজনীয়তা পূরণ না করা, যেমন গাড়ির অ্যাপের বিভাগের সীমা বা স্ক্রিনশট না থাকা। আপনার অ্যাপে লগ-ইন করার প্রয়োজন হলে, Play Console-এ সঠিক ডেমো অ্যাকাউন্ট ক্রেডেনশিয়াল প্রদান করুন।

রিসোর্স

Gemini Notebook

বিষয়

  • google-play
  • মাল্টি-ডিভাইস
  • android-tv
  • android-auto
  • wear-os
  • android-xr
  • অ্যাপ-কোয়ালিটি

ট্রান্সস্ক্রিপ্ট করা

ভূমিকা

  • সবাইকে স্বাগত।

  • মাল্টি-ডিভাইস অ্যাপ কোয়ালিটি নেভিগেট করা এবং মোবাইলের বাইরে ফর্ম ফ্যাক্টরের জন্য Google Play-তে প্রকাশ করার এই সেশনে আমাদের সাথে যোগ দেওয়ার জন্য আপনাকে অনেক ধন্যবাদ।

  • আমি জন ক্লেইনার্ট, Android for Cars টিমের ডেভেলপার রিলেশনস ইঞ্জিনিয়ার।

  • আমি ফস্টিন লিয়াও, Play ট্রাস্ট ও নিরাপত্তা টিমের অপারেশন লিড।

  • আজ এখানে সবাইকে আমাদের সাথে পেয়ে আমরা অত্যন্ত আনন্দিত।

  • তাই, বহু বছর ধরে, আমরা যখন Android ডেভেলপমেন্টের কথা বলতাম, তখন আমাদের মধ্যে বেশিরভাগই শুধু মোবাইল ডিভাইসের কথাই ভাবতাম, কিন্তু Android ইকোসিস্টেম এখন শুধু স্মার্টফোনের মধ্যেই সীমাবদ্ধ নেই।

  • তাই আজ, আপনার ব্যবহারকারীরা Android TV-তে তাদের বসার ঘরে, সম্ভবত কারপুল লাইনে বা Android Auto বা Automotive OS-এ তাদের গাড়ি চার্জ করার সময়, Wear OS-এর মাধ্যমে তাদের কব্জিতে এবং Android XR-এর মাধ্যমে ক্রমবর্ধমানভাবে ইমারসিভ 3D স্পেসে অ্যাপের সাথে ইন্টার‍্যাক্ট করছেন।

  • এটি বৃদ্ধির জন্য একটি বিশাল সুযোগ, তবে এই ফর্ম ফ্যাক্টরগুলিতে প্রসারিত করার অর্থ হল আপনার প্রকাশনা কৌশলের জন্য বিবেচনা করার জন্য কয়েকটি প্রান্তিক বিবেচনা রয়েছে।

  • আপনার অ্যাপ তৈরি করা থেকে শুরু করে Google Play-তে প্রকাশ করা এবং লাইভ করা পর্যন্ত সামগ্রিক প্রক্রিয়াটি সাধারণত মোবাইল রিলিজের মতোই থাকে।

  • আপনার অ্যাপ তৈরি ও প্রস্তুত করুন, তারপর Play Console-এ আপনার তালিকা তৈরি করুন, আপনার অ্যাপ পরীক্ষা করুন, আপনার প্রোডাকশন রিলিজ আপলোড ও জমা দিন এবং তারপর পর্যালোচনা ও অনুমোদনের জন্য অপেক্ষা করুন।

  • তবে, মোবাইল ছাড়া অন্যান্য ফর্ম ফ্যাক্টরের জন্য অ্যাপ প্রকাশ করার ক্ষেত্রে কিছু অনন্য বিষয় বিবেচনা করতে হয়।

  • আজ আমরা আপনাকে একটি স্পষ্ট ফ্রেমওয়ার্ক দিতে যাচ্ছি যা আপনাকে আরও মসৃণ, আরও অনুমানযোগ্য মাল্টি-ডিভাইস রিলিজ প্রসেসের জন্য প্রস্তুত হতে সাহায্য করবে।

  • আসুন, একদম গোড়া থেকে শুরু করা যাক: কীভাবে আপনার অ্যাপের আর্কিটেকচার ও প্যাকেজ তৈরি করবেন।

অ্যাপ আর্কিটেকচার ও প্যাকেজিং

  • তাই Google Play Console ব্যবহার করার আগে, আপনাকে আর্কিটেকচার সংক্রান্ত একটি গুরুত্বপূর্ণ সিদ্ধান্ত নিতে হবে।

  • আপনি কি এমন একটি একক, ইউনিফায়েড অ্যাপ বান্ডেল তৈরি করেন যাতে আপনার সাপোর্ট করা সব ফর্ম ফ্যাক্টরের জন্য সবকিছু থাকে, নাকি আপনি নিজের অ্যাপকে ফর্ম ফ্যাক্টর-নির্দিষ্ট মডিউলে ভাগ করেন এবং প্রতিটির জন্য Android App Bundle বা AAB তৈরি করেন?

  • তাই আমি যখন মডিউল বা মডিউলারাইজেশন বলছি, তখন আমি যা উল্লেখ করছি তা হল আপনার কোডবেসকে এমনভাবে স্ট্রাকচার করার একটি উপায় যা রক্ষণাবেক্ষণের উন্নতি করে।

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

  • তাই, ইউনিফায়েড Android অ্যাপ বান্ডেল পদ্ধতি ম্যানেজ করা সহজ বলে মনে হলেও, আমরা মডিউলার পদ্ধতি ব্যবহার করার সাজেশন দিই।

  • তাই, আমরা কেন এই মডিউলার অ্যাপ্রোচ সাজেস্ট করি তা বোঝাতে এখানে একটি উদাহরণ দেওয়া হল।

  • ধরা যাক, আপনার কাছে এমন একটি অ্যাপ আছে যা মোবাইল ও Android TV, দুটিতেই কাজ করে।

  • আপনি যদি স্ট্যান্ডার্ড মোবাইল রিলিজ ট্র্যাকে একটি Android অ্যাপ বান্ডেল জমা দেন এবং আপনার Android TV অ্যাপ রিভিউ চেক পাস করতে না পারে, তাহলে পুরো রিলিজটি বন্ধ হয়ে যায়।

  • তাই এটি আপনার Android TV অ্যাপ এবং মোবাইল অ্যাপ, দুটির রিলিজকেই প্রভাবিত করবে।

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

  • অন্যদিকে, প্রতিটি ফর্ম ফ্যাক্টরের জন্য মডিউলার Android অ্যাপ বান্ডেল আপনাকে আরও গ্র্যানুলার কন্ট্রোল দেবে এবং আপনার মোবাইল রিলিজ থেকে সেই ফর্ম ফ্যাক্টর রিলিজগুলিকে আলাদা করতে সাহায্য করবে।

  • তাই, এর পরিবর্তে, আপনার মোবাইল অ্যাপ এবং আপনার টিভি অ্যাপের জন্য আলাদা অ্যাপ মডিউল থাকলে, আপনি প্রতিটির জন্য আলাদা Android অ্যাপ বান্ডেল তৈরি করতে পারেন।

  • এবং তারপরে, আপনার TV অ্যাপের রিভিউতে কোনও সমস্যা থাকলে, আপনি সমস্যাটি সমাধান না করা পর্যন্ত শুধুমাত্র সেই অ্যাপের রিলিজ ব্লক করা হবে।

  • মোবাইল অ্যাপের রিলিজ, যেমনটি হওয়ার কথা ছিল, ঠিক তেমনভাবেই প্রকাশ করা হবে।

  • আমি আগেই বলেছি, মডিউলারাইজেশনের অনেক পদ্ধতি আছে।

  • তাই এখানে একটি অডিওবুক অ্যাপকে মডিউলারাইজ করার পদ্ধতির একটি উদাহরণ দেওয়া হল যার একটি মোবাইল অভিজ্ঞতা এবং একটি Android Automotive OS অভিজ্ঞতা রয়েছে।

  • তাই, উপরে সবুজ রঙে, প্রতিটি ফর্ম ফ্যাক্টরের জন্য আমাদের একটি অ্যাপ মডিউল রয়েছে এবং এটি প্ল্যাটফর্ম-নির্দিষ্ট ডিপেন্ডেন্সি আলাদা করতে সাহায্য করে।

  • তারপর হলুদ রঙে ফিচার মডিউল দেখানো হয়েছে, যা অ্যাপের কার্যকারিতার বিচ্ছিন্ন অংশের সাথে সম্পর্কিত।

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

  • তারপর, আপনার প্রোজেক্টের Gradle সেটিংস ফাইলে, এই ধরনের মডিউলারাইজেশন সাপোর্ট করার জন্য আপনি এই মাল্টি-মডিউল Gradle কনফিগারেশন অন্তর্ভুক্ত ও সেট-আপ করতে পারবেন।

    ...
    
    rootProject.name = "MultiFormFactorApp"
    
    // Define modules for each form factor
    include(":app:automotive")
    include(":app:mobile")
    include(":core:network")
    include(":data:books")
    include(":data:reviews")
    include(":feature:home")
    include(":feature:player")
    include(":feature:reviews")
  • তাই, প্রতিটি অ্যাপ মডিউল ও বান্ডেলের জন্য আপনাকে একই প্যাকেজের নাম বা অ্যাপ্লিকেশন আইডি ব্যবহার করতে হবে।

Google Play Console-এ স্ট্র্যাটেজি ট্র্যাক করা

  • এই মডিউলার পদ্ধতি সরাসরি Play Console-এ আপনার ট্র্যাক স্ট্র্যাটেজির সাথে যুক্ত।

  • আপনি যখন প্রকাশ করেন, তখন আপনার কাছে স্ট্যান্ডার্ড মোবাইল ট্র্যাক থাকে, তবে আমরা ডেডিকেটেড ফর্ম ফ্যাক্টর ট্র্যাকও অফার করি।

  • Android TV, Android XR ও Android Automotive OS-এর জন্য আপনার কাছে বিকল্প আছে।

  • আপনি মোবাইলের পাশাপাশি প্রকাশ করতে পারেন অথবা তাদের ডেডিকেটেড ফর্ম ফ্যাক্টর ট্র্যাক ব্যবহার করতে পারেন।

  • তবে, দুটি ব্যতিক্রম আছে।

  • Wear OS-এর জন্য, আপনাকে অবশ্যই নির্দিষ্ট Wear OS ট্র্যাক ব্যবহার করতে হবে।

  • আর Android Auto-এর ক্ষেত্রে, যেহেতু এটি মূলত আপনার মোবাইল অ্যাপের একটি এক্সটেনশন যা গাড়ির স্ক্রিনে প্রজেক্ট করা হয়, তাই একমাত্র বিকল্প হল স্ট্যান্ডার্ড মোবাইল ট্র্যাক।

  • আপনি একাধিক ট্র্যাক ম্যানেজ করলে, ভার্সন করা গুরুত্বপূর্ণ।

  • একটি পদ্ধতি হল, আপনার ভার্সন কোডের প্রথম কয়েকটি সংখ্যা ফর্ম ফ্যাক্টরে অ্যাসাইন করা।

  • যেমন, মোবাইলের জন্য 01, Wear OS-এর জন্য 02, Android Automotive OS-এর জন্য 03 ইত্যাদি।

  • আমরা সাধারণত সাজেস্ট করি যে আপনি ভার্সন কোডটি কমপক্ষে সাতটি সংখ্যা দৈর্ঘ্যের করুন, যাতে বাকি সংখ্যাগুলি অ্যাপ ভার্সনের জন্য ব্যবহার করা যেতে পারে।

  • এটি Play Console-এ ভার্সন কোড সংক্রান্ত সমস্যা প্রতিরোধ করতে সাহায্য করে।

  • আপনার অ্যাপ প্যাকেজ করা হয়ে গেলে, এবার তা পরীক্ষা করার সময়।

  • ফর্ম-ফ্যাক্টর ডেভেলপমেন্টের জন্য পুঙ্খানুপুঙ্খ টেস্টিং প্রয়োজন এবং প্রোডাকশনে রিলিজ করার আগে এটি করার জন্য Google Play আপনাকে তিনটি আলাদা চ্যানেল দেয়: ইন্টার্নাল টেস্টিং, সীমিত টেস্টিং এবং ওপেন টেস্টিং।

  • আপনি ডেডিকেটেড ফর্ম-ফ্যাক্টর ট্র্যাক ব্যবহার করলে, আপনার ফর্ম ফ্যাক্টরের সাথে এইসব টেস্টিং ট্র্যাকও একত্রিত করতে পারবেন, যা আপনাকে প্রসেসের উপর আরও বেশি গ্র্যানুলার কন্ট্রোল প্রদান করবে।

  • যেমন, আপনি যদি সেভাবে সেট-আপ করতে চান, তাহলে স্ট্যান্ডার্ড ট্র্যাকে আপনার মোবাইল অ্যাপের জন্য একটি সীমিত টেস্টিং রিলিজ এবং Android TV ফর্ম-ফ্যাক্টর ট্র্যাকে আপনার Android TV অ্যাপের জন্য আলাদা একটি সীমিত টেস্টিং রিলিজ থাকতে পারে, যেখানে বিভিন্ন সেট টেস্টার থাকবে।

  • তাই, ইন্টার্নাল টেস্টিং হল শুরু করার একটি দুর্দান্ত উপায়।

  • এটি আপনাকে দ্রুত ১০০ জন পর্যন্ত পরীক্ষকের কাছে আপনার অ্যাপ ডিস্ট্রিবিউট করতে দেয় এবং সবচেয়ে গুরুত্বপূর্ণ হল, এটি Play রিভিউ ট্রিগার করে না।

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

  • এবং ইন্টার্নাল টেস্টের মাধ্যমে, আপনি একটি অনন্য URL পাবেন যা আপনি সেইসব পরীক্ষকদের সাথে শেয়ার করতে পারবেন।

  • ইন্টার্নাল টেস্টিংয়ের ফলাফল নিয়ে আপনি সন্তুষ্ট হলে, সীমিত টেস্টিং ও ওপেন টেস্টিংয়ে যেতে পারবেন।

  • আপনি ইন্টার্নাল টেস্টিংয়ের বাইরেও সীমিত টেস্টিং রিলিজের মাধ্যমে টেস্টিং করতে পারেন, যা আপনাকে টার্গেট করা মতামত পেতে আরও বেশি সংখ্যক টেস্টারদের সাথে আপনার অ্যাপের প্রি-রিলিজ ভার্সন টেস্ট করতে দেয়।

  • আপনি ইমেল আইডির তালিকা হিসেবে অথবা Google Groups-এর মাধ্যমে আপনার সীমিত টেস্টিং গ্রুপ ম্যানেজ করতে পারবেন।

  • অন্যদিকে, সর্বজনীন টেস্টিং আপনাকে Google Play-তে আরও বড় গ্রুপের সাথে পরীক্ষা চালাতে সাহায্য করে।

  • আপনাকে Google Play-তে দেখা যাবে এবং যে কেউ ওপেন টেস্টিং প্রোগ্রামে যোগ দিতে পারবেন।

  • কোনও আমন্ত্রণ জানানোর প্রয়োজন নেই এবং তারা অ্যাপ সম্পর্কে আপনার সাথে মতামত, ব্যক্তিগত মতামত শেয়ার করতে পারবেন।

  • এইসব সর্বজনীন ও সীমিত টেস্টিং ট্র্যাক পর্যালোচনা ট্রিগার করে।

  • এটি আসলে একটি বিশাল সুবিধা।

  • এটি আপনাকে পর্যালোচনা প্রক্রিয়াটি পরীক্ষা করতে এবং আপনার বহুল প্রত্যাশিত লঞ্চের দিনের আগেই যেকোনও বাধা দূর করতে দেয়।

অ্যাপের কোয়ালিটি ও পর্যালোচনা করার প্রসেস

  • পর্যালোচনা প্রসেস সম্পর্কে বলতে গেলে, এই প্রসেসে কী কী করা হয় এবং এটি কেন গুরুত্বপূর্ণ সেই সম্পর্কে একটু আলোচনা করা যাক।

  • মূলত, এইসব নীতি ও নির্দেশিকা অ্যাপের কোয়ালিটি সংক্রান্ত।

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

  • তাই, আসুন দেখে নেওয়া যাক, কীভাবে আপনি নিজের অ্যাপকে প্রস্তুত করতে পারেন যাতে সেটি যত সহজে সম্ভব পর্যালোচনা পাস করতে পারে।

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

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

  • এই দুই সেট নির্দেশিকা একসাথে পড়লে, আপনি সহজেই শুরু করতে পারবেন।

  • তবে, প্রতিটি ফর্ম ফ্যাক্টরের জন্য আমাদের ফর্ম ফ্যাক্টর-নির্দিষ্ট অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকাও রয়েছে।

  • আমাদের পর্যালোচকরা এই নির্দেশিকা অনুযায়ী আসল ডিভাইস ও এমুলেটরে আপনার অ্যাপ পরীক্ষা করবেন।

  • তাই, আপনার অ্যাপ যাতে সেগুলি মেনে চলে তা নিশ্চিত করা খুবই গুরুত্বপূর্ণ।

  • তাই, প্রতিটি ফর্ম ফ্যাক্টরের জন্য অ্যাপ বাতিল হওয়ার সবচেয়ে সাধারণ কারণগুলি এখানে এক ঝলকে দেখে নিন।

  • তবে মনে রাখবেন, এগুলি অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকার সম্পূর্ণ তালিকা নয়।

  • তাই, আরও শক্তিশালী মাপকাঠির জন্য আপনি যে ফর্ম ফ্যাক্টর নিয়ে কাজ করছেন তার কোয়ালিটির বিষয়ে নির্দেশিকা বিশদে দেখে নিতে ভুলবেন না।

Android TV অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকা

  • তাহলে, Android TV দিয়ে শুরু করা যাক।

  • তাই, এই বিভাগের স্লাইডের নিচে, আপনি একটি ছোট লিঙ্ক দেখতে পাবেন যা আপনাকে সেই ফর্ম ফ্যাক্টরের জন্য অ্যাপ কোয়ালিটি নির্দেশিকার সম্পূর্ণ তালিকায় নিয়ে যাবে।

  • Android TV অ্যাপ বাতিল হওয়ার একটি সাধারণ কারণ হল, অ্যাপটি যেসব ভাষা সাপোর্ট করে তার প্রত্যেকটির জন্য হোম স্ক্রিন ব্যানার ছবি না থাকা।

  • তাই, আপনাকে ৩২০ বাই ১৮০ পিক্সেলের ছবি দিতে হবে যাতে আপনার অ্যাপ শনাক্ত করার জন্য লোকালাইজ করা টেক্সট থাকে।

  • এই স্লাইডের ছবিটি হোম স্ক্রিন ব্যানারের একটি উদাহরণ দেখায় যা সেই মানদণ্ড মেনে চলে।

  • দ্বিতীয়ত, বেশিরভাগ টিভিতে ব্যবহারকারীরা ডি-প্যাড রিমোট ব্যবহার করে ডিভাইসের সাথে ইন্টার‍্যাক্ট করেন।

  • তাই, আপনি যাতে সঠিকভাবে ডি-প্যাড নেভিগেশন ও ফোকাস সাপোর্ট করেন তা খুবই গুরুত্বপূর্ণ।

  • এইসব মাপকাঠির ভিত্তিতে কোনও প্রত্যাখ্যান এড়াতে, আপনি কমপক্ষে ন্যূনতম ডি-প্যাড কন্ট্রোল সাপোর্ট করছেন কিনা তা নিশ্চিত করুন।

  • Android TV অ্যাপ বাতিল হওয়ার তৃতীয় সাধারণ কারণ হল, আপনার Android ম্যানিফেস্ট ফাইলে CATEGORY_LEANBACK_LAUNCHER ইনটেন্ট ফিল্টার না থাকা।

    <application ...>
    ...
    <activity
        android:name="com.example.TvActivity"
        android:label="@string/app_name"
        android:theme="@style/Theme.Leanback">
        <intent-filter>
          <action android:name=
               "android.intent.action.MAIN" />
          <category android:name=
               "Android.intent.category.
                LEANBACK_LAUNCHER" />
        </intent-filter>
      </activity>
    </application>
  • এই ফিল্টার আপনার অ্যাপকে টিভির জন্য চালু করা হিসেবে শনাক্ত করবে এবং Google Play-কেও ব্যবহারকারীদের কাছে এটি একটি টিভি অ্যাপ হিসেবে শনাক্ত করতে দেবে।

  • তাই, কোনও ব্যবহারকারী তার টিভির হোম স্ক্রিনে আপনার অ্যাপ বেছে নিলে, এই ইনটেন্টই শনাক্ত করে যে কোন অ্যাক্টিভিটি লঞ্চ করতে হবে।

  • তাই, আপনার ম্যানিফেস্টে এটি অন্তর্ভুক্ত করেছেন কিনা তা ভাল করে দেখে নিন।

  • Android XR is next.

  • Android XR দ্বারা পরিচালিত XR হেডসেট বা XR গ্লাসের জন্য তৈরি করার সময়, আপনার অ্যাপের পারফর্ম্যান্স, রেন্ডারিং ও স্টেবিলিটির উপর বিশেষ মনোযোগ দিন।

  • আপনি Jetpack XR SDK-এর মাধ্যমে তৈরি করা অ্যাপের পারফর্ম্যান্স প্রোফাইল করতে Perfetto ব্যবহার করতে পারেন, যাতে আপনি ন্যূনতম ফ্রেম রেট সংক্রান্ত প্রয়োজনীয়তা মেনে চলছেন কিনা তা নিশ্চিত করতে পারেন।

  • আর আপনি যদি Unity-র মতো রিয়েল-টাইম ইঞ্জিন ব্যবহার করে তৈরি করেন, তাহলে আপনি সেই ইঞ্জিনের বিল্ট-ইন প্রোফাইলিং টুল ব্যবহার করতে পারেন যা ইঞ্জিনের মধ্যেই তৈরি করা হয়েছে যাতে আপনি রেন্ডারিং সংক্রান্ত প্রয়োজনীয়তা মেনে চলছেন কিনা তা নিশ্চিত করতে পারেন।

Android Auto ও Android Automotive OS-এর জন্য নির্দেশিকা

  • এর পরে আছে গাড়ি, যার মধ্যে Android Auto এবং Android Automotive OS, দুটিই অন্তর্ভুক্ত।

  • Android Auto এবং Android Automotive OS-এর জন্য, বিভাগের একটি ধারণা রয়েছে, যা এই নির্দিষ্ট ফর্ম ফ্যাক্টরের জন্য কিছুটা অনন্য।

  • এবং শুধুমাত্র নির্দিষ্ট কিছু বিভাগের অ্যাপ গাড়িতে প্রকাশ করার অনুমতি দেওয়া হয়।

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

  • আমি কী বলতে চাইছি তা আরও বিস্তারিতভাবে দেখাই।

  • এখানে, আপনি প্রতিটি প্ল্যাটফর্মের জন্য গাড়িতে কাজ করে এমন অ্যাপের ক্যাটেগরির ওভারভিউ এবং সেগুলি উপলভ্য কিনা তা দেখতে পাবেন।

  • তাই এটি বিটা, ওপেন, যার অর্থ সাধারণত উপলভ্য, বা এখনও কাজ করে না, যা এখানে শীঘ্রই আসছে বলে উল্লেখ করা হয়েছে।

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

  • তবে Android Auto-এর জন্য কমিউনিকেশন কলিং অ্যাপের মতো অন্যান্য বিভাগ বিটা ভার্সনে রয়েছে।

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

  • আপনি এই বিষয়ে এবং আরও অনেক কিছু সম্পর্কে আমাদের Android for Cars ডেভেলপার নির্দেশিকা থেকে জানতে পারবেন।

  • সেখানে আপনি আগেভাগে অ্যাক্সেস প্রোগ্রামের জন্য নিজেকে মনোনীত করার লিঙ্ক পাবেন।

  • Android Automotive OS স্ক্রিনশটের জন্য স্পেসিফিকেশন না থাকা বা ভুল স্পেসিফিকেশন থাকা হল আরেকটি সাধারণ কারণ যার জন্য আমরা অ্যাপ প্রত্যাখ্যান করি।

  • তাই, Android Automotive OS-এর স্ক্রিনশট দেওয়ার সময়, আপনাকে নিশ্চিত করতে হবে যে আপনি অন্তত দুটি পোর্ট্রেট ওরিয়েন্টেশন স্ক্রিনশট এবং অন্তত দুটি ল্যান্ডস্কেপ ওরিয়েন্টেশন স্ক্রিনশট যোগ করছেন, যেগুলির ডাইমেনশন এখানে তালিকাভুক্ত করা আছে।

  • এগুলি ক্যাপচার করার জন্য আপনি Android Automotive OS এমুলেটর ব্যবহার করতে পারেন।

  • এটি এমনভাবে সেট-আপ করা হয়েছে যাতে আপনার প্রয়োজন অনুযায়ী সঠিক সাইজের স্ক্রিনশট ক্যাপচার করতে পারে।

  • আর পরিশেষে, গাড়ির জন্য অ্যাপের ক্ষেত্রে নিরাপত্তা সবচেয়ে গুরুত্বপূর্ণ।

  • তাই আপনার অ্যাপ যদি আমাদের ড্রাইভার ডিস্ট্র্যাকশন সংক্রান্ত নির্দেশিকা মেনে না চলে, তাহলে সেটি বাতিল করা হবে।

  • যেমন, কোনও ভিডিও অ্যাপে প্লেব্যাক পজ করতে হবে এবং গাড়ি চলাকালীন সেটি দেখা যাবে না।

Wear OS অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকা

  • এবং সবশেষে, আমাদের কাছে Wear OS আছে।

  • তাই Wear OS অ্যাপ ছোট, গোলাকার ডিসপ্লের জন্য অপ্টিমাইজ ও ফর্ম্যাট করা না থাকলে তা বাতিল করা হতে পারে।

  • তাই আমরা সাজেস্ট করি যে Compose for Wear OS-এর লেটেস্ট স্টেবল ভার্সন ব্যবহার করুন যাতে বিভিন্ন সাইজের ডিভাইসে কন্টেন্ট কেটে না যায় অথবা স্ক্রল করা যায় এমন কন্টেন্ট থাকলে স্ক্রল বার দেখা যায়।

    @Composable
    fun MyText() {
      Text(
        text = stringResource(R.string.compose_for_wear_os),
        modifier = Modifier.fillMaxWidth(),
        textAlign = TextAlign.Center,
        style = MaterialTheme.typography.titleLarge
      )
    }
  • Android Automotive OS-এর ক্ষেত্রে আমরা যা উল্লেখ করেছি, Wear OS অ্যাপের ক্ষেত্রেও Wear OS স্ক্রিনশট না থাকলে বা ভুল থাকলে তা বাতিল করা হতে পারে।

  • এখানে একটি উদাহরণ দেওয়া হল, Androidify স্যাম্পেল অ্যাপের জন্য Google Play Store তালিকা থেকে নেওয়া স্ক্রিনশটের একটি ভালো উদাহরণ এবং এটি প্রয়োজনীয়তা পূরণ করে।

  • তাই, Wear OS ডিভাইসে আপনার অ্যাপ চলছে এমন অন্তত একটি স্ক্রিনশট জমা দিতে ভুলবেন না।

অ্যাপ জমা দেওয়ার জন্য গুরুত্বপূর্ণ পরামর্শ

  • সারসংক্ষেপ?

  • আপনার নির্দিষ্ট ফর্ম ফ্যাক্টরের জন্য অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকা পড়ুন এবং জমা দেওয়ার আগে সেগুলির সাথে মিলিয়ে পরীক্ষা করুন।

  • এছাড়াও, কয়েকটি গুরুত্বপূর্ণ পরামর্শ।

  • আপনার অ্যাপে লগ-ইন করার প্রয়োজন হলে, Play Console-এর অ্যাপ অ্যাক্সেস বিভাগে আপনাকে অবশ্যই একটি অ্যাক্টিভ ডেমো অ্যাকাউন্ট এবং সঠিক ক্রেডেনশিয়াল প্রদান করতে হবে।

  • আমাদের পর্যালোচকরা লগ-ইন করতে না পারলে, আমরা আপনার অ্যাপ পরীক্ষা করতে পারব না এবং আপনার অ্যাপ অটোমেটিক বাতিল হয়ে যাবে।

  • এছাড়াও, আপনি যা প্রতিশ্রুতি দিচ্ছেন তা পূরণ করতে ভুলবেন না।

  • শুধু মোবাইলের স্ক্রিনশট ব্যবহার করবেন না।

  • আপনার অ্যাপ Wear OS ও Android TV-এর জন্য উপলভ্য হলে, Play Console-এ সেইসব নির্দিষ্ট ফর্ম ফ্যাক্টরের জন্য খুব ভাল কোয়ালিটির স্ক্রিনশট আপলোড করতে ভুলবেন না।

  • আর সবশেষে, বিশদে লিখুন।

  • অ্যাপটি ঠিক কী করে, কেন এটি মূল্যবান এবং প্রতিটি ধরনের ডিভাইসে এটি ইনস্টল করার সময় ব্যবহারকারীরা কী আশা করতে পারেন তা ব্যবহারকারীদের জানান।

উপসংহার ও সারাংশ

  • সুতরাং, ব্যবহারকারীরা যেখানেই যান না কেন, তাদের কাছে পৌঁছানো একটি অবিশ্বাস্য সুযোগ এবং মডুলার আর্কিটেকচার, দ্রুত পুনরাবৃত্তির জন্য ইন্টার্নাল টেস্টিং, ফর্ম ফ্যাক্টর কোয়ালিটি নির্দেশিকা অনুযায়ী ডিজাইন করা এবং আপনার স্টোর লিস্টিং অপ্টিমাইজ করার মাধ্যমে, আপনার অ্যাপকে আরও মসৃণভাবে লঞ্চ এবং পর্যালোচনা প্রক্রিয়ার জন্য প্রস্তুত করতে সাহায্য করবে।

  • আজ সময় দেওয়ার জন্য আপনাদের সকলকে ধন্যবাদ।

  • Google Play-তে আপনি যে অসাধারণ মাল্টি-ডিভাইস অভিজ্ঞতা নিয়ে আসবেন তা দেখার জন্য আমরা অধীর আগ্রহে অপেক্ষা করছি।

কোড

কোড স্নিপেট

"অ্যাপ আর্কিটেকচার ও প্যাকেজিং" ভিডিওর 04:12-এ Kotlin Script স্নিপেট
...

rootProject.name = "MultiFormFactorApp"

// Define modules for each form factor
include(":app:automotive")
include(":app:mobile")
include(":core:network")
include(":data:books")
include(":data:reviews")
include(":feature:home")
include(":feature:player")
include(":feature:reviews")
"Android TV অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকা" ভিডিওর ১০:০২-এ XML স্নিপেট
<application ...>
...
<activity
    android:name="com.example.TvActivity"
    android:label="@string/app_name"
    android:theme="@style/Theme.Leanback">
    <intent-filter>
      <action android:name=
           "android.intent.action.MAIN" />
      <category android:name=
           "Android.intent.category.
            LEANBACK_LAUNCHER" />
    </intent-filter>
  </activity>
</application>
"Wear OS অ্যাপ কোয়ালিটি সংক্রান্ত নির্দেশিকা" ভিডিওর 13:22-এ Kotlin স্নিপেট
@Composable
fun MyText() {
  Text(
    text = stringResource(R.string.compose_for_wear_os),
    modifier = Modifier.fillMaxWidth(),
    textAlign = TextAlign.Center,
    style = MaterialTheme.typography.titleLarge
  )
}