Google Play এর লক্ষ্য API স্তরের প্রয়োজনীয়তা পূরণ করুন

আপনি যখন একটি APK আপলোড করবেন, তখন এটি অবশ্যই Google Play এর লক্ষ্য API স্তরের প্রয়োজনীয়তা পূরণ করবে।

31 আগস্ট 2024 থেকে শুরু হচ্ছে:

  • নতুন অ্যাপ এবং অ্যাপ আপডেটগুলিকে অবশ্যই Android 14 (API লেভেল 34) বা উচ্চতরকে Google Play-তে জমা দিতে হবে; Wear OS এবং Android TV অ্যাপগুলি ব্যতীত, যেগুলি অবশ্যই Android 13 (API স্তর 33) বা উচ্চতরকে টার্গেট করবে৷
  • বিদ্যমান অ্যাপগুলিকে অবশ্যই Android 13 (API লেভেল 33) বা উচ্চতর টার্গেট করতে হবে যাতে আপনার অ্যাপের টার্গেট API লেভেলের চেয়ে বেশি Android OS চালিত ডিভাইসগুলিতে নতুন ব্যবহারকারীদের জন্য উপলব্ধ থাকে। যে অ্যাপগুলি Android 12 (API লেভেল 31) বা তার নিচের (Android 10 (API লেভেল 29) বা Wear OS এবং Android 11 (API লেভেল 30) বা Android TV-এর জন্য কম, শুধুমাত্র Android OS চালিত ডিভাইসগুলিতে পাওয়া যাবে যেগুলি আপনার অ্যাপের টার্গেট API লেভেলের সমান বা তার চেয়ে কম।

আপনার অ্যাপ আপডেট করার জন্য আরও সময়ের প্রয়োজন হলে আপনি 1 নভেম্বর, 2024 পর্যন্ত এক্সটেনশনের অনুরোধ করতে পারবেন। আপনি এই বছরের শেষের দিকে Play Console-এ আপনার অ্যাপের এক্সটেনশন ফর্মগুলি অ্যাক্সেস করতে সক্ষম হবেন।

এই প্রয়োজনীয়তাগুলির ব্যতিক্রমগুলির মধ্যে রয়েছে:

  • স্থায়ীভাবে ব্যক্তিগত অ্যাপ যা একটি নির্দিষ্ট প্রতিষ্ঠানের ব্যবহারকারীদের জন্য সীমাবদ্ধ এবং শুধুমাত্র অভ্যন্তরীণ বিতরণের উদ্দেশ্যে।
  • অ্যাপ্লিকেশানগুলি যেগুলি Android Automotive OS কে লক্ষ্য করে বা Android Automotive OS কে লক্ষ্য করে APK সহ প্যাকেজ করা হয়৷

কেন নতুন SDK টার্গেট?

প্রতিটি নতুন অ্যান্ড্রয়েড সংস্করণ এমন পরিবর্তনগুলি প্রবর্তন করে যা নিরাপত্তা এবং কর্মক্ষমতা উন্নতি নিয়ে আসে এবং অ্যান্ড্রয়েড ব্যবহারকারীর অভিজ্ঞতা বাড়ায়৷ এই পরিবর্তনগুলির মধ্যে কিছু শুধুমাত্র সেই অ্যাপগুলির ক্ষেত্রে প্রযোজ্য যা স্পষ্টভাবে তাদের targetSdkVersion ম্যানিফেস্ট অ্যাট্রিবিউটের মাধ্যমে সমর্থন ঘোষণা করে (এটি টার্গেট API স্তর হিসাবেও পরিচিত)৷

একটি সাম্প্রতিক API স্তর লক্ষ্য করার জন্য আপনার অ্যাপটি কনফিগার করা নিশ্চিত করে যে ব্যবহারকারীরা এই উন্নতিগুলি থেকে উপকৃত হতে পারেন, যখন আপনার অ্যাপ এখনও পুরানো Android সংস্করণে চলতে পারে। সাম্প্রতিক API স্তরকে লক্ষ্য করে আপনার অ্যাপটিকে আপনার ব্যবহারকারীদের খুশি করার জন্য প্ল্যাটফর্মের সর্বশেষ বৈশিষ্ট্যগুলির সুবিধা নেওয়ার অনুমতি দেয়৷ উপরন্তু, অ্যান্ড্রয়েড 10 (এপিআই লেভেল 29) অনুসারে, ব্যবহারকারীরা একটি সতর্কতা দেখতে পান যখন তারা প্রথমবার একটি অ্যাপ চালু করেন যদি অ্যাপটি Android 5.1 (API স্তর 22) বা তার নিচের দিকে লক্ষ্য করে।

এই দস্তাবেজটি Google Play প্রয়োজনীয়তা পূরণের জন্য আপনার লক্ষ্য API স্তর আপডেট করার জন্য আপনার জানা দরকার এমন গুরুত্বপূর্ণ পয়েন্টগুলি হাইলাইট করে৷ আপনি কোন সংস্করণে স্থানান্তরিত হচ্ছেন তার উপর নির্ভর করে নিম্নলিখিত বিভাগে নির্দেশাবলী দেখুন।

Android 12 এবং উচ্চতর (API স্তর 31) থেকে আরও সাম্প্রতিক সংস্করণে স্থানান্তর করুন

অ্যান্ড্রয়েডের আরও সাম্প্রতিক সংস্করণ লক্ষ্য করতে আপনার অ্যাপ আপডেট করতে, প্রাসঙ্গিক আচরণ পরিবর্তনের তালিকা অনুসরণ করুন:

Android 11 (API স্তর 30) থেকে Android 12 (API স্তর 31) এ স্থানান্তরিত করুন

নিরাপত্তা এবং অনুমতি

  • ব্লুটুথ : আপনাকে অবশ্যই BLUETOOTH এবং BLUETOOTH_ADMIN অনুমতিগুলির জন্য BLUETOOTH_SCAN , BLUETOOTH_ADVERTISE , বা BLUETOOTH_CONNECT অনুমতিগুলির সাথে ঘোষণা প্রতিস্থাপন করতে হবে৷ ব্লুটুথ অপারেশনের জন্য আপনাকে আর LOCATION রানটাইম অনুমতির অনুরোধ করতে হবে না।
  • অবস্থান: ব্যবহারকারীরা শুধুমাত্র আনুমানিক অবস্থানের তথ্য পুনরুদ্ধার করার জন্য অ্যাপ্লিকেশনগুলিকে অনুরোধ করতে পারে৷ আপনি যে কোনো সময় ACCESS_FINE_LOCATION অনুরোধ করার জন্য আপনাকে অবশ্যই ACCESS_COARSE_LOCATION অনুমতির অনুরোধ করতে হবে।
  • হাইবারনেশন: অ্যাপগুলিকে হাইবারনেশন মোডে রাখা হতে পারে যদি সেগুলি নির্দিষ্ট সময়ের মধ্যে ব্যবহার না করা হয়। হাইবারনেশন মোডে আপনার অ্যাপের রানটাইম অনুমতি এবং ক্যাশে রিসেট করা হয় এবং আপনি চাকরি বা সতর্কতা চালাতে পারবেন না। আপনি আপনার অ্যাপের হাইবারনেশন স্ট্যাটাস চেক করতে পারেন।
  • মুলতুবি অভিপ্রায় পরিবর্তনযোগ্যতা : আপনাকে অবশ্যই আপনার অ্যাপ তৈরি করা প্রতিটি PendingIntent বস্তুর পরিবর্তনযোগ্যতা নির্দিষ্ট করতে হবে।

ব্যবহারকারীর অভিজ্ঞতা

  • কাস্টম বিজ্ঞপ্তি : কাস্টম বিষয়বস্তু দর্শন সহ বিজ্ঞপ্তিগুলি আর সম্পূর্ণ বিজ্ঞপ্তি এলাকা ব্যবহার করবে না; পরিবর্তে, সিস্টেমটি একটি আদর্শ টেমপ্লেট প্রয়োগ করে। এই টেমপ্লেটটি নিশ্চিত করে যে কাস্টম বিজ্ঞপ্তিগুলি সমস্ত রাজ্যে অন্যান্য বিজ্ঞপ্তিগুলির মতো একই সজ্জা রয়েছে৷ এই আচরণটি Notification.DecoratedCustomViewStyle এর আচরণের সাথে প্রায় অভিন্ন।
  • অ্যান্ড্রয়েড অ্যাপ লিঙ্ক যাচাইকরণের পরিবর্তন : অ্যান্ড্রয়েড অ্যাপ লিঙ্ক যাচাইকরণ ব্যবহার করার সময়, নিশ্চিত করুন যে আপনার অভিপ্রায় ফিল্টারগুলি ব্রাউজযোগ্য বিভাগ অন্তর্ভুক্ত করে এবং HTTPS স্কিম সমর্থন করে।

কর্মক্ষমতা

  • ফোরগ্রাউন্ড পরিষেবা লঞ্চ বিধিনিষেধ : Android 12 বা উচ্চতরকে টার্গেট করতে, কিছু বিশেষ ক্ষেত্রে ছাড়া আপনার অ্যাপটি ব্যাকগ্রাউন্ডে চলাকালীন ফোরগ্রাউন্ড পরিষেবাগুলি শুরু করতে পারে না। যদি একটি অ্যাপ ব্যাকগ্রাউন্ডে চলাকালীন একটি ফোরগ্রাউন্ড পরিষেবা শুরু করার চেষ্টা করে, একটি ব্যতিক্রম ঘটে (কিছু বিশেষ ক্ষেত্রে বাদে)।

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

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

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

Android 12 (API স্তর 31) টার্গেট করা অ্যাপগুলিকে প্রভাবিত করে এমন পরিবর্তনগুলির সম্পূর্ণ সেট দেখুন৷

অ্যান্ড্রয়েড 11 (API লেভেল 30) এর চেয়ে কম থেকে মাইগ্রেট করুন

Android এর যে সংস্করণ থেকে আপনি স্থানান্তরিত হবেন সেটি নির্বাচন করুন:

Android 5 এ স্থানান্তর করুন (API স্তর 21)

আপনার অ্যাপ এই রিলিজে প্রবর্তিত পরিবর্তনগুলির জন্য দায়ী কিনা তা নিশ্চিত করতে নিম্নলিখিত প্রতিটি রিলিজের জন্য সংশ্লিষ্ট আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন:

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

Android 6 (API স্তর 23) এ স্থানান্তরিত করুন

নিম্নলিখিত বিবেচনাগুলি Android 6.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে এমন অ্যাপগুলিতে প্রযোজ্য:

  • রানটাইম অনুমতি

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

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

Android 6.0 (API স্তর 23) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

Android 7 (API স্তর 24) এ স্থানান্তরিত করুন

নিম্নলিখিত বিবেচনাগুলি Android 7.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে এমন অ্যাপগুলিতে প্রযোজ্য:

  • ডোজ এবং অ্যাপ স্ট্যান্ডবাই

    অপ্টিমাইজিং ফর ডোজ এবং অ্যাপ স্ট্যান্ডবাই- এ বর্ণিত আচরণের জন্য ডিজাইন, যা বিভিন্ন প্ল্যাটফর্ম রিলিজ জুড়ে প্রবর্তিত ক্রমবর্ধমান পরিবর্তনগুলিকে অন্তর্ভুক্ত করে।

    যখন একটি ডিভাইস ডোজ এবং অ্যাপ স্ট্যান্ডবাই মোডে থাকে, তখন সিস্টেমটি নিম্নরূপ আচরণ করে:

    • নেটওয়ার্ক অ্যাক্সেস সীমাবদ্ধ করে
    • অ্যালার্ম, সিঙ্ক এবং কাজ স্থগিত করে
    • GPS এবং Wi-Fi স্ক্যান সীমাবদ্ধ করে
    • সাধারণ-অগ্রাধিকার Firebase ক্লাউড মেসেজিং বার্তা সীমাবদ্ধ করে।
  • অনুমতি পরিবর্তন

    • সিস্টেমটি অ্যাপের ব্যক্তিগত ডিরেক্টরিতে অ্যাক্সেস সীমাবদ্ধ করে।
    • আপনার অ্যাপের বাইরে একটি file:// URI প্রকাশ করলে একটি FileUriExposedException ট্রিগার হয়। আপনার অ্যাপের বাইরে ফাইল শেয়ার করার প্রয়োজন হলে, FileProvider প্রয়োগ করুন
  • সিস্টেমটি নন-এনডিকে লাইব্রেরির সাথে লিঙ্ক করা নিষিদ্ধ করে

Android 7.0 (API স্তর 24) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

Android 8 (API স্তর 26) এ স্থানান্তরিত করুন

নিম্নলিখিত বিবেচনাগুলি Android 8.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে এমন অ্যাপগুলিতে প্রযোজ্য:

  • ব্যাকগ্রাউন্ড এক্সিকিউশন লিমিট
    • সিস্টেমটি অগ্রভাগে চলমান না এমন অ্যাপগুলির জন্য পরিষেবাগুলিকে সীমাবদ্ধ করে৷
    • অন্তর্নিহিত সম্প্রচার
      • অন্তর্নিহিত সম্প্রচার সীমাবদ্ধ। ব্যাকগ্রাউন্ড ইভেন্ট পরিচালনার বিষয়ে তথ্যের জন্য, JobScheduler API-এর ডকুমেন্টেশন দেখুন।
    • পটভূমি অবস্থান সীমা
      • ব্যাকগ্রাউন্ডে চলমান অ্যাপগুলির অবস্থান ডেটাতে সীমিত অ্যাক্সেস রয়েছে৷
  • বিজ্ঞপ্তি চ্যানেল
    • আপনার প্রতি-চ্যানেল ভিত্তিতে বিজ্ঞপ্তি বাধা বৈশিষ্ট্য সংজ্ঞায়িত করা উচিত।
    • বিজ্ঞপ্তিগুলি প্রদর্শিত হওয়ার জন্য আপনাকে অবশ্যই একটি চ্যানেলে বিজ্ঞপ্তিগুলি বরাদ্দ করতে হবে৷
    • প্ল্যাটফর্মের এই সংস্করণটি NotificationCompat.Builder সমর্থন করে।
  • গোপনীয়তা
    • অ্যাপ্লিকেশান সাইনিং কী প্রতি ANDROID_ID স্কোপ করা হয়েছে৷

অ্যান্ড্রয়েড 8.0 (API স্তর 26) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

Android 8 (API 26) থেকে Android 9 (API 28) এ স্থানান্তরিত করুন

Android 9.0 (API স্তর 28) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, আচরণের পরিবর্তনগুলি দেখুন।

Android 9 (API স্তর 28) থেকে Android 10 (API স্তর 29) এ স্থানান্তরিত করুন

  • একটি পূর্ণ-স্ক্রীন অভিপ্রায় সঙ্গে বিজ্ঞপ্তি
    • স্বাভাবিক অনুমতির অনুরোধ করতে হবে USE_FULL_SCREEN_INTENT (রানটাইম অনুমতি নয়)।
  • ফোল্ডেবল এবং বড় পর্দার ডিভাইসগুলির জন্য সমর্থন
    • একাধিক ক্রিয়াকলাপ এখন একই সময়ে "পুনরায় শুরু" অবস্থায় থাকতে পারে, তবে শুধুমাত্র একটিরই ফোকাস রয়েছে৷
      • এই পরিবর্তনটি onResume() এবং onPause() আচরণকে প্রভাবিত করে।
      • "টপমোস্ট রিজুমেড" এর নতুন লাইফসাইকেল ধারণা যা onTopResumedActivityChanged() এ সদস্যতা নেওয়ার মাধ্যমে সনাক্ত করা যেতে পারে।
        • শুধুমাত্র একটি কার্যকলাপ "সর্বোচ্চ পুনঃসূচনা" হতে পারে।
    • resizeableActivity false সেট করা হলে, অ্যাপগুলি অতিরিক্ত একটি minAspectRatio নির্দিষ্ট করতে পারে যা স্বয়ংক্রিয়ভাবে অ্যাপটিকে সংকীর্ণ অনুপাতের লেটারবক্স করে।
  • গোপনীয়তা পরিবর্তন
    • স্কোপড স্টোরেজ
      • বাহ্যিক সঞ্চয়স্থান অ্যাক্সেস শুধুমাত্র একটি অ্যাপ-নির্দিষ্ট ডিরেক্টরিতে এবং অ্যাপটি তৈরি করা নির্দিষ্ট ধরনের মিডিয়াতে সীমাবদ্ধ।
    • অ্যাপ্লিকেশানটি ব্যাকগ্রাউন্ডে থাকাকালীন অবস্থানে সীমাবদ্ধ অ্যাক্সেস, ACCESS_BACKGROUND_LOCATION অনুমতির প্রয়োজন৷
    • IMEI এবং সিরিয়াল নম্বরের মতো নন-রিসেটযোগ্য শনাক্তকারীগুলিতে সীমাবদ্ধ অ্যাক্সেস।
    • ACTIVITY_RECOGNITION অনুমতির প্রয়োজন, ব্যবহারকারীর ধাপ সংখ্যার মতো শারীরিক কার্যকলাপের তথ্যে সীমাবদ্ধ অ্যাক্সেস।
    • কিছু টেলিফোনি, ব্লুটুথ, এবং ওয়াই-ফাই API- এ সীমাবদ্ধ অ্যাক্সেসের জন্য ACCESS_FINE_LOCATION অনুমতি প্রয়োজন৷
    • Wi-Fi সেটিংসে সীমাবদ্ধ অ্যাক্সেস

Android 10 (API স্তর 29) থেকে Android 11 (API স্তর 30) এ স্থানান্তরিত করুন

অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

পূর্ববর্তী বিভাগে নির্দেশাবলী অনুসরণ করে API 31-এ আপডেট করা চালিয়ে যান।

আপনার অ্যাপসকে আধুনিক করুন

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

  • ক্যামেরা ব্যবহার করে সবচেয়ে বেশি সুবিধা পেতে CameraX ব্যবহার করার কথা বিবেচনা করুন, যা বিটাতে রয়েছে।
  • জেটপ্যাক উপাদানগুলি ব্যবহার করুন আপনাকে সর্বোত্তম অনুশীলনগুলি অনুসরণ করতে সাহায্য করতে, আপনাকে বয়লারপ্লেট কোড লেখা থেকে মুক্ত করতে এবং জটিল কাজগুলিকে সহজ করতে যাতে আপনি আপনার যত্নশীল কোডের উপর ফোকাস করতে পারেন৷
  • দ্রুত এবং কম কোড সহ আরও ভাল অ্যাপ লিখতে Kotlin ব্যবহার করুন।
  • আপনি গোপনীয়তার প্রয়োজনীয়তা এবং সর্বোত্তম অনুশীলনগুলি অনুসরণ করছেন তা নিশ্চিত করুন।
  • আপনার অ্যাপে গাঢ় থিম সমর্থন যোগ করুন।
  • আপনার অ্যাপ্লিকেশানগুলিতে অঙ্গভঙ্গি নেভিগেশন সমর্থন যোগ করুন।
  • Google ক্লাউড মেসেজিং (GCM) থেকে Firebase ক্লাউড মেসেজিংয়ের সর্বশেষ সংস্করণে আপনার অ্যাপ স্থানান্তর করুন
  • উন্নত উইন্ডো ব্যবস্থাপনার সুবিধা নিন।
    • হার্ডওয়্যারের সাম্প্রতিক অগ্রগতির সুবিধা নিতে বৃহত্তর অনুপাত (16:9-এর বেশি) সমর্থন করুন। নিশ্চিত করুন যে আপনার অ্যাপটি উপলব্ধ স্ক্রীন স্পেস পূরণ করতে আকার পরিবর্তন করে। শুধুমাত্র একটি শেষ অবলম্বন হিসাবে একটি সর্বাধিক আকৃতির অনুপাত ঘোষণা করুন৷ সর্বাধিক আকৃতির অনুপাত সম্পর্কে আরও তথ্যের জন্য, সীমাবদ্ধ স্ক্রীন সমর্থন ঘোষণা করুন দেখুন।
    • আপনার অ্যাপের উৎপাদনশীলতা বাড়াতে এবং একাধিক ডিসপ্লে পরিচালনা করতে মাল্টি-উইন্ডো সমর্থন যোগ করুন।
    • যদি একটি দুর্দান্ত মিনিমাইজড অ্যাপ অভিজ্ঞতা ব্যবহারকারীর অভিজ্ঞতাকে উন্নত করে, তাহলে Picture-in-Picture- এর জন্য সমর্থন যোগ করুন।
      • ডিসপ্লে কাটআউট সহ ডিভাইসগুলির জন্য অপ্টিমাইজ করুন।
      • স্ট্যাটাস বারের উচ্চতা অনুমান করবেন না। পরিবর্তে, WindowInsets এবং View.OnApplyWindowInsetsListener ব্যবহার করুন। আরও জানতে, droidcon NYC 2017 ভিডিওটি দেখুন। একটি ব্যাখ্যা জন্য
      • অনুমান করবেন না যে অ্যাপটিতে পুরো উইন্ডো রয়েছে। পরিবর্তে, View.getLocationInWindow() ব্যবহার করে এর অবস্থান নিশ্চিত করুন, View.getLocationOnScreen() নয়। * MotionEvent পরিচালনা করার সময়, MotionEvent.getX() এবং MotionEvent.getY() ব্যবহার করুন, MotionEvent.getRawX() , MotionEvent.getRawY() নয়।

আপনার SDK এবং লাইব্রেরি চেক করুন এবং আপডেট করুন

নিশ্চিত করুন যে আপনার তৃতীয় পক্ষের SDK নির্ভরতা API 31 সমর্থন করে: কিছু SDK প্রদানকারী তাদের ম্যানিফেস্টে এটি প্রকাশ করে; অন্যদের অতিরিক্ত তদন্তের প্রয়োজন হবে। আপনি যদি এমন একটি SDK ব্যবহার করেন যা API 31 সমর্থন করে না, তাহলে সমস্যাটি সমাধান করতে SDK প্রদানকারীর সাথে কাজ করাকে অগ্রাধিকার দিন৷

অতিরিক্তভাবে, মনে রাখবেন যে আপনার অ্যাপ বা গেমের targetSdkVersion ব্যক্তিগত অ্যান্ড্রয়েড প্ল্যাটফর্ম লাইব্রেরিতে অ্যাক্সেস সীমাবদ্ধ করতে পারে; বিস্তারিত জানার জন্য প্ল্যাটফর্ম লাইব্রেরির সাথে লিঙ্ক করা NDK অ্যাপস দেখুন।

আপনি যে Android সাপোর্ট লাইব্রেরি ব্যবহার করছেন তার সংস্করণে বিদ্যমান থাকতে পারে এমন যেকোনো বিধিনিষেধও আপনার যাচাই করা উচিত। বরাবরের মতো, আপনাকে অবশ্যই Android সাপোর্ট লাইব্রেরির প্রধান সংস্করণ এবং আপনার অ্যাপের compileSdkVersion মধ্যে সামঞ্জস্যতা নিশ্চিত করতে হবে।

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

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

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

  • যে আপনার অ্যাপটি এপিআই 29 এ কোন ত্রুটি বা সতর্কতা ছাড়াই কম্পাইল করে।
  • যে ক্ষেত্রে ব্যবহারকারী অনুমতির অনুরোধ প্রত্যাখ্যান করে এবং ব্যবহারকারীকে অনুমতির জন্য অনুরোধ করে সেই ক্ষেত্রে আপনার অ্যাপের একটি কৌশল রয়েছে। এটি করতে:

    • আপনার অ্যাপের অ্যাপ তথ্য স্ক্রিনে যান এবং প্রতিটি অনুমতি অক্ষম করুন।
    • অ্যাপটি খুলুন এবং কোন ক্র্যাশ নিশ্চিত করুন।
      • মূল ব্যবহারের ক্ষেত্রে পরীক্ষা করুন এবং প্রয়োজনীয় অনুমতিগুলি পুনরায় অনুরোধ করা হয়েছে তা নিশ্চিত করুন।
  • প্রত্যাশিত ফলাফল এবং কোন ত্রুটি সহ Doze পরিচালনা করে।

    • adb ব্যবহার করে, আপনার অ্যাপটি চলাকালীন আপনার পরীক্ষা ডিভাইসটিকে Doze-এ রাখুন।
      • ফায়ারবেস ক্লাউড মেসেজিং বার্তাগুলিকে ট্রিগার করে এমন কোনও ব্যবহারের ক্ষেত্রে পরীক্ষা করুন৷
      • অ্যালার্ম বা চাকরি ব্যবহার করে এমন কোনো ব্যবহারের ক্ষেত্রে পরীক্ষা করুন।
      • ব্যাকগ্রাউন্ড পরিষেবার উপর কোন নির্ভরতা দূর করুন।
    • অ্যাপ স্ট্যান্ডবাই-এ আপনার অ্যাপ সেট করুন
      • ফায়ারবেস ক্লাউড মেসেজিং বার্তাগুলিকে ট্রিগার করে এমন কোনও ব্যবহারের ক্ষেত্রে পরীক্ষা করুন৷
      • অ্যালার্ম ব্যবহার করে এমন কোনো ব্যবহারের ক্ষেত্রে পরীক্ষা করুন।
  • নতুন ছবি/ভিডিও তোলা হচ্ছে

    • আপনার অ্যাপটি সীমাবদ্ধ ACTION_NEW_PICTURE এবং ACTION_NEW_VIDEO সম্প্রচার সঠিকভাবে পরিচালনা করে কিনা পরীক্ষা করুন (অর্থাৎ, JobScheduler চাকরিতে সরানো হয়েছে)।
    • এই ইভেন্টগুলির উপর নির্ভর করে এমন কোনও সমালোচনামূলক ব্যবহারের ক্ষেত্রে এখনও কাজ করে কিনা তা নিশ্চিত করুন।
  • অন্য অ্যাপের সাথে ফাইল শেয়ারিং হ্যান্ডেল করে - অন্য কোনও অ্যাপের সাথে ফাইল ডেটা শেয়ার করে এমন কোনও ব্যবহারের ক্ষেত্রে পরীক্ষা করুন (এমনকি একই ডেভেলপারের দ্বারা অন্য কোনও অ্যাপ)

    • পরীক্ষা করুন বিষয়বস্তু অন্য অ্যাপে দৃশ্যমান এবং ক্র্যাশ ট্রিগার করে না।

আরও তথ্য

Google Play কনসোলে ইমেলগুলি বেছে নিন যাতে আমরা আপনাকে Android এবং Google Play থেকে আমাদের মাসিক অংশীদার নিউজলেটার সহ গুরুত্বপূর্ণ আপডেট এবং ঘোষণা পাঠাতে পারি।

,

আপনি যখন একটি APK আপলোড করবেন, তখন এটি অবশ্যই Google Play এর লক্ষ্য API স্তরের প্রয়োজনীয়তা পূরণ করবে।

31 আগস্ট 2024 থেকে শুরু হচ্ছে:

  • নতুন অ্যাপ এবং অ্যাপ আপডেটগুলিকে অবশ্যই Android 14 (API লেভেল 34) বা উচ্চতরকে Google Play-তে জমা দিতে হবে; Wear OS এবং Android TV অ্যাপগুলি ব্যতীত, যেগুলি অবশ্যই Android 13 (API স্তর 33) বা উচ্চতরকে টার্গেট করবে৷
  • বিদ্যমান অ্যাপগুলিকে অবশ্যই Android 13 (API লেভেল 33) বা উচ্চতর টার্গেট করতে হবে যাতে আপনার অ্যাপের টার্গেট API লেভেলের চেয়ে বেশি Android OS চালিত ডিভাইসগুলিতে নতুন ব্যবহারকারীদের জন্য উপলব্ধ থাকে। যে অ্যাপগুলি Android 12 (API লেভেল 31) বা তার নিচের (Android 10 (API লেভেল 29) বা Wear OS এবং Android 11 (API লেভেল 30) বা Android TV-এর জন্য কম, শুধুমাত্র Android OS চালিত ডিভাইসগুলিতে পাওয়া যাবে যেগুলি আপনার অ্যাপের টার্গেট API লেভেলের সমান বা তার চেয়ে কম।

আপনার অ্যাপ আপডেট করার জন্য আরও সময়ের প্রয়োজন হলে আপনি 1 নভেম্বর, 2024 পর্যন্ত এক্সটেনশনের অনুরোধ করতে পারবেন। আপনি এই বছরের শেষের দিকে Play Console-এ আপনার অ্যাপের এক্সটেনশন ফর্মগুলি অ্যাক্সেস করতে সক্ষম হবেন।

এই প্রয়োজনীয়তাগুলির ব্যতিক্রমগুলির মধ্যে রয়েছে:

  • স্থায়ীভাবে ব্যক্তিগত অ্যাপ যা একটি নির্দিষ্ট প্রতিষ্ঠানের ব্যবহারকারীদের জন্য সীমাবদ্ধ এবং শুধুমাত্র অভ্যন্তরীণ বিতরণের উদ্দেশ্যে।
  • অ্যাপ্লিকেশানগুলি যেগুলি Android Automotive OS কে লক্ষ্য করে বা Android Automotive OS কে লক্ষ্য করে APK সহ প্যাকেজ করা হয়৷

কেন নতুন SDK টার্গেট?

প্রতিটি নতুন অ্যান্ড্রয়েড সংস্করণ এমন পরিবর্তনগুলি প্রবর্তন করে যা নিরাপত্তা এবং কর্মক্ষমতা উন্নতি নিয়ে আসে এবং অ্যান্ড্রয়েড ব্যবহারকারীর অভিজ্ঞতা বাড়ায়৷ এই পরিবর্তনগুলির মধ্যে কিছু শুধুমাত্র সেই অ্যাপগুলির ক্ষেত্রে প্রযোজ্য যা স্পষ্টভাবে তাদের targetSdkVersion ম্যানিফেস্ট অ্যাট্রিবিউটের মাধ্যমে সমর্থন ঘোষণা করে (এটি টার্গেট API স্তর হিসাবেও পরিচিত)৷

একটি সাম্প্রতিক API স্তর লক্ষ্য করার জন্য আপনার অ্যাপটি কনফিগার করা নিশ্চিত করে যে ব্যবহারকারীরা এই উন্নতিগুলি থেকে উপকৃত হতে পারেন, যখন আপনার অ্যাপ এখনও পুরানো Android সংস্করণে চলতে পারে। সাম্প্রতিক API স্তরকে লক্ষ্য করে আপনার অ্যাপটিকে আপনার ব্যবহারকারীদের খুশি করার জন্য প্ল্যাটফর্মের সর্বশেষ বৈশিষ্ট্যগুলির সুবিধা নেওয়ার অনুমতি দেয়৷ উপরন্তু, অ্যান্ড্রয়েড 10 (এপিআই লেভেল 29) অনুসারে, ব্যবহারকারীরা একটি সতর্কতা দেখতে পান যখন তারা প্রথমবার একটি অ্যাপ চালু করেন যদি অ্যাপটি Android 5.1 (API স্তর 22) বা তার নিচের দিকে লক্ষ্য করে।

এই দস্তাবেজটি Google Play প্রয়োজনীয়তা পূরণের জন্য আপনার লক্ষ্য API স্তর আপডেট করার জন্য আপনার জানা দরকার এমন গুরুত্বপূর্ণ পয়েন্টগুলি হাইলাইট করে৷ আপনি কোন সংস্করণে স্থানান্তরিত হচ্ছেন তার উপর নির্ভর করে নিম্নলিখিত বিভাগে নির্দেশাবলী দেখুন।

Android 12 এবং উচ্চতর (API স্তর 31) থেকে আরও সাম্প্রতিক সংস্করণে স্থানান্তর করুন

অ্যান্ড্রয়েডের আরও সাম্প্রতিক সংস্করণ লক্ষ্য করতে আপনার অ্যাপ আপডেট করতে, প্রাসঙ্গিক আচরণ পরিবর্তনের তালিকা অনুসরণ করুন:

Android 11 (API স্তর 30) থেকে Android 12 (API স্তর 31) এ স্থানান্তরিত করুন

নিরাপত্তা এবং অনুমতি

  • ব্লুটুথ : আপনাকে অবশ্যই BLUETOOTH এবং BLUETOOTH_ADMIN অনুমতিগুলির জন্য BLUETOOTH_SCAN , BLUETOOTH_ADVERTISE , বা BLUETOOTH_CONNECT অনুমতিগুলির সাথে ঘোষণা প্রতিস্থাপন করতে হবে৷ ব্লুটুথ অপারেশনের জন্য আপনাকে আর LOCATION রানটাইম অনুমতির অনুরোধ করতে হবে না।
  • অবস্থান: ব্যবহারকারীরা শুধুমাত্র আনুমানিক অবস্থানের তথ্য পুনরুদ্ধার করার জন্য অ্যাপ্লিকেশনগুলিকে অনুরোধ করতে পারে৷ আপনি যে কোনো সময় ACCESS_FINE_LOCATION অনুরোধ করার জন্য আপনাকে অবশ্যই ACCESS_COARSE_LOCATION অনুমতির অনুরোধ করতে হবে।
  • হাইবারনেশন: অ্যাপগুলিকে হাইবারনেশন মোডে রাখা হতে পারে যদি সেগুলি নির্দিষ্ট সময়ের মধ্যে ব্যবহার না করা হয়। হাইবারনেশন মোডে আপনার অ্যাপের রানটাইম অনুমতি এবং ক্যাশে রিসেট করা হয় এবং আপনি চাকরি বা সতর্কতা চালাতে পারবেন না। আপনি আপনার অ্যাপের হাইবারনেশন স্ট্যাটাস চেক করতে পারেন।
  • মুলতুবি অভিপ্রায় পরিবর্তনযোগ্যতা : আপনাকে অবশ্যই আপনার অ্যাপ তৈরি করা প্রতিটি PendingIntent বস্তুর পরিবর্তনযোগ্যতা নির্দিষ্ট করতে হবে।

ব্যবহারকারীর অভিজ্ঞতা

  • কাস্টম বিজ্ঞপ্তি : কাস্টম বিষয়বস্তু দর্শন সহ বিজ্ঞপ্তিগুলি আর সম্পূর্ণ বিজ্ঞপ্তি এলাকা ব্যবহার করবে না; পরিবর্তে, সিস্টেমটি একটি আদর্শ টেমপ্লেট প্রয়োগ করে। এই টেমপ্লেটটি নিশ্চিত করে যে কাস্টম বিজ্ঞপ্তিগুলি সমস্ত রাজ্যে অন্যান্য বিজ্ঞপ্তিগুলির মতো একই সজ্জা রয়েছে৷ এই আচরণটি Notification.DecoratedCustomViewStyle এর আচরণের সাথে প্রায় অভিন্ন।
  • অ্যান্ড্রয়েড অ্যাপ লিঙ্ক যাচাইকরণের পরিবর্তন : অ্যান্ড্রয়েড অ্যাপ লিঙ্ক যাচাইকরণ ব্যবহার করার সময়, নিশ্চিত করুন যে আপনার অভিপ্রায় ফিল্টারগুলি ব্রাউজযোগ্য বিভাগ অন্তর্ভুক্ত করে এবং HTTPS স্কিম সমর্থন করে।

কর্মক্ষমতা

  • ফোরগ্রাউন্ড পরিষেবা লঞ্চ বিধিনিষেধ : Android 12 বা উচ্চতরকে টার্গেট করতে, কিছু বিশেষ ক্ষেত্রে ছাড়া আপনার অ্যাপটি ব্যাকগ্রাউন্ডে চলাকালীন ফোরগ্রাউন্ড পরিষেবাগুলি শুরু করতে পারে না। যদি একটি অ্যাপ ব্যাকগ্রাউন্ডে চলাকালীন একটি ফোরগ্রাউন্ড পরিষেবা শুরু করার চেষ্টা করে, একটি ব্যতিক্রম ঘটে (কিছু বিশেষ ক্ষেত্রে বাদে)।

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

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

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

Android 12 (API স্তর 31) টার্গেট করা অ্যাপগুলিকে প্রভাবিত করে এমন পরিবর্তনগুলির সম্পূর্ণ সেট দেখুন৷

অ্যান্ড্রয়েড 11 (API লেভেল 30) এর চেয়ে কম থেকে মাইগ্রেট করুন

Android এর যে সংস্করণ থেকে আপনি স্থানান্তরিত হবেন সেটি নির্বাচন করুন:

Android 5 এ স্থানান্তর করুন (API স্তর 21)

আপনার অ্যাপ এই রিলিজে প্রবর্তিত পরিবর্তনগুলির জন্য দায়ী কিনা তা নিশ্চিত করতে নিম্নলিখিত প্রতিটি রিলিজের জন্য সংশ্লিষ্ট আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন:

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

Android 6 (API স্তর 23) এ স্থানান্তরিত করুন

নিম্নলিখিত বিবেচনাগুলি Android 6.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে এমন অ্যাপগুলিতে প্রযোজ্য:

  • রানটাইম অনুমতি

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

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

Android 6.0 (API স্তর 23) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

Android 7 (API স্তর 24) এ স্থানান্তরিত করুন

নিম্নলিখিত বিবেচনাগুলি Android 7.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে এমন অ্যাপগুলিতে প্রযোজ্য:

  • ডোজ এবং অ্যাপ স্ট্যান্ডবাই

    অপ্টিমাইজিং ফর ডোজ এবং অ্যাপ স্ট্যান্ডবাই- এ বর্ণিত আচরণের জন্য ডিজাইন, যা বিভিন্ন প্ল্যাটফর্ম রিলিজ জুড়ে প্রবর্তিত ক্রমবর্ধমান পরিবর্তনগুলিকে অন্তর্ভুক্ত করে।

    যখন একটি ডিভাইস ডোজ এবং অ্যাপ স্ট্যান্ডবাই মোডে থাকে, তখন সিস্টেমটি নিম্নরূপ আচরণ করে:

    • নেটওয়ার্ক অ্যাক্সেস সীমাবদ্ধ করে
    • অ্যালার্ম, সিঙ্ক এবং কাজ স্থগিত করে
    • GPS এবং Wi-Fi স্ক্যান সীমাবদ্ধ করে
    • সাধারণ-অগ্রাধিকার Firebase ক্লাউড মেসেজিং বার্তা সীমাবদ্ধ করে।
  • অনুমতি পরিবর্তন

    • সিস্টেমটি অ্যাপের ব্যক্তিগত ডিরেক্টরিতে অ্যাক্সেস সীমাবদ্ধ করে।
    • আপনার অ্যাপের বাইরে একটি file:// URI প্রকাশ করলে একটি FileUriExposedException ট্রিগার হয়। আপনার অ্যাপের বাইরে ফাইল শেয়ার করার প্রয়োজন হলে, FileProvider প্রয়োগ করুন
  • সিস্টেমটি নন-এনডিকে লাইব্রেরির সাথে লিঙ্ক করা নিষিদ্ধ করে

Android 7.0 (API স্তর 24) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

Android 8 (API স্তর 26) এ স্থানান্তরিত করুন

নিম্নলিখিত বিবেচনাগুলি Android 8.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে এমন অ্যাপগুলিতে প্রযোজ্য:

  • ব্যাকগ্রাউন্ড এক্সিকিউশন লিমিট
    • সিস্টেমটি অগ্রভাগে চলমান না এমন অ্যাপগুলির জন্য পরিষেবাগুলিকে সীমাবদ্ধ করে৷
    • অন্তর্নিহিত সম্প্রচার
      • অন্তর্নিহিত সম্প্রচার সীমাবদ্ধ। ব্যাকগ্রাউন্ড ইভেন্ট পরিচালনার বিষয়ে তথ্যের জন্য, JobScheduler API-এর ডকুমেন্টেশন দেখুন।
    • পটভূমি অবস্থান সীমা
      • ব্যাকগ্রাউন্ডে চলমান অ্যাপগুলির অবস্থান ডেটাতে সীমিত অ্যাক্সেস রয়েছে৷
  • বিজ্ঞপ্তি চ্যানেল
    • আপনার প্রতি-চ্যানেল ভিত্তিতে বিজ্ঞপ্তি বাধা বৈশিষ্ট্য সংজ্ঞায়িত করা উচিত।
    • বিজ্ঞপ্তিগুলি প্রদর্শিত হওয়ার জন্য আপনাকে অবশ্যই একটি চ্যানেলে বিজ্ঞপ্তিগুলি বরাদ্দ করতে হবে৷
    • প্ল্যাটফর্মের এই সংস্করণটি NotificationCompat.Builder সমর্থন করে।
  • গোপনীয়তা
    • অ্যাপ্লিকেশান সাইনিং কী প্রতি ANDROID_ID স্কোপ করা হয়েছে৷

অ্যান্ড্রয়েড 8.0 (API স্তর 26) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তন পৃষ্ঠাটি দেখুন।

Android 8 (API 26) থেকে Android 9 (API 28) এ স্থানান্তরিত করুন

Android 9.0 (API স্তর 28) এ প্রবর্তিত পরিবর্তনগুলির একটি সম্পূর্ণ তালিকার জন্য, আচরণের পরিবর্তনগুলি দেখুন।

Android 9 (API স্তর 28) থেকে Android 10 (API স্তর 29) এ স্থানান্তরিত করুন

  • একটি পূর্ণ-স্ক্রীন অভিপ্রায় সঙ্গে বিজ্ঞপ্তি
    • স্বাভাবিক অনুমতির অনুরোধ করতে হবে USE_FULL_SCREEN_INTENT (রানটাইম অনুমতি নয়)।
  • ফোল্ডেবল এবং বড় পর্দার ডিভাইসগুলির জন্য সমর্থন
    • একাধিক ক্রিয়াকলাপ এখন একই সময়ে "পুনরায় শুরু" অবস্থায় থাকতে পারে, তবে শুধুমাত্র একটিরই ফোকাস রয়েছে৷
      • এই পরিবর্তনটি onResume() এবং onPause() আচরণকে প্রভাবিত করে।
      • "টপমোস্ট রিজুমেড" এর নতুন লাইফসাইকেল ধারণা যা onTopResumedActivityChanged() এ সদস্যতা নেওয়ার মাধ্যমে সনাক্ত করা যেতে পারে।
        • শুধুমাত্র একটি কার্যকলাপ "সর্বোচ্চ পুনঃসূচনা" হতে পারে।
    • resizeableActivity false সেট করা হলে, অ্যাপগুলি অতিরিক্ত একটি minAspectRatio নির্দিষ্ট করতে পারে যা স্বয়ংক্রিয়ভাবে অ্যাপটিকে সংকীর্ণ অনুপাতের লেটারবক্স করে।
  • গোপনীয়তা পরিবর্তন
    • স্কোপড স্টোরেজ
      • বাহ্যিক সঞ্চয়স্থান অ্যাক্সেস শুধুমাত্র একটি অ্যাপ-নির্দিষ্ট ডিরেক্টরিতে এবং অ্যাপটি তৈরি করা নির্দিষ্ট ধরনের মিডিয়াতে সীমাবদ্ধ।
    • অ্যাপ্লিকেশানটি ব্যাকগ্রাউন্ডে থাকাকালীন অবস্থানে সীমাবদ্ধ অ্যাক্সেস, ACCESS_BACKGROUND_LOCATION অনুমতির প্রয়োজন৷
    • IMEI এবং সিরিয়াল নম্বরের মতো নন-রিসেটযোগ্য শনাক্তকারীগুলিতে সীমাবদ্ধ অ্যাক্সেস।
    • ACTIVITY_RECOGNITION অনুমতির প্রয়োজন, ব্যবহারকারীর ধাপ সংখ্যার মতো শারীরিক কার্যকলাপের তথ্যে সীমাবদ্ধ অ্যাক্সেস।
    • কিছু টেলিফোনি, ব্লুটুথ, এবং ওয়াই-ফাই API- এ সীমাবদ্ধ অ্যাক্সেসের জন্য ACCESS_FINE_LOCATION অনুমতি প্রয়োজন৷
    • Wi-Fi সেটিংসে সীমাবদ্ধ অ্যাক্সেস

Android 10 (API স্তর 29) থেকে Android 11 (API স্তর 30) এ স্থানান্তরিত করুন

অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) এ প্রবর্তিত পরিবর্তনের বিস্তৃত তালিকার জন্য, আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

পূর্ববর্তী বিভাগের নির্দেশাবলী অনুসরণ করে এপিআই 31 এ আপডেট করা চালিয়ে যান।

আপনার অ্যাপ্লিকেশনগুলিকে আধুনিকীকরণ করুন

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

  • ক্যামেরাটি ব্যবহার করার জন্য সর্বাধিক তৈরি করার জন্য বিটাতে থাকা ক্যামেরাক্স ব্যবহার করার বিষয়টি বিবেচনা করুন।
  • আপনাকে সেরা অনুশীলনগুলি অনুসরণ করতে, আপনাকে বয়লারপ্লেট কোড লিখতে মুক্ত করতে এবং জটিল কাজগুলি সহজতর করতে সহায়তা করার জন্য জেটপ্যাক উপাদানগুলি ব্যবহার করুন যাতে আপনি আপনার যত্ন নেওয়া কোডটিতে মনোনিবেশ করতে পারেন।
  • আরও ভাল অ্যাপ্লিকেশনগুলি দ্রুত এবং কম কোড সহ লিখতে কোটলিন ব্যবহার করুন।
  • আপনি গোপনীয়তার প্রয়োজনীয়তা এবং সেরা অনুশীলনগুলি অনুসরণ করছেন তা নিশ্চিত করুন।
  • আপনার অ্যাপ্লিকেশনগুলিতে ডার্ক থিম সমর্থন যুক্ত করুন।
  • আপনার অ্যাপ্লিকেশনগুলিতে অঙ্গভঙ্গি নেভিগেশন সমর্থন যুক্ত করুন।
  • গুগল ক্লাউড মেসেজিং (জিসিএম) থেকে আপনার অ্যাপ্লিকেশনটি ফায়ারবেস ক্লাউড মেসেজিংয়ের সর্বশেষ সংস্করণে স্থানান্তর করুন
  • উন্নত উইন্ডো পরিচালনার সুবিধা নিন।
    • হার্ডওয়্যারে সাম্প্রতিক অগ্রগতির সুবিধা নিতে বৃহত্তর দিক অনুপাত (16: 9 এরও বেশি) সমর্থন করুন। নিশ্চিত করুন যে আপনার অ্যাপ্লিকেশনটি উপলব্ধ স্ক্রিনের স্থানটি পূরণ করতে পুনরায় পরিবর্তন করে। কেবলমাত্র শেষ রিসর্ট হিসাবে সর্বাধিক দিক অনুপাত ঘোষণা করুন। সর্বাধিক দিক অনুপাত সম্পর্কে আরও তথ্যের জন্য, সীমাবদ্ধ স্ক্রিন সমর্থন ঘোষণা করুন
    • আপনার অ্যাপ্লিকেশনটিকে উত্পাদনশীলতা বাড়াতে এবং একাধিক প্রদর্শন পরিচালনা করতে মাল্টি-উইন্ডো সমর্থন যুক্ত করুন।
    • যদি একটি দুর্দান্ত ন্যূনতম অ্যাপ্লিকেশন অভিজ্ঞতা ব্যবহারকারীর অভিজ্ঞতা উন্নত করে তবে চিত্র-ইন-চিত্রের জন্য সমর্থন যুক্ত করুন।

আপনার এসডিকে এবং গ্রন্থাগারগুলি পরীক্ষা করুন এবং আপডেট করুন

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

অতিরিক্তভাবে, নোট করুন যে আপনার অ্যাপ্লিকেশন বা গেমের targetSdkVersion বেসরকারী অ্যান্ড্রয়েড প্ল্যাটফর্ম লাইব্রেরিতে অ্যাক্সেসকে সীমাবদ্ধ করতে পারে; বিশদের জন্য প্ল্যাটফর্ম লাইব্রেরিতে সংযুক্ত এনডিকে অ্যাপ্লিকেশনগুলি দেখুন।

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

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

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

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

  • আপনার অ্যাপ্লিকেশনটি ত্রুটি বা সতর্কতা ছাড়াই 29 এপিআইতে সংকলন করে।
  • আপনার অ্যাপ্লিকেশনটির ক্ষেত্রে এমন একটি কৌশল রয়েছে যেখানে ব্যবহারকারী অনুমতি অনুরোধগুলি প্রত্যাখ্যান করে এবং ব্যবহারকারীকে অনুমতিের জন্য অনুরোধ করে। এটি করতে:

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

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

    • আপনার অ্যাপ্লিকেশনটি সীমাবদ্ধ ACTION_NEW_PICTURE এবং ACTION_NEW_VIDEO সম্প্রচারগুলি সঠিকভাবে পরিচালনা করে কিনা তা পরীক্ষা করে দেখুন (এটি হ'ল জবসচেডুলার জবসে স্থানান্তরিত)।
    • নিশ্চিত করুন যে এই ইভেন্টগুলির উপর নির্ভর করে এমন কোনও সমালোচনামূলক ব্যবহারের ক্ষেত্রে এখনও কাজ করে।
  • অন্যান্য অ্যাপ্লিকেশনগুলিতে ফাইলগুলি ভাগ করে নেওয়া ফাইলগুলি পরিচালনা করুন - অন্য কোনও অ্যাপ্লিকেশন (একই বিকাশকারী দ্বারা অন্য অ্যাপ্লিকেশন এমনকি অন্য অ্যাপ্লিকেশন) এর সাথে ফাইলের ডেটা ভাগ করে এমন কোনও ব্যবহারের ক্ষেত্রে পরীক্ষা করুন

    • অন্যান্য অ্যাপ্লিকেশনটিতে সামগ্রীটি দৃশ্যমান এবং ক্র্যাশগুলি ট্রিগার করে না তা পরীক্ষা করুন।

আরও তথ্য

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

,

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

আগস্ট 31 2024 থেকে শুরু হচ্ছে:

  • নতুন অ্যাপ্লিকেশন এবং অ্যাপ্লিকেশন আপডেটগুলি অবশ্যই গুগল প্লেতে জমা দেওয়ার জন্য অ্যান্ড্রয়েড 14 (এপিআই স্তর 34) বা তার বেশি টার্গেট করতে হবে; ওএস এবং অ্যান্ড্রয়েড টিভি অ্যাপ্লিকেশন পরিধান বাদে, যা অবশ্যই অ্যান্ড্রয়েড 13 (এপিআই স্তর 33) বা উচ্চতর লক্ষ্য করতে হবে।
  • বিদ্যমান অ্যাপ্লিকেশনগুলিকে অবশ্যই অ্যান্ড্রয়েড 13 (এপিআই স্তর 33) বা তার বেশি লক্ষ্য করতে হবে আপনার অ্যাপের টার্গেট এপিআই স্তরের চেয়ে বেশি চালিত অ্যান্ড্রয়েড ওএসের চালানো ডিভাইসে নতুন ব্যবহারকারীদের কাছে উপলব্ধ থাকতে হবে। অ্যান্ড্রয়েড 12 (এপিআই স্তর 31) বা লোয়ার (অ্যান্ড্রয়েড 10 (এপিআই স্তর 29) বা ওয়েয়ার ওএস এবং অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) বা অ্যান্ড্রয়েড টিভির জন্য কম) এর জন্য লক্ষ্য করে এমন অ্যাপ্লিকেশনগুলি কেবলমাত্র আপনার অ্যাপের টার্গেট এপিআই স্তরের চেয়ে একই বা কম থাকা ডিভাইসগুলিতে উপলব্ধ থাকবে।

আপনার অ্যাপ্লিকেশন আপডেট করার জন্য যদি আপনার আরও সময় প্রয়োজন হয় তবে আপনি 1 নভেম্বর, 2024 এ এক্সটেনশনের জন্য অনুরোধ করতে সক্ষম হবেন। আপনি এই বছরের শেষের দিকে প্লে কনসোলে আপনার অ্যাপের এক্সটেনশন ফর্মগুলি অ্যাক্সেস করতে সক্ষম হবেন।

এই প্রয়োজনীয়তার ব্যতিক্রমগুলির মধ্যে রয়েছে:

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

কেন নতুন এসডিকে লক্ষ্য?

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

সাম্প্রতিক এপিআই স্তরকে লক্ষ্য করার জন্য আপনার অ্যাপ্লিকেশনটি কনফিগার করা নিশ্চিত করে যে ব্যবহারকারীরা এই উন্নতিগুলি থেকে উপকৃত হতে পারে, অন্যদিকে আপনার অ্যাপ্লিকেশনটি এখনও পুরানো অ্যান্ড্রয়েড সংস্করণগুলিতে চলতে পারে। সাম্প্রতিক এপিআই স্তরকে লক্ষ্য করে আপনার অ্যাপ্লিকেশনটিকে আপনার ব্যবহারকারীদের আনন্দিত করার জন্য প্ল্যাটফর্মের সর্বশেষ বৈশিষ্ট্যগুলির সুবিধা নিতে দেয়। তদ্ব্যতীত, অ্যান্ড্রয়েড 10 (এপিআই স্তর 29) হিসাবে, ব্যবহারকারীরা যখন প্রথমবারের জন্য একটি অ্যাপ্লিকেশন শুরু করে যখন অ্যাপ্লিকেশনটি অ্যান্ড্রয়েড 5.1 (এপিআই স্তর 22) বা তার চেয়ে কম লক্ষ্য করে।

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

অ্যান্ড্রয়েড 12 এবং উচ্চতর (এপিআই স্তর 31) থেকে আরও সাম্প্রতিক সংস্করণে স্থানান্তরিত করুন

অ্যান্ড্রয়েডের আরও সাম্প্রতিক সংস্করণকে লক্ষ্য করতে আপনার অ্যাপ্লিকেশনটি আপডেট করতে, প্রাসঙ্গিক আচরণ পরিবর্তনগুলির তালিকা অনুসরণ করুন:

অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) থেকে অ্যান্ড্রয়েড 12 এ স্থানান্তরিত করুন (এপিআই স্তর 31)

নিরাপত্তা এবং অনুমতি

ব্যবহারকারীর অভিজ্ঞতা

  • কাস্টম বিজ্ঞপ্তি : কাস্টম বিষয়বস্তু ভিউ সহ বিজ্ঞপ্তিগুলি আর সম্পূর্ণ বিজ্ঞপ্তি অঞ্চল ব্যবহার করবে না; পরিবর্তে, সিস্টেমটি একটি স্ট্যান্ডার্ড টেম্পলেট প্রয়োগ করে। এই টেমপ্লেটটি নিশ্চিত করে যে কাস্টম বিজ্ঞপ্তিগুলি সমস্ত রাজ্যের অন্যান্য বিজ্ঞপ্তিগুলির মতো একই সজ্জা রয়েছে। এই আচরণটি Notification.DecoratedCustomViewStyle আচরণের সাথে প্রায় একই রকম।
  • অ্যান্ড্রয়েড অ্যাপ্লিকেশন লিঙ্কগুলি যাচাইকরণ পরিবর্তনগুলি : অ্যান্ড্রয়েড অ্যাপ্লিকেশন লিঙ্ক যাচাইকরণ ব্যবহার করার সময়, নিশ্চিত হয়ে নিন যে আপনার অভিপ্রায় ফিল্টারগুলি ব্রাউজযোগ্য বিভাগ অন্তর্ভুক্ত করেছে এবং এইচটিটিপিএস স্কিম সমর্থন করে।

কর্মক্ষমতা

  • ফোরগ্রাউন্ড সার্ভিস লঞ্চ বিধিনিষেধ : অ্যান্ড্রয়েড 12 বা উচ্চতর টার্গেট করতে, আপনার অ্যাপ্লিকেশনটি কয়েকটি বিশেষ কেস ব্যতীত পটভূমিতে চলাকালীন অগ্রভাগের পরিষেবাগুলি শুরু করতে পারে না। যদি কোনও অ্যাপ্লিকেশন ব্যাকগ্রাউন্ডে চলার সময় অগ্রভাগ পরিষেবা শুরু করার চেষ্টা করে তবে একটি ব্যতিক্রম ঘটে (কয়েকটি বিশেষ কেস বাদে)।

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

  • বিজ্ঞপ্তি ট্রামপোলিন বিধিনিষেধ : ব্যবহারকারীরা যখন বিজ্ঞপ্তিগুলি ট্যাপ করেন, কিছু অ্যাপ্লিকেশন একটি অ্যাপ্লিকেশন উপাদান চালু করে প্রতিক্রিয়া জানায় যা ব্যবহারকারী যে ক্রিয়াকলাপটি দেখেন এবং ইন্টারঅ্যাক্ট করে তা শুরু করে। এই অ্যাপ্লিকেশন উপাদানটি একটি বিজ্ঞপ্তি ট্রামপোলিন হিসাবে পরিচিত।

    অ্যাপ্লিকেশনগুলি অবশ্যই পরিষেবাগুলি বা সম্প্রচারিত রিসিভারগুলি থেকে ক্রিয়াকলাপগুলি শুরু করবে না যা বিজ্ঞপ্তি ট্রাম্পোলাইন হিসাবে ব্যবহৃত হয়। কোনও ব্যবহারকারী বিজ্ঞপ্তির মধ্যে কোনও বিজ্ঞপ্তি বা অ্যাকশন বোতামে ট্যাপ করার পরে, আপনার অ্যাপ্লিকেশন কোনও পরিষেবা বা সম্প্রচার রিসিভারের অভ্যন্তরে startActivity() কল করতে পারে না।

অ্যান্ড্রয়েড 12 (এপিআই স্তর 31) লক্ষ্য করে অ্যাপ্লিকেশনগুলিকে প্রভাবিত করে এমন পরিবর্তনগুলির সম্পূর্ণ সেটটি দেখুন।

অ্যান্ড্রয়েড 11 এর চেয়ে কম থেকে স্থানান্তরিত (এপিআই স্তর 30)

অ্যান্ড্রয়েডের সংস্করণটি নির্বাচন করুন আপনি থেকে স্থানান্তরিত হবেন:

অ্যান্ড্রয়েড 5 এ স্থানান্তরিত করুন (এপিআই স্তর 21)

আপনার অ্যাপ্লিকেশনটি এই রিলিজগুলিতে প্রবর্তিত পরিবর্তনের জন্য দায়বদ্ধ হয়েছে তা নিশ্চিত করার জন্য নিম্নলিখিত প্রতিটি রিলিজের জন্য সম্পর্কিত আচরণ পরিবর্তন পৃষ্ঠা দেখুন:

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

অ্যান্ড্রয়েড 6 এ স্থানান্তরিত করুন (এপিআই স্তর 23)

অ্যান্ড্রয়েড 6.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে অ্যাপ্লিকেশনগুলিতে নিম্নলিখিত বিবেচনাগুলি প্রযোজ্য:

  • রানটাইম অনুমতি

    • বিপজ্জনক অনুমতিগুলি কেবল রানটাইমে মঞ্জুর করা হয়। আপনার ইউআই প্রবাহকে অবশ্যই এই অনুমতিগুলি মঞ্জুর করার জন্য সাশ্রয়ী মূল্যের সরবরাহ করতে হবে।

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

অ্যান্ড্রয়েড 6.0 (এপিআই স্তর 23) এ প্রবর্তিত পরিবর্তনের বিস্তৃত তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

অ্যান্ড্রয়েড 7 এ স্থানান্তরিত করুন (এপিআই স্তর 24)

অ্যান্ড্রয়েড 7.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে অ্যাপ্লিকেশনগুলিতে নিম্নলিখিত বিবেচনাগুলি প্রযোজ্য:

  • ডোজ এবং অ্যাপ স্ট্যান্ডবাই

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

    যখন কোনও ডিভাইস ডোজ এবং অ্যাপ স্ট্যান্ডবাই মোডে থাকে, সিস্টেমটি নিম্নলিখিত আচরণ করে:

    • নেটওয়ার্ক অ্যাক্সেসকে সীমাবদ্ধ করে
    • অ্যালার্ম, সিঙ্ক এবং চাকরিগুলি ডিফার করে
    • জিপিএস এবং ওয়াই-ফাই স্ক্যানগুলি সীমাবদ্ধ করে
    • স্বাভাবিক-অগ্রাধিকার ফায়ারবেস ক্লাউড মেসেজিং বার্তাগুলিকে সীমাবদ্ধ করে।
  • অনুমতি পরিবর্তন

    • সিস্টেমটি অ্যাপ্লিকেশন ব্যক্তিগত ডিরেক্টরিগুলিতে অ্যাক্সেসকে সীমাবদ্ধ করে।
    • একটি file:// আপনার অ্যাপের বাইরে ইউআরআই একটি FileUriExposedException ট্রিগার করে। আপনার যদি আপনার অ্যাপের বাইরে ফাইলগুলি ভাগ করতে হয় তবে FileProvider প্রয়োগ করুন
  • সিস্টেমটি অ-এনডিকে লাইব্রেরিতে লিঙ্ক করতে নিষেধ করে

অ্যান্ড্রয়েড 7.0 (এপিআই স্তর 24) এ প্রবর্তিত পরিবর্তনের একটি বিস্তৃত তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

অ্যান্ড্রয়েড 8 এ স্থানান্তরিত করুন (এপিআই স্তর 26)

অ্যান্ড্রয়েড 8.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে অ্যাপ্লিকেশনগুলিতে নিম্নলিখিত বিবেচনাগুলি প্রযোজ্য:

অ্যান্ড্রয়েড 8.0 (এপিআই স্তর 26) এ প্রবর্তিত পরিবর্তনের একটি বিস্তৃত তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

অ্যান্ড্রয়েড 8 (এপিআই 26) থেকে অ্যান্ড্রয়েড 9 (এপিআই 28) এ স্থানান্তরিত করুন

অ্যান্ড্রয়েড 9.0 (এপিআই স্তর 28) এ প্রবর্তিত পরিবর্তনের বিস্তৃত তালিকার জন্য, আচরণ পরিবর্তনগুলি দেখুন।

অ্যান্ড্রয়েড 9 (এপিআই স্তর 28) থেকে অ্যান্ড্রয়েড 10 এ স্থানান্তরিত করুন (এপিআই স্তর 29)

  • একটি পূর্ণ-স্ক্রিন অভিপ্রায় সহ বিজ্ঞপ্তি
    • সাধারণ অনুমতিগুলির জন্য অনুরোধ করা USE_FULL_SCREEN_INTENT (রানটাইম অনুমতি নয়)।
  • ভাঁজ এবং বড় স্ক্রিন ডিভাইসের জন্য সমর্থন
    • একাধিক ক্রিয়াকলাপ এখন একই সময়ে "পুনরায় শুরু" অবস্থায় থাকতে পারে তবে কেবলমাত্র একটিতেই ফোকাস রয়েছে।
      • এই পরিবর্তনটি onResume() এবং onPause() আচরণকে প্রভাবিত করে।
      • "শীর্ষস্থানীয় পুনঃসূচনা" এর নতুন লাইফাইসাইকেল ধারণাটি যা onTopResumedActivityChanged() সাবস্ক্রাইব করে সনাক্ত করা যায়।
        • শুধুমাত্র একটি ক্রিয়াকলাপ "শীর্ষস্থানীয় পুনরায় শুরু করা" হতে পারে।
    • যখন resizeableActivity false হিসাবে সেট করা থাকে, অ্যাপ্লিকেশনগুলি অতিরিক্তভাবে একটি minAspectRatio নির্দিষ্ট করতে পারে যা স্বয়ংক্রিয়ভাবে অ্যাপ্লিকেশনটিকে সংকীর্ণ দিক অনুপাতের উপর চিঠি দেয়।
  • গোপনীয়তা পরিবর্তন
    • স্কোপড স্টোরেজ
      • বাহ্যিক স্টোরেজ অ্যাক্সেস কেবলমাত্র একটি অ্যাপ্লিকেশন-নির্দিষ্ট ডিরেক্টরি এবং অ্যাপটি তৈরি করা নির্দিষ্ট ধরণের মিডিয়াতে সীমাবদ্ধ।
    • অ্যাপ্লিকেশনটি ব্যাকগ্রাউন্ডে থাকাকালীন অবস্থানে সীমাবদ্ধ অ্যাক্সেস, ACCESS_BACKGROUND_LOCATION অনুমতি প্রয়োজন।
    • আইএমইআই এবং সিরিয়াল নম্বরের মতো অ-রেজিস্টেবল আইডেন্টিফায়ারগুলিতে সীমাবদ্ধ অ্যাক্সেস।
    • শারীরিক ক্রিয়াকলাপের তথ্যে সীমাবদ্ধ অ্যাক্সেস যেমন ব্যবহারকারীর পদক্ষেপ গণনা, ACTIVITY_RECOGNITION অনুমতি প্রয়োজন।
    • কিছু টেলিফোনি, ব্লুটুথ এবং ওয়াই-ফাই এপিআইগুলিতে সীমাবদ্ধ অ্যাক্সেস, ACCESS_FINE_LOCATION অনুমতি প্রয়োজন।
    • ওয়াই-ফাই সেটিংসে সীমাবদ্ধ অ্যাক্সেস
      • অ্যাপ্লিকেশনগুলি আর সরাসরি ওয়াই-ফাই সক্ষম বা অক্ষম করতে পারে না এবং সেটিংস প্যানেল ব্যবহার করে এটি করা দরকার।
      • ওয়াই-ফাই নেটওয়ার্কের সাথে সংযোগ শুরু করার উপর বিধিনিষেধগুলি, WifiNetworkSpecifier বা WifiNetworkSuggestion ব্যবহারের প্রয়োজন।

অ্যান্ড্রয়েড 10 (এপিআই স্তর 29) থেকে অ্যান্ড্রয়েড 11 এ স্থানান্তরিত করুন (এপিআই স্তর 30)

অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) এ প্রবর্তিত পরিবর্তনের বিস্তৃত তালিকার জন্য, আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

পূর্ববর্তী বিভাগের নির্দেশাবলী অনুসরণ করে এপিআই 31 এ আপডেট করা চালিয়ে যান।

আপনার অ্যাপ্লিকেশনগুলিকে আধুনিকীকরণ করুন

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

  • ক্যামেরাটি ব্যবহার করার জন্য সর্বাধিক তৈরি করার জন্য বিটাতে থাকা ক্যামেরাক্স ব্যবহার করার বিষয়টি বিবেচনা করুন।
  • আপনাকে সেরা অনুশীলনগুলি অনুসরণ করতে, আপনাকে বয়লারপ্লেট কোড লিখতে মুক্ত করতে এবং জটিল কাজগুলি সহজতর করতে সহায়তা করার জন্য জেটপ্যাক উপাদানগুলি ব্যবহার করুন যাতে আপনি আপনার যত্ন নেওয়া কোডটিতে মনোনিবেশ করতে পারেন।
  • আরও ভাল অ্যাপ্লিকেশনগুলি দ্রুত এবং কম কোড সহ লিখতে কোটলিন ব্যবহার করুন।
  • আপনি গোপনীয়তার প্রয়োজনীয়তা এবং সেরা অনুশীলনগুলি অনুসরণ করছেন তা নিশ্চিত করুন।
  • আপনার অ্যাপ্লিকেশনগুলিতে ডার্ক থিম সমর্থন যুক্ত করুন।
  • আপনার অ্যাপ্লিকেশনগুলিতে অঙ্গভঙ্গি নেভিগেশন সমর্থন যুক্ত করুন।
  • গুগল ক্লাউড মেসেজিং (জিসিএম) থেকে আপনার অ্যাপ্লিকেশনটি ফায়ারবেস ক্লাউড মেসেজিংয়ের সর্বশেষ সংস্করণে স্থানান্তর করুন
  • উন্নত উইন্ডো পরিচালনার সুবিধা নিন।
    • হার্ডওয়্যারে সাম্প্রতিক অগ্রগতির সুবিধা নিতে বৃহত্তর দিক অনুপাত (16: 9 এরও বেশি) সমর্থন করুন। নিশ্চিত করুন যে আপনার অ্যাপ্লিকেশনটি উপলব্ধ স্ক্রিনের স্থানটি পূরণ করতে পুনরায় পরিবর্তন করে। কেবলমাত্র শেষ রিসর্ট হিসাবে সর্বাধিক দিক অনুপাত ঘোষণা করুন। সর্বাধিক দিক অনুপাত সম্পর্কে আরও তথ্যের জন্য, সীমাবদ্ধ স্ক্রিন সমর্থন ঘোষণা করুন
    • আপনার অ্যাপ্লিকেশনটিকে উত্পাদনশীলতা বাড়াতে এবং একাধিক প্রদর্শন পরিচালনা করতে মাল্টি-উইন্ডো সমর্থন যুক্ত করুন।
    • যদি একটি দুর্দান্ত ন্যূনতম অ্যাপ্লিকেশন অভিজ্ঞতা ব্যবহারকারীর অভিজ্ঞতা উন্নত করে তবে চিত্র-ইন-চিত্রের জন্য সমর্থন যুক্ত করুন।

আপনার এসডিকে এবং গ্রন্থাগারগুলি পরীক্ষা করুন এবং আপডেট করুন

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

অতিরিক্তভাবে, নোট করুন যে আপনার অ্যাপ্লিকেশন বা গেমের targetSdkVersion বেসরকারী অ্যান্ড্রয়েড প্ল্যাটফর্ম লাইব্রেরিতে অ্যাক্সেসকে সীমাবদ্ধ করতে পারে; বিশদের জন্য প্ল্যাটফর্ম লাইব্রেরিতে সংযুক্ত এনডিকে অ্যাপ্লিকেশনগুলি দেখুন।

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

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

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

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

  • আপনার অ্যাপ্লিকেশনটি ত্রুটি বা সতর্কতা ছাড়াই 29 এপিআইতে সংকলন করে।
  • আপনার অ্যাপ্লিকেশনটির ক্ষেত্রে এমন একটি কৌশল রয়েছে যেখানে ব্যবহারকারী অনুমতি অনুরোধগুলি প্রত্যাখ্যান করে এবং ব্যবহারকারীকে অনুমতিের জন্য অনুরোধ করে। এটি করতে:

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

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

    • আপনার অ্যাপ্লিকেশনটি সীমাবদ্ধ ACTION_NEW_PICTURE এবং ACTION_NEW_VIDEO সম্প্রচারগুলি সঠিকভাবে পরিচালনা করে কিনা তা পরীক্ষা করে দেখুন (এটি হ'ল জবসচেডুলার জবসে স্থানান্তরিত)।
    • নিশ্চিত করুন যে এই ইভেন্টগুলির উপর নির্ভর করে এমন কোনও সমালোচনামূলক ব্যবহারের ক্ষেত্রে এখনও কাজ করে।
  • অন্যান্য অ্যাপ্লিকেশনগুলিতে ফাইলগুলি ভাগ করে নেওয়া ফাইলগুলি পরিচালনা করুন - অন্য কোনও অ্যাপ্লিকেশন (একই বিকাশকারী দ্বারা অন্য অ্যাপ্লিকেশন এমনকি অন্য অ্যাপ্লিকেশন) এর সাথে ফাইলের ডেটা ভাগ করে এমন কোনও ব্যবহারের ক্ষেত্রে পরীক্ষা করুন

    • অন্যান্য অ্যাপ্লিকেশনটিতে সামগ্রীটি দৃশ্যমান এবং ক্র্যাশগুলি ট্রিগার করে না তা পরীক্ষা করুন।

আরও তথ্য

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

,

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

আগস্ট 31 2024 থেকে শুরু হচ্ছে:

  • নতুন অ্যাপ্লিকেশন এবং অ্যাপ্লিকেশন আপডেটগুলি অবশ্যই গুগল প্লেতে জমা দেওয়ার জন্য অ্যান্ড্রয়েড 14 (এপিআই স্তর 34) বা তার বেশি টার্গেট করতে হবে; ওএস এবং অ্যান্ড্রয়েড টিভি অ্যাপ্লিকেশন পরিধান বাদে, যা অবশ্যই অ্যান্ড্রয়েড 13 (এপিআই স্তর 33) বা উচ্চতর লক্ষ্য করতে হবে।
  • বিদ্যমান অ্যাপ্লিকেশনগুলিকে অবশ্যই অ্যান্ড্রয়েড 13 (এপিআই স্তর 33) বা তার বেশি লক্ষ্য করতে হবে আপনার অ্যাপের টার্গেট এপিআই স্তরের চেয়ে বেশি চালিত অ্যান্ড্রয়েড ওএসের চালানো ডিভাইসে নতুন ব্যবহারকারীদের কাছে উপলব্ধ থাকতে হবে। অ্যান্ড্রয়েড 12 (এপিআই স্তর 31) বা লোয়ার (অ্যান্ড্রয়েড 10 (এপিআই স্তর 29) বা ওয়েয়ার ওএস এবং অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) বা অ্যান্ড্রয়েড টিভির জন্য কম) এর জন্য লক্ষ্য করে এমন অ্যাপ্লিকেশনগুলি কেবলমাত্র আপনার অ্যাপের টার্গেট এপিআই স্তরের চেয়ে একই বা কম থাকা ডিভাইসগুলিতে উপলব্ধ থাকবে।

আপনার অ্যাপ্লিকেশন আপডেট করার জন্য যদি আপনার আরও সময় প্রয়োজন হয় তবে আপনি 1 নভেম্বর, 2024 এ এক্সটেনশনের জন্য অনুরোধ করতে সক্ষম হবেন। আপনি এই বছরের শেষের দিকে প্লে কনসোলে আপনার অ্যাপের এক্সটেনশন ফর্মগুলি অ্যাক্সেস করতে সক্ষম হবেন।

এই প্রয়োজনীয়তার ব্যতিক্রমগুলির মধ্যে রয়েছে:

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

কেন নতুন এসডিকে লক্ষ্য?

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

সাম্প্রতিক এপিআই স্তরকে লক্ষ্য করার জন্য আপনার অ্যাপ্লিকেশনটি কনফিগার করা নিশ্চিত করে যে ব্যবহারকারীরা এই উন্নতিগুলি থেকে উপকৃত হতে পারে, অন্যদিকে আপনার অ্যাপ্লিকেশনটি এখনও পুরানো অ্যান্ড্রয়েড সংস্করণগুলিতে চলতে পারে। সাম্প্রতিক এপিআই স্তরকে লক্ষ্য করে আপনার অ্যাপ্লিকেশনটিকে আপনার ব্যবহারকারীদের আনন্দিত করার জন্য প্ল্যাটফর্মের সর্বশেষ বৈশিষ্ট্যগুলির সুবিধা নিতে দেয়। তদ্ব্যতীত, অ্যান্ড্রয়েড 10 (এপিআই স্তর 29) হিসাবে, ব্যবহারকারীরা যখন প্রথমবারের জন্য একটি অ্যাপ্লিকেশন শুরু করে যখন অ্যাপ্লিকেশনটি অ্যান্ড্রয়েড 5.1 (এপিআই স্তর 22) বা তার চেয়ে কম লক্ষ্য করে।

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

অ্যান্ড্রয়েড 12 এবং উচ্চতর (এপিআই স্তর 31) থেকে আরও সাম্প্রতিক সংস্করণে স্থানান্তরিত করুন

অ্যান্ড্রয়েডের আরও সাম্প্রতিক সংস্করণকে লক্ষ্য করতে আপনার অ্যাপ্লিকেশনটি আপডেট করতে, প্রাসঙ্গিক আচরণ পরিবর্তনগুলির তালিকা অনুসরণ করুন:

অ্যান্ড্রয়েড 11 (এপিআই স্তর 30) থেকে অ্যান্ড্রয়েড 12 এ স্থানান্তরিত করুন (এপিআই স্তর 31)

নিরাপত্তা এবং অনুমতি

ব্যবহারকারীর অভিজ্ঞতা

  • কাস্টম বিজ্ঞপ্তি : কাস্টম বিষয়বস্তু ভিউ সহ বিজ্ঞপ্তিগুলি আর সম্পূর্ণ বিজ্ঞপ্তি অঞ্চল ব্যবহার করবে না; পরিবর্তে, সিস্টেমটি একটি স্ট্যান্ডার্ড টেম্পলেট প্রয়োগ করে। এই টেমপ্লেটটি নিশ্চিত করে যে কাস্টম বিজ্ঞপ্তিগুলি সমস্ত রাজ্যের অন্যান্য বিজ্ঞপ্তিগুলির মতো একই সজ্জা রয়েছে। এই আচরণটি Notification.DecoratedCustomViewStyle আচরণের সাথে প্রায় একই রকম।
  • অ্যান্ড্রয়েড অ্যাপ্লিকেশন লিঙ্কগুলি যাচাইকরণ পরিবর্তনগুলি : অ্যান্ড্রয়েড অ্যাপ্লিকেশন লিঙ্ক যাচাইকরণ ব্যবহার করার সময়, নিশ্চিত হয়ে নিন যে আপনার অভিপ্রায় ফিল্টারগুলি ব্রাউজযোগ্য বিভাগ অন্তর্ভুক্ত করেছে এবং এইচটিটিপিএস স্কিম সমর্থন করে।

কর্মক্ষমতা

  • ফোরগ্রাউন্ড সার্ভিস লঞ্চ বিধিনিষেধ : অ্যান্ড্রয়েড 12 বা উচ্চতর টার্গেট করতে, আপনার অ্যাপ্লিকেশনটি কয়েকটি বিশেষ কেস ব্যতীত পটভূমিতে চলাকালীন অগ্রভাগের পরিষেবাগুলি শুরু করতে পারে না। যদি কোনও অ্যাপ্লিকেশন ব্যাকগ্রাউন্ডে চলার সময় অগ্রভাগ পরিষেবা শুরু করার চেষ্টা করে তবে একটি ব্যতিক্রম ঘটে (কয়েকটি বিশেষ কেস বাদে)।

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

  • বিজ্ঞপ্তি ট্রামপোলিন বিধিনিষেধ : ব্যবহারকারীরা যখন বিজ্ঞপ্তিগুলি ট্যাপ করেন, কিছু অ্যাপ্লিকেশন একটি অ্যাপ্লিকেশন উপাদান চালু করে প্রতিক্রিয়া জানায় যা ব্যবহারকারী যে ক্রিয়াকলাপটি দেখেন এবং ইন্টারঅ্যাক্ট করে তা শুরু করে। এই অ্যাপ্লিকেশন উপাদানটি একটি বিজ্ঞপ্তি ট্রামপোলিন হিসাবে পরিচিত।

    অ্যাপ্লিকেশনগুলি অবশ্যই পরিষেবাগুলি বা সম্প্রচারিত রিসিভারগুলি থেকে ক্রিয়াকলাপগুলি শুরু করবে না যা বিজ্ঞপ্তি ট্রাম্পোলাইন হিসাবে ব্যবহৃত হয়। কোনও ব্যবহারকারী বিজ্ঞপ্তির মধ্যে কোনও বিজ্ঞপ্তি বা অ্যাকশন বোতামে ট্যাপ করার পরে, আপনার অ্যাপ্লিকেশন কোনও পরিষেবা বা সম্প্রচার রিসিভারের অভ্যন্তরে startActivity() কল করতে পারে না।

অ্যান্ড্রয়েড 12 (এপিআই স্তর 31) লক্ষ্য করে অ্যাপ্লিকেশনগুলিকে প্রভাবিত করে এমন পরিবর্তনগুলির সম্পূর্ণ সেটটি দেখুন।

অ্যান্ড্রয়েড 11 এর চেয়ে কম থেকে স্থানান্তরিত (এপিআই স্তর 30)

অ্যান্ড্রয়েডের সংস্করণটি নির্বাচন করুন আপনি থেকে স্থানান্তরিত হবেন:

অ্যান্ড্রয়েড 5 এ স্থানান্তরিত করুন (এপিআই স্তর 21)

আপনার অ্যাপ্লিকেশনটি এই রিলিজগুলিতে প্রবর্তিত পরিবর্তনের জন্য দায়বদ্ধ হয়েছে তা নিশ্চিত করার জন্য নিম্নলিখিত প্রতিটি রিলিজের জন্য সম্পর্কিত আচরণ পরিবর্তন পৃষ্ঠা দেখুন:

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

অ্যান্ড্রয়েড 6 এ স্থানান্তরিত করুন (এপিআই স্তর 23)

অ্যান্ড্রয়েড 6.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে অ্যাপ্লিকেশনগুলিতে নিম্নলিখিত বিবেচনাগুলি প্রযোজ্য:

  • রানটাইম অনুমতি

    • বিপজ্জনক অনুমতিগুলি কেবল রানটাইমে মঞ্জুর করা হয়। আপনার ইউআই প্রবাহকে অবশ্যই এই অনুমতিগুলি মঞ্জুর করার জন্য সাশ্রয়ী মূল্যের সরবরাহ করতে হবে।

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

অ্যান্ড্রয়েড 6.0 (এপিআই স্তর 23) এ প্রবর্তিত পরিবর্তনের বিস্তৃত তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

অ্যান্ড্রয়েড 7 এ স্থানান্তরিত করুন (এপিআই স্তর 24)

অ্যান্ড্রয়েড 7.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে অ্যাপ্লিকেশনগুলিতে নিম্নলিখিত বিবেচনাগুলি প্রযোজ্য:

  • ডোজ এবং অ্যাপ স্ট্যান্ডবাই

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

    যখন কোনও ডিভাইস ডোজ এবং অ্যাপ স্ট্যান্ডবাই মোডে থাকে, সিস্টেমটি নিম্নলিখিত আচরণ করে:

    • নেটওয়ার্ক অ্যাক্সেসকে সীমাবদ্ধ করে
    • অ্যালার্ম, সিঙ্ক এবং চাকরিগুলি ডিফার করে
    • জিপিএস এবং ওয়াই-ফাই স্ক্যানগুলি সীমাবদ্ধ করে
    • স্বাভাবিক-অগ্রাধিকার ফায়ারবেস ক্লাউড মেসেজিং বার্তাগুলিকে সীমাবদ্ধ করে।
  • অনুমতি পরিবর্তন

    • সিস্টেমটি অ্যাপ্লিকেশন ব্যক্তিগত ডিরেক্টরিগুলিতে অ্যাক্সেসকে সীমাবদ্ধ করে।
    • একটি file:// আপনার অ্যাপের বাইরে ইউআরআই একটি FileUriExposedException ট্রিগার করে। আপনার যদি আপনার অ্যাপের বাইরে ফাইলগুলি ভাগ করতে হয় তবে FileProvider প্রয়োগ করুন
  • সিস্টেমটি অ-এনডিকে লাইব্রেরিতে লিঙ্ক করতে নিষেধ করে

অ্যান্ড্রয়েড 7.0 (এপিআই স্তর 24) এ প্রবর্তিত পরিবর্তনের একটি বিস্তৃত তালিকার জন্য, প্ল্যাটফর্মের সেই সংস্করণের জন্য আচরণ পরিবর্তনগুলি পৃষ্ঠা দেখুন।

পরবর্তী বিভাগে নির্দেশাবলী অনুসরণ করে চালিয়ে যান।

অ্যান্ড্রয়েড 8 এ স্থানান্তরিত করুন (এপিআই স্তর 26)

অ্যান্ড্রয়েড 8.0 এবং প্ল্যাটফর্মের উচ্চতর সংস্করণগুলিকে লক্ষ্য করে অ্যাপ্লিকেশনগুলিতে নিম্নলিখিত বিবেচনাগুলি প্রযোজ্য:

For an exhaustive list of changes introduced in Android 8.0 (API level 26), see the Behavior Changes page for that version of the platform.

Migrate from Android 8 (API 26) to Android 9 (API 28)

For an exhaustive list of changes introduced in Android 9.0 (API level 28), see behavior changes .

Migrate from Android 9 (API level 28) to Android 10 (API level 29)

Migrate from Android 10 (API level 29) to Android 11 (API level 30)

For an exhaustive list of changes introduced in Android 11 (API level 30), see the Behavior Changes page.

Continue to update to API 31 by following the instructions in the previous section .

Modernize your apps

As you update the target API level for your apps, consider adopting recent platform features to modernize your apps and delight your users.

Check and update your SDKs and libraries

Make sure that your third-party SDK dependencies support API 31: Some SDK providers publish it in their manifest; others will require additional investigation. If you use an SDK that doesn't support API 31, make it a priority to work with the SDK provider to resolve the issue.

Additionally, note that your app or game's targetSdkVersion may restrict access to private Android platform libraries; see NDK Apps Linking to Platform Libraries for details.

You should also verify any restrictions that may exist in the version of the Android Support Library that you're using. As always, you must ensure compatibility between the major version of Android Support Library and your app's compileSdkVersion .

We recommend that you choose a targetSdkVersion smaller than or equal to the Support Library's major version. We encourage you to update to a recent compatible Support Library in order to take advantage of the latest compatibility features and bug fixes.

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

After you update your app's API level and features as appropriate, you should test some core use cases. The following suggestions are not exhaustive, but aim to guide your testing process. We suggest testing:

  • That your app compiles to API 29 without errors or warnings.
  • That your app has a strategy for cases where the user rejects permission requests, and prompts the user for permissions. এটি করতে:

    • Go to your app's App Info screen, and disable each permission.
    • Open the app and ensure no crashes.
      • Perform core use case tests and ensure required permissions are re-prompted.
  • Handles Doze with expected results and no errors.

    • Using adb, place your test device into Doze while your app is running.
      • Test any use cases that trigger Firebase Cloud Messaging messages.
      • Test any use cases that use Alarms or Jobs.
      • Eliminate any dependencies on background services.
    • Set your app into App Standby
      • Test any use cases that trigger Firebase Cloud Messaging messages.
      • Test any use cases that use Alarms.
  • Handles new photos / video being taken

  • Handles sharing files to other apps - Test any use case that shares file data with any other app (even another app by the same developer)

    • Test the content is visible in the other app and doesn't trigger crashes.

আরও তথ্য

Opt in to emails in the Google Play Console so that we can send you important updates and announcements from Android and Google Play, including our monthly partner newsletter.