উইন্ডো ম্যানেজার

Jetpack WindowManager লাইব্রেরি অ্যাপ্লিকেশন ডেভেলপারদের নতুন ডিভাইস ফর্ম ফ্যাক্টর এবং মাল্টি-উইন্ডো পরিবেশ সমর্থন করতে সক্ষম করে। লাইব্রেরি API সংস্করণ 14 এবং পরবর্তী সংস্করণের জন্য একটি সাধারণ API পৃষ্ঠ প্রদান করে। প্রাথমিক রিলিজটি ভাঁজযোগ্য ডিভাইসগুলিকে লক্ষ্য করে, তবে ভবিষ্যতের সংস্করণগুলি আরও প্রদর্শনের ধরন এবং উইন্ডো বৈশিষ্ট্যগুলিতে প্রসারিত হবে।
সর্বশেষ আপডেট স্থিতিশীল রিলিজ প্রার্থী মুক্তি বিটা রিলিজ আলফা রিলিজ
4 সেপ্টেম্বর, 2024 1.3.0 - - 1.4.0-আলফা02

নির্ভরতা ঘোষণা করা

WindowManager-এ নির্ভরতা যোগ করতে, আপনাকে অবশ্যই আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google এর Maven সংগ্রহস্থল পড়ুন।

আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টগুলির জন্য নির্ভরতা যোগ করুন:

গ্রোভি

dependencies {
    implementation "androidx.window:window:1.3.0"

    // For Java-friendly APIs to register and unregister callbacks
    implementation "androidx.window:window-java:1.3.0"

    // For RxJava2 integration
    implementation "androidx.window:window-rxjava2:1.3.0"

    // For RxJava3 integration
    implementation "androidx.window:window-rxjava3:1.3.0"

    // For testing
    implementation "androidx.window:window-testing:1.3.0"
}

কোটলিন

dependencies {
    implementation("androidx.window:window:1.3.0")

    // For Java-friendly APIs to register and unregister callbacks
    implementation("androidx.window:window-java:1.3.0")

    // For RxJava2 integration
    implementation("androidx.window:window-rxjava2:1.3.0")

    // For RxJava3 integration
    implementation("androidx.window:window-rxjava3:1.3.0")

    // For testing
    implementation("androidx.window:window-testing:1.3.0")
}

প্রতিক্রিয়া

আপনার প্রতিক্রিয়া জেটপ্যাককে আরও ভাল করতে সাহায্য করে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরির উন্নতির জন্য ধারনা পান তাহলে আমাদের জানান। আপনি একটি নতুন তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি দেখুন৷ আপনি তারকা বোতামে ক্লিক করে একটি বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।

একটি নতুন সমস্যা তৈরি করুন

আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।

সংস্করণ 1.4

সংস্করণ 1.4.0-alpha02

4 সেপ্টেম্বর, 2024

androidx.window:window-*:1.4.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha02-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

কাস্টম WindowSizeClass এর জন্য সমর্থন যোগ করুন।

  • WindowSizeClass এর জন্য কনস্ট্রাক্টর খুলুন যাতে devs তাদের নিজস্ব ব্যবহার করতে পারে।
  • isAtLeast ইউটিলিটি পদ্ধতি যোগ করুন যাতে বিকাশকারীরা WindowSizeClass মানগুলির একটি পরিসর প্রক্রিয়া করতে পারে।
  • সেট থেকে সেরা মিল গণনা করতে Set<WindowSizeClass> -এ একটি এক্সটেনশন ফাংশন যোগ করুন।
  • Android প্রস্তাবিত ব্রেকপয়েন্টগুলির জন্য ধ্রুবক যোগ করুন।
  • অ্যান্ড্রয়েড প্রস্তাবিত ব্রেকপয়েন্টের সাথে সম্পর্কিত ব্রেকপয়েন্ট সেট যোগ করুন।

এপিআই পরিবর্তন

  • WindowSizeClass এর জন্য বাউন্ড পদ্ধতির নাম আপডেট করুন। ( if89a6 )
  • ভবিষ্যতে নতুন ব্রেকপয়েন্ট মান যোগ করতে সমর্থন করার জন্য WindowSizeClass API আপডেট করুন। পরম সীমানা থাকার পরিবর্তে আমরা নিম্ন সীমাগুলি ব্যবহার করি এবং একটি WindowSizeClass প্রক্রিয়া করার সময় devsকে নিম্ন আবদ্ধ চেকগুলি ব্যবহার করার পরামর্শ দিই৷ বিদ্যমান WindowWidthSizeClass এবং WindowHeightSizeClass অবমূল্যায়ন করা হবে কারণ সেগুলি আর বিকাশ করা হবে না৷ ( I014ce )

সংস্করণ 1.4.0-alpha01

7 আগস্ট, 2024

androidx.window:window-*:1.4.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

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

এপিআই পরিবর্তন

  • একটি নতুন API WindowInfoTracker#supportedPostures :

    • ডিভাইসটি ফোল্ডেবলের জন্য টেবিলটপ মোড সমর্থন করে কিনা তা নির্ধারণ করার জন্য একটি API। WindowAreaSessionPresenter#getWindow যোগ করে
  • ActivityStack পিনিং সমর্থন করতে API যোগ করুন:

    • SplitPinRule ক্লাস
    • SplitController#pinTopActivityStack
    • SplitController#unpinTopActivityStack
  • ইন্টারেক্টিভ ডিভাইডার সক্ষম এবং কনফিগার করতে API যোগ করুন

    • DividerAttributes ক্লাস
    • SplitAttributes.Builder#setDividerAttributes
  • ডায়ালগের জন্য EmbeddingConfiguration এবং DimAreaBehavior সেট করতে API যোগ করুন

    • EmbeddingConfiguration ক্লাস
    • DimAreaBehavior ক্লাস
    • ActivityEmbeddingController#setEmbeddingConfiguration
  • এম্বেড করা কার্যকলাপ উইন্ডো তথ্য আপডেট পেতে API যোগ করুন

    • EmbeddedActivityWindowInfo ইনফো ক্লাস
    • ActivityEmbeddingController#embeddedActivityWindowInfo
  • এম্বেডিং অ্যানিমেশন ব্যাকগ্রাউন্ড সেট করতে API যোগ করুন

    • EmbeddingAnimationBackground
    • SplitAttributes.Builder#setAnimationBackground
  • ActivityStacks শেষ করতে API যোগ করুন

    • ActivityEmbeddingController#finishActivityStacks
  • ActivityStack চালু করতে সেট করতে API যোগ করুন

    • ActivityEmbeddingOptions#setLaunchingActivityStack
  • নিম্নলিখিত APIগুলি স্থিতিশীল এবং আর পরীক্ষামূলক নয়:

    • ActivityEmbeddingController#invalidateVisibleActivityStacks (SplitController#invalidateTopVisibleSplitAttributes থেকে সরানো হয়েছে)
    • ActivityEmbeddingController#getActivityStack
    • SplitController#updateSplitAttributes
  • 1.4 এর জন্য API যোগ করুন। ( I56774 )

বাগ ফিক্স

  • নির্দিষ্ট কিছু ডিভাইসে বাগ সংশোধন করে যেখানে একটি সেশন সক্রিয় থাকাকালীন সক্রিয়ের পরিবর্তে অনুপলব্ধ ফেরত দেওয়া হবে।
  • অস্থির API সমর্থনের কারণে 2-এর vendorApiLevel সহ ডিভাইসগুলিতে transferActivityToWindowArea এর জন্য সমর্থন সরিয়ে দেয়।
  • অ্যাক্টিভিটি এমবেডিং ড্র্যাগেবল ডিভাইডারের জন্য ড্র্যাগ-টু-ফুলস্ক্রিন সক্ষম করতে API প্রবর্তন করুন। ( I645c9 )
  • SplitAttributes এর জন্য অ্যানিমেশন প্যারামের মাধ্যমে ActivityEmbedding অ্যানিমেশনগুলিকে নিষ্ক্রিয় করতে অ্যাপগুলিকে অনুমতি দিন। ( আইডিসি01এ )
  • নতুন প্ল্যাটফর্ম API-এ অ্যাক্সেসের ম্যানুয়াল রূপরেখা সরানো হয়েছে যেহেতু AGP 7.3 বা তার পরে (যেমন R8 সংস্করণ 3.3) এবং AGP 8.1 বা তার পরবর্তী (যেমন D8 সংস্করণ 8.1) ব্যবহার করার সময় R8 ব্যবহার করার সময় এটি স্বয়ংক্রিয়ভাবে API মডেলিংয়ের মাধ্যমে ঘটে। যে সকল ক্লায়েন্ট AGP ব্যবহার করছেন না তাদের D8 সংস্করণ 8.1 বা তার পরবর্তী সংস্করণে আপডেট করার পরামর্শ দেওয়া হচ্ছে। আরো বিস্তারিত জানার জন্য এই নিবন্ধটি দেখুন. ( IA60e0 , b/345472586 )
  • এক্সটেনশনগুলিকে SplitAttributes এর জন্য অ্যানিমেশন প্যারামগুলি নেওয়ার অনুমতি দিন যাতে ডিভাইসটি অ্যানিমেশন ট্রানজিশনের জন্য এটি ব্যবহার করতে পারে। ( Iede00 )
  • ওভারলে API লুকান ( Ic4251 )
  • স্প্লিটের জন্য স্থির বা টেনে আনা যায় এমন বিভাজক কনফিগার করতে API গুলি প্রবর্তন করুন ( Ia7a78 )
  • WindowMetrics ( Id6723 ) এ ঘনত্ব যোগ করা হয়েছে
  • SupportedPostures পেতে API যোগ করুন। ( if557a )
  • পরীক্ষামূলক API ( I191cf ) থেকে setLaunchingActivityStack সরান
  • ActivityEmbeddingController#embeddedActivityWindowInfo ( I24312 ) প্রবর্তন করুন
  • #getToken বর্জন করুন এবং #getActivityStackToken যোগ করুন ( Ie0471 )
  • embeddedActivityWindowInfo ফ্লো API ( Ida77f ) এর জন্য কলব্যাক অ্যাডাপ্টার প্রবর্তন করুন
  • ওভারলেইনফো ফ্লো API ( I7264f ) এর জন্য কলব্যাক অ্যাডাপ্টার যোগ করুন
  • পরীক্ষার জন্য extensionsVersion ওভাররাইড করতে WindowSdkExtensionsRule প্রবর্তন করুন৷ ( ifb928 )
  • - ActivityOptionsCompat ব্যবহারের সাথে সামঞ্জস্য করতে #setLaunchingActivityStack বান্ডেলে স্থানান্তর করুন।
    • ব্যবহারকারীদের ActvityOptions এর পরিবর্তে activityOptions.toBundle পাস করা উচিত।
    • #setLaunchingActivityStack(Activity) সরান। একটি ActivityStack পেতে ব্যবহারকারীদের ActivityEmbeddingController#getActivityStac(Activity) ব্যবহার করতে মাইগ্রেট করা উচিত এবং ActivityStack কে #setLaunchingActivityStack এ পাস করা উচিত। ( Ie0ccc )
  • - WM জেটপ্যাক এবং এক্সটেনশনগুলির মধ্যে যোগাযোগ করার জন্য ActivityStack.Token এবং SpltInfo.Token একটি শনাক্তকারী হিসাবে প্রবর্তন করুন।
    • IBinder এর পরিবর্তে টোকেন নিতে/ফেরত করতে API গুলিকে অবমূল্যায়ন/প্রতিস্থাপন করুন। ( I12b24 )
  • - ActivityEmbeddingController#invalidateVisibleActivityStacks প্রবর্তন করুন
    • SplitController#invalidateTopVisibleSplitAttributes সরান কারণ বৈশিষ্ট্যটি #invalidateVisibleActivityStacks ( I02ef5 ) এ একীভূত হয়
  • - এম্বেডিং কনফিগারেশন সেট করতে API যোগ করা হচ্ছে। ( I59a4a )
  • - পিন/আনপিন শীর্ষ ActivityStack androidx.Window API যোগ করা
    • শীর্ষ ActivityStack ( I24dd3 ) পিন/আনপিন করার অনুমতি দিতে ডেমো অ্যাপ আপডেট করা হচ্ছে
  • পুনরায় যোগ করুন #finishActivityStacks এবং ActivityEmbeddingOptions ( Ic1ab3 )
  • অস্থির API গুলি সরান। ( Ibc534 , b/302380585 )

সংস্করণ 1.3

সংস্করণ 1.3.0

29 মে, 2024

androidx.window:window-*:1.3.0 প্রকাশিত হয়েছে। সংস্করণ 1.3.0- এ এই কমিট রয়েছে।

1.2.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

  • উইন্ডো সাইজ ক্লাসের জন্য কোটলিন মাল্টিপ্ল্যাটফর্ম সমর্থন।

সংস্করণ 1.3.0-rc01

14 মে, 2024

WindowManager Jetpack 1.3 WindowSizeClass বৈশিষ্ট্যের পাশাপাশি একাধিক বাগ ফিক্সের জন্য Kotlin মাল্টিপ্ল্যাটফর্ম সমর্থন নিয়ে আসে।

androidx.window:window-*:1.3.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.3.0-beta02

1 মে, 2024

androidx.window:window-*:1.3.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta02-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • কাস্টম WindowSizeClass তৈরি এবং ব্যবহার করার জন্য সমর্থন সরান। ( আইডি 1143 )

বাগ ফিক্স

  • প্রোগার্ড নির্দিষ্ট ডিভাইস বাস্তবায়নে কিছু ফাইল বের করে দেওয়ার কারণে সৃষ্ট KotlinReflectionInternalError ঠিক করে। ( I01b02 )

সংস্করণ 1.3.0-beta01

3 এপ্রিল, 2024

androidx.window:window-*:1.3.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta01-এ এই কমিট রয়েছে।

সংস্করণ 1.3.0-alpha03

6 মার্চ, 2024

androidx.window:window-*:1.3.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha03-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • WindowSizeClassUtil আরও ফোকাস করা পদ্ধতিতে বিভক্ত করুন। ( IE9292 )
  • WindowSizeClass#compute পুনরুদ্ধার করুন ( I21355 , b/324293374 )

বাগ ফিক্স

  • যেখানে প্রদত্ত প্রসঙ্গটি সঠিকভাবে মোড়ানো হয়নি সেখানে ক্র্যাশের সমাধান করে। ( 94d10ce , b/318787482 )

সংস্করণ 1.3.0-alpha02

7 ফেব্রুয়ারি, 2024

androidx.window:window-*:1.3.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha02 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • যে ডেভেলপাররা তাদের নিজস্ব আকারের ক্লাস ব্যবহার করতে চান তাদের জন্য নমনীয়তা উন্নত করতে উইন্ডো সাইজ ক্লাস এপিআই-এর API পৃষ্ঠে আপডেট করা হয়েছে।

এপিআই পরিবর্তন

  • প্রস্থ নির্বাচক উচ্চতা সীমাবদ্ধতা যোগ করুন. ( I23393 )
  • একটি সেট থেকে একটি WindowSizeClass বাছাই করার জন্য ইউটিলিটি ফাংশন যোগ করুন। পরীক্ষামূলক স্কোরিং ফাংশন যোগ করুন যাতে বিকাশকারীরা তাদের নিজস্ব নির্বাচক লিখতে পারে। একটি প্রদত্ত সীমার মধ্যে প্রশস্ত WindowSizeClass বাছাই করতে একটি নির্বাচক এক্সটেনশন ফাংশন যোগ করুন। ( I0c944 )
  • WindowSizeClass কনস্ট্রাক্টর খুলুন যাতে কাস্টম ব্রেকপয়েন্ট যোগ করা যায়। ( Ic1ff3 )
  • প্রস্থ, উচ্চতা এবং ঘনত্ব থেকে আকার শ্রেণী তৈরি করতে সুবিধার ফাংশন যোগ করুন। ( if67f4 )

বাগ ফিক্স

  • ফ্লোট মান 0-তে কাটা হলে ব্যতিক্রম ঠিক করুন। ( 272ffac )

সংস্করণ 1.3.0-alpha01

15 নভেম্বর, 2023

androidx.window:window-*:1.3.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • পিছনের স্ক্রীন অ্যাক্সেস করার জন্য পরীক্ষামূলক উইন্ডো APIগুলি প্রকাশ করুন৷
  • একটি FoldingFeature তৈরির জন্য পরীক্ষা APIs এখন স্থিতিশীল।
  • জাল ActivityEmbedding মান সেট আপ করার জন্য পরীক্ষা API এখন স্থিতিশীল।
  • WindowLayoutInfoPublisherRule এখন UiContext থেকে একটি মান পাওয়ার সময় ওভাররাইড রিপোর্ট করে।
  • WindowInfoTracker UiContext প্যারামিটারে বৈশিষ্ট্য ডেটা ভাঁজ করার রিপোর্ট করে।
  • ডিভাইসে এক্সটেনশন সংস্করণ প্রকাশ করুন।
  • ব্যবহারকারী প্রতি অ্যাপ ওভাররাইডের জন্য WindowProperties ধ্রুবক:
    • PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_OVERRIDE — অ্যাপটি ব্যবহারকারী-মুখী আকৃতির অনুপাত সামঞ্জস্য ওভাররাইড থেকে অপ্ট আউট করেছে এমন সিস্টেমকে জানায়।
    • PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_FULLSCREEN_OVERRIDE — অ্যাপটি ব্যবহারকারীর দৃষ্টিভঙ্গি অনুপাত সামঞ্জস্য ওভাররাইড সেটিংসের পূর্ণ-স্ক্রীন বিকল্প থেকে অপ্ট আউট করেছে এমন সিস্টেমকে জানায়

সংস্করণ 1.2

সংস্করণ 1.2.0

15 নভেম্বর, 2023

androidx.window:window-*:1.2.0 প্রকাশিত হয়েছে। সংস্করণ 1.2.0 এই কমিট ধারণ করে.

1.1.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

  • পিছনের স্ক্রীন অ্যাক্সেস করার জন্য পরীক্ষামূলক উইন্ডো APIগুলি প্রকাশ করুন৷
  • একটি FoldingFeature তৈরির জন্য পরীক্ষা APIs এখন স্থিতিশীল।
  • জাল ActivityEmbedding মান সেট আপ করার জন্য পরীক্ষা API এখন স্থিতিশীল।
  • WindowLayoutInfoPublisherRule এখন UiContext থেকে একটি মান পাওয়ার সময় ওভাররাইড রিপোর্ট করে।
  • WindowInfoTracker UiContext প্যারামিটারে বৈশিষ্ট্য ডেটা ভাঁজ করার রিপোর্ট করে।
  • ডিভাইসে এক্সটেনশন সংস্করণ প্রকাশ করুন।

সংস্করণ 1.2.0-rc01

নভেম্বর 1, 2023

androidx.window:window-*:1.2.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-rc01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • পিছনের স্ক্রীন অ্যাক্সেস করার জন্য পরীক্ষামূলক উইন্ডো APIগুলি প্রকাশ করুন৷
  • একটি FoldingFeature তৈরির জন্য পরীক্ষা APIs এখন স্থিতিশীল।
  • জাল ActivityEmbedding মান সেট আপ করার জন্য পরীক্ষা API এখন স্থিতিশীল।
  • WindowLayoutInfoPublisherRule এখন UiContext থেকে একটি মান পাওয়ার সময় ওভাররাইড রিপোর্ট করে।
  • WindowInfoTracker UiContext প্যারামিটারে বৈশিষ্ট্য ডেটা ভাঁজ করার রিপোর্ট করে।
  • ডিভাইসে এক্সটেনশন সংস্করণ প্রকাশ করুন।

সংস্করণ 1.2.0-beta04

18 অক্টোবর, 2023

androidx.window:window-*:1.2.0-beta04 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-beta04 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

সংস্করণ 1.2.0-beta03

20 সেপ্টেম্বর, 2023

androidx.window:window-*:1.2.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-beta03 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • সঠিকভাবে কাজ করার জন্য এক্সটেনশনের একটি নির্দিষ্ট সংস্করণ প্রয়োজন এমন APIগুলির জন্য RequiresApi চেক যোগ করুন।
  • ডিভাইসে এক্সটেনশন সংস্করণ প্রকাশ করতে একটি API যোগ করুন।

এপিআই পরিবর্তন

  • সর্বজনীন API-এ প্রয়োজনীয় উইন্ডো SDK এক্সটেনশন সংস্করণ টীকা করুন।
    • অ্যাক্টিভিটি এমবেডিং কম্পোনেন্টে isXXXSupported সরান। ( ie3dae )
  • ডিভাইসে এক্সটেনশন সংস্করণ রিপোর্ট করতে WindowSdkExtensions চালু করুন।
    • ন্যূনতম প্রয়োজনীয় এক্সটেনশন সংস্করণ টীকা করার জন্য RequiresWindowSdkExtension পরিচয় দিন। ( I05fd4 )
  • WindowAreaInfo#getCapability অ-নূলযোগ্য করে তোলে। ( I17048 )

সংস্করণ 1.2.0-beta01

জুলাই 26, 2023

androidx.window:window-*:1.2.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-beta01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • পিছনের স্ক্রীন অ্যাক্সেস করার জন্য পরীক্ষামূলক উইন্ডো APIগুলি প্রকাশ করুন৷
  • একটি FoldingFeature তৈরির জন্য পরীক্ষা APIs এখন স্থিতিশীল।
  • জাল ActivityEmbedding মান সেট আপ করার জন্য পরীক্ষা API এখন স্থিতিশীল।
  • WindowLayoutInfoPublisherRule এখন UiContext থেকে একটি মান পাওয়ার সময় ওভাররাইড রিপোর্ট করে।
  • WindowInfoTracker UiContext প্যারামিটারে বৈশিষ্ট্য ডেটা ভাঁজ করার রিপোর্ট করে।

এপিআই পরিবর্তন

  • 1.3 ( I857f5 ) এ স্থিতিশীল রিলিজের জন্য API পরিবর্তনগুলি চালিয়ে যাওয়ার জন্য WindowArea API-কে পরীক্ষামূলক হিসাবে চিহ্নিত করে
  • কম্প্যাটিবিলিটি সাপ্রেশন ( I8e87a , b/287516207 ) টীকা করতে API ফাইল আপডেট করা হয়েছে

সংস্করণ 1.2.0-alpha03

জুন 21, 2023

androidx.window:window-*:1.2.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha03 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • API পৃষ্ঠ থেকে অপসারিত API গুলি সরানো হচ্ছে।
  • সমবর্তী প্রদর্শন সমর্থন করতে API যোগ করুন।
  • জোরপূর্বক রিসাইজ ওভাররাইড অপ্ট আউট করতে একটি সম্পত্তি যোগ করুন।
  • ন্যূনতম আকৃতির অনুপাত ওভাররাইড থেকে অপ্ট আউট করতে সম্পত্তি যোগ করুন।
  • অ্যাক্টিভিটি এমবেডিং এর চারপাশে ইউনিট টেস্টিং সমর্থন করতে ActivityEmbeddingRule স্থিতিশীল করুন।

এপিআই পরিবর্তন

  • অপসারিত API ( I18d39 ) সরান
  • সমবর্তী প্রদর্শনের জন্য সমর্থন যোগ করুন। ( IFcbb0 )

বাগ ফিক্স

  • ফোর্স রিসাইজ ওভাররাইডের জন্য অপ্ট-আউট কমপ্যাট সম্পত্তি যোগ করা হচ্ছে ( Ie7ab1 )
  • এক্সটেনশন ইন্টারফেস থেকে SESSION_STATE_CONTENT_INVISIBLE সরিয়ে দেয়। ( I6ed19 )
  • অ্যাক্টিভিটি এমবেডিং এর চারপাশে ইউনিট টেস্টিং সমর্থন করতে ActivityEmbeddingRule স্থিতিশীল করুন। ( I8d6b6 )
  • ন্যূনতম আকৃতির অনুপাত ওভাররাইডের জন্য অপ্ট-আউট কম্প্যাট সম্পত্তি যোগ করা হচ্ছে। ( I66390 )
  • অপসারিত WindowArea API ( Ieb67c ) সরিয়ে দেয়
  • PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED এ ওরিয়েন্টেশন রিকোয়েস্ট লুপ প্রপার্টির নাম পরিবর্তন করুন। ( Ie2fbd )
  • আপডেট উইন্ডো এলাকা অধিবেশন ধ্রুবক নাম ( I83675 )
  • অপ্ট-আউট কম্প্যাট সম্পত্তি যোগ করা যা সনাক্ত করার সময় অভিযোজন অনুরোধ লুপ উপেক্ষা করে ( I0a7a2 )
  • বৈশিষ্ট্যটি ইতিমধ্যে সক্রিয় রয়েছে তা বোঝাতে WindowAreaComponent#STATUS_ACTIVE যোগ করুন। ( I62bc3 )
  • RearDisplayPresentationMode APIs যোগ করুন ( I0401c )
  • স্থিতিশীল জন্য পটভূমি রঙ API সরান. ( I34c3e )
  • উইন্ডো এলাকা API লুকান. ( I39de0 )
  • SplitControllerSplitInfo ওভাররাইড করার পদ্ধতি যোগ করুন। SplitInfo এবং ActivityStack এর জন্য ডবল তৈরি করতে পরীক্ষা পদ্ধতি যোগ করুন। ( Icd69f )
  • ActivityRule.Builder এর জন্য ট্যাগটিকে ঐচ্ছিক করুন। ( Ib0b44 )
  • RatioSplitType , ExpandContainersSplit এবং HingeSplitType সরান। তারা এখন SplitType
    • #splitEqually() , #expandContainers() এবং #splitByHinge কে ধ্রুবক SplitType SPLIT_TYPE_EQUAL , SPLIT_TYPE_EXPAND এবং SPLIT_TYPE_HINGE এ প্রতিস্থাপন করুন
    • কব্জা স্প্লিট টাইপের ফলব্যাক টাইপ সেট করতে কার্যকারিতা সরান। যদি বর্তমান ডিভাইস বা উইন্ডো অবস্থার কারণে কব্জা বিভক্ত প্রকারটি প্রয়োগ করা না যায়, তাহলে এটি মূল টাস্ক কন্টেইনারকে সমানভাবে বিভক্ত করতে ফলব্যাক করে। ফলব্যাক স্প্লিট টাইপ কাস্টমাইজ করতে SplitController#setSplitAttributesCalculator ব্যবহার করুন। ( IFcc59 )
  • স্প্লিটকলব্যাক add / removeSplitCallback
    • SplitControllerCallbackAdapteradd / removeSplitCallback সরান
    • SplitInfo তালিকা পেতে Flow সমর্থন যোগ করুন ( I7f1b6 )
  • ActivityEmbeddingController ( I42e9b ) এর জন্য একটি পরীক্ষার নিয়ম যোগ করুন
  • ActivityOptionsCompat নাম পরিবর্তন করে ActivityEmbeddingOptions ( I89301 )
  • অ্যাক্টিভিটি এমবেডিং উপলব্ধ কিনা তা নির্দেশ করতে splitSupportStatus যোগ করুন। ( I10024 )
  • DEFAULT মানকে আরও ভালোভাবে উপস্থাপন করতে SplitAttributes.BackgroundColor প্রবর্তন করুন। স্পষ্ট করুন যে অ-অস্বচ্ছ অ্যানিমেশন পটভূমির রঙ সমর্থিত নয়, তাই যেকোনো অ-অস্বচ্ছ রংকে ডিফল্ট হিসাবে গণ্য করা হবে, যার অর্থ বর্তমান থিম উইন্ডোর পটভূমির রঙ ব্যবহার করা। ( IC6b95 )
  • ALWAYS_ALLOW এবং ALWAYS_DISALLOW দিয়ে alwaysAllow() এবং alwaysDisallow() প্রতিস্থাপন করুন। ( I3057b )
  • SplitRule , SplitAttributes , SplitAttributesCalculator এর জন্য API যোগ করুন। ( I92d23 )
  • পরীক্ষার জন্য ActivityStack তৈরি করতে TestActivityStack যোগ করুন
    • পরীক্ষার জন্য SplitInfo তৈরি করতে TestSplitInfo যোগ করুন। ( I8e779 )
  • জাল SplitAttributesCalculatorParams তৈরি করার একটি উপায় যোগ করুন যাতে ডেভেলপাররা তাদের কাস্টমাইজড SplitAttributesCalculator ( Id4a6e ) যাচাই করতে পারে
  • WindowMetricsCalculator#computeCurrentWindowMetrics(@UiContext context: Context) এবং WindowMetricsCalculator#computeMaximumWindowMetrics(@UiContext context: Context) যোগ করুন ( I66c7f )

সংস্করণ 1.2.0-alpha02

7 জুন, 2023

androidx.window:window-*:1.2.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha02 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • অনির্দিষ্ট ভাঁজ বৈশিষ্ট্যগুলির জন্য একটি ধ্রুবক থাকতে পরীক্ষা API আপডেট করুন।
  • WindowLayoutInfoPublishRule দিয়ে ওভাররাইড করা windowLayoutInfo এর সমস্ত মানকে ওভাররাইড করবে, প্রসঙ্গ ভিত্তিক API সহ।

এপিআই পরিবর্তন

  • অনির্দিষ্ট কেন্দ্র ভাঁজ বৈশিষ্ট্য জন্য ধ্রুবক যোগ করুন. ( I7530c )

বাগ ফিক্স

  • Context ভিত্তিক WindowLayoutInfo এ ওভাররাইড সমর্থন করতে WindowLayoutInfoPublishRule আপডেট করুন। ( I2037a )

সংস্করণ 1.2.0-alpha01

24 মে, 2023

androidx.window:window-*:1.2.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

অ্যাক্টিভিটি এমবেডিং এবং WindowLayoutInfoTracker চারপাশে টেস্টিং API গুলিকে স্থিতিশীল করুন৷ ActivityEmbeddingRule স্থিতিশীল হিসাবে উন্নীত করা হয়েছে। WindowMetricsCalculatorRule স্থিতিশীল হিসাবে উন্নীত করা হয়েছে। পরীক্ষার জন্য একটি FoldingFeature তৈরি করতে ইউটিলিটি ফাংশনগুলিকে স্থিতিশীল হিসাবে উন্নীত করা হয়েছে।

এপিআই পরিবর্তন

  • অ্যাক্টিভিটি এমবেডিং এর চারপাশে ইউনিট টেস্টিং সমর্থন করতে ActivityEmbeddingRule স্থিতিশীল করুন। ( I8d6b6 )
  • WindowMetrisCalculatorTestRule স্থিতিশীল JVM পরীক্ষার জন্য স্টাব মেট্রিক্সের অনুমতি দেয়। আমরা সঠিক ফলাফলের জন্য একটি এমুলেটর ব্যবহার করার পরামর্শ দিই।
  • JVM পরীক্ষা সমর্থন করার জন্য WindowLayoutInfo এর জন্য পরীক্ষা API গুলিকে স্থির করুন। ( IE036e )
  • পরীক্ষা ভাঁজ বৈশিষ্ট্য মান জন্য IntRange যোগ করুন. ( I69f7d )

সংস্করণ 1.1

সংস্করণ 1.1.0

7 জুন, 2023

androidx.window:window-*:1.1.0 প্রকাশিত হয়েছে। সংস্করণ 1.1.0 এই কমিট ধারণ করে.

1.0.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

অ্যাক্টিভিটি এমবেডিং

  • অ্যাপ ম্যানিফেস্টে <application> ট্যাগের বুলিয়ান প্রপার্টি হিসেবে PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED যোগ করা হয়েছে।
  • কেন বিভক্ত বৈশিষ্ট্যটি উপলব্ধ নয় সে সম্পর্কে আরও বিশদ তথ্য প্রদানের জন্য অপ্রচলিত isSplitSupported এবং splitSupportStatus দিয়ে প্রতিস্থাপিত হয়েছে।
  • splitSupportStatus সম্পত্তির জন্য স্টেট কনস্ট্যান্ট প্রদান করতে SplitController.SplitSupportStatus নেস্টেড ক্লাস যোগ করা হয়েছে।
  • বিভিন্ন মডিউলে রিফ্যাক্টর করা SplitController :
    • Activity বা ActivityStack সম্পর্কিত API-এর জন্য ActivityEmbeddingController মডিউল।
    • SplitController থেকে isActivityEmbedded ActivityEmbeddingController সরানো হয়েছে।
    • EmbeddingRule সম্পর্কিত ক্রিয়াকলাপের জন্য RuleController মডিউল:
    • সরানো SplitController APIs:
    • clearRegisteredRules()
    • getSplitRules()
    • initialize()
    • registerRule()
    • unregisterRule()
    • RuleController API যোগ করা হয়েছে:
    • addRule() — একটি নিয়ম যোগ করে বা একই ট্যাগ আছে এমন নিয়ম আপডেট করে।
    • removeRule() — নিবন্ধিত নিয়মের সংগ্রহ থেকে একটি নিয়ম সরিয়ে দেয়।
    • setRules() — নিয়মের একটি সংগ্রহ স্থাপন করে।
    • clearRules() — সমস্ত নিবন্ধিত নিয়ম মুছে দেয়।
    • parseRules() — XML নিয়ম সংজ্ঞা থেকে নিয়ম পার্স করে।
  • সমস্ত মডিউলের জন্য #getInstance() পদ্ধতি দ্বারা আরম্ভ করার জন্য একটি প্রসঙ্গ প্রয়োজন, সহ:
    • ActivityEmbeddingController#getInstance(Context)
    • SplitController#getInstance(Context)
    • RuleController#getInstance(Context)
  • ডিসপ্লে অ্যাসপেক্ট রেশিওর সাথে সম্পর্কিত enum-এর মতো আচরণের ধ্রুবক সংজ্ঞায়িত করতে EmbeddingAspectRatio ক্লাস যোগ করা হয়েছে।
  • বিভক্ত বিন্যাস সংজ্ঞায়িত করতে SplitAttributes ক্লাস যোগ করা হয়েছে।
  • স্প্লিট লেআউট কাস্টমাইজ করতে SplitAttributes ক্যালকুলেটর ফাংশন SplitController এ যোগ করা হয়েছে:
    • setSplitAttributesCalculator(Function)
    • clearSplitAttributesCalculator()
    • isSplitAttributesCalculatorSupported() ডিভাইসে SplitAttributesCalculator API সমর্থিত কিনা তা পরীক্ষা করতে
  • EmbeddingRule#tag ক্ষেত্র যোগ করা হয়েছে।
  • SplitRule এ API আপডেট:
    • যোগ করা হয়েছে defaultSplitAttributes — একটি বিভাজনের ডিফল্ট স্প্লিট বিন্যাস সংজ্ঞায়িত করে; splitRatio এবং layoutDirection প্রতিস্থাপন করে।
    • defaultSplitAttributes এ XML বৈশিষ্ট্য splitRatio এবং splitLayoutDirection এর অনুবাদ যোগ করা হয়েছে।
    • পিক্সেলের পরিবর্তে ঘনত্ব-স্বাধীন পিক্সেল (dp) ব্যবহার করতে ন্যূনতম মাত্রার সংজ্ঞা পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minHeightDp যোগ করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minWidth থেকে minWidthDp এ পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minSmallestWidth থেকে minSmallestWidthDp এ পরিবর্তন করা হয়েছে৷
    • ডিফল্ট মান ALWAYS_ALLOW সহ maxAspectRatioInHorizontal যোগ করা হয়েছে।
    • ডিফল্ট মান 1.4 সহ maxAspectRatioInPortrait যোগ করা হয়েছে।
    • ফিনিশ আচরণ ধ্রুবক প্রতিস্থাপন করতে FinishBehavior নেস্টেড ক্লাস সংজ্ঞায়িত করা হয়েছে।
    • SplitPairRule এবং SplitPlaceholderRule এর বিল্ডার নেস্টেড ক্লাসে সম্পত্তির পরিবর্তনগুলি প্রয়োগ করা হয়েছে।
  • স্প্লিট-সম্পর্কিত অতিরিক্ত তথ্য প্রদানের জন্য SplitInfo#getSplitRatio() SplitInfo#getSplitAttributes() প্রতিস্থাপিত হয়েছে।

উইন্ডো লেআউট

  • WindowInfoTracker এ পরীক্ষামূলক নন-অ্যাক্টিভিটি UI প্রসঙ্গ সমর্থন যোগ করা হয়েছে।
  • WindowMetricsCalculator এ পরীক্ষামূলক নন-অ্যাক্টিভিটি UI প্রসঙ্গ যোগ করা হয়েছে।

মাইগ্রেশন ধাপ

  • বিভাজনে ক্রিয়াকলাপগুলি প্রদর্শনের জন্য অ্যাক্টিভিটি এমবেডিং সক্ষম করতে, অ্যাপগুলিকে ম্যানিফেস্ট <application> ট্যাগে PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED বৈশিষ্ট্য যোগ করতে হবে: xml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" /> এই অনুমতি দেয় সময়ের আগে একটি অ্যাপ্লিকেশনের জন্য বিভক্ত আচরণ অপ্টিমাইজ করার জন্য সিস্টেম।
  • SplitInfo অনুপাত
    • বর্তমান স্প্লিট স্ট্যাক করা আছে কিনা দেখুন: kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
    • বর্তমান অনুপাত পরীক্ষা করুন: kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
  • স্প্লিটকন্ট্রোলার মাইগ্রেশন:
    • SplitController.getInstance() SplitController.getInstance(Context) এ পরিবর্তন হয়।
    • SplitController.initialize(Context, @ResId int) RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int)) এ পরিবর্তন হয়।
    • SplitController.getInstance().isActivityEmbedded(Activity) ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity)
    • SplitController.getInstance().registerRule(rule) RuleController.getInstance(Context).addRule(rule)
    • SplitController.getInstance().unregisterRule(rule) পরিবর্তন করে RuleController.getInstance(Context).removeRule(rule)
    • SplitController.getInstance().clearRegisteredRules() RuleController.getInstance(Context).clearRules() এ পরিবর্তন হয়।
    • SplitController.getInstance().getSplitRules() RuleController.getInstance(Context).getRules() এ পরিবর্তন হয়।
  • SplitRule সম্পত্তি স্থানান্তর:
    • minWidth এবং minSmallestWidth এখন পিক্সেলের পরিবর্তে dp ইউনিট ব্যবহার করে। অ্যাপগুলি নিম্নলিখিত কলটি ব্যবহার করতে পারে: kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics ) অথবা কেবল displayMetrics#density দ্বারা minWith পিক্সেলে ভাগ করুন।
  • ফিনিশ আচরণের ধ্রুবকগুলি অবশ্যই FinishBehavior enum-এর মতো শ্রেণী ধ্রুবকগুলিতে স্থানান্তরিত করতে হবে:
    • FINISH_NEVER FinishBehavior.NEVER এ পরিবর্তন হয় না।
    • FINISH_ALWAYS FinishBehavior.ALWAYS এ পরিবর্তন হয়।AlWAYS।
    • FINISH_ADJACENT পরিবর্তিত হয়েছে FinishBehavior.ADJACENT
  • লেআউটের দিকনির্দেশকে অবশ্যই SplitAttributes.LayoutDirection এ স্থানান্তরিত করতে হবে:
    • ltr পরিবর্তন করে SplitAttributes.LayoutDirection.LEFT_TO_RIGHT .
    • rtl পরিবর্তন করে SplitAttributes.LayoutDirection.RIGHT_TO_LEFT .
    • SplitAttributes.LayoutDirection.LOCALElocale পরিবর্তন হয়।
    • splitRatio অবশ্যই SplitAttributes.SplitType.ratio(splitRatio) এ স্থানান্তরিত হতে হবে।
  • SplitPairRule.Builder মাইগ্রেশন:
    • SplitPairRule.Builder(filters, minWidth, minSmallestWidth) kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
    • setLayoutDirection(layoutDirection) এবং setSplitRatio(ratio) kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • setFinishPrimaryWithSecondary এবং setFinishSecondaryWithPrimary FinishBehavior enum-এর মতো ধ্রুবক গ্রহণ করে। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন।
    • পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) ব্যবহার করুন।
  • SplitPlaceholder.Builder মাইগ্রেশন:
    • শুধুমাত্র filters এবং placeholderIntent প্যারামিটার আছে। অন্যান্য বৈশিষ্ট্য সেটটারে চলে যায়। বিস্তারিত জানার জন্য "SplitPairRule.Builder মাইগ্রেশন" দেখুন।
    • setFinishPrimaryWithPlaceholder FinishBehavior enum-এর মতো ধ্রুবক নেয়। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন।
    • setLayoutDirection(layoutDirection) এবং setSplitRatio(ratio) এতে পরিবর্তন করুন: kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) ব্যবহার করুন।

সংস্করণ 1.1.0-rc01

10 মে, 2023

androidx.window:window-*:1.1.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-rc01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • একটি স্থিতিশীল API হিসাবে ActivityEmbedding প্রকাশ করুন।
  • বিভিন্ন বাগ ফিক্স।

সংস্করণ 1.1.0-beta02

5 এপ্রিল, 2023

androidx.window:window-*:1.1.0-beta02 প্রকাশিত হয়েছে। 1.1.0-beta02 সংস্করণে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • অভ্যন্তরীণ সংশোধন করুন এবং পরিষ্কার করুন।

সংস্করণ 1.1.0-beta01

22 মার্চ, 2023

androidx.window:window-*:1.1.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-beta01-এ এই কমিট রয়েছে।

অ্যাক্টিভিটি এমবেডিং

  • অ্যাপ ম্যানিফেস্টে <application> ট্যাগের বুলিয়ান প্রপার্টি হিসেবে PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED যোগ করা হয়েছে।
  • কেন বিভক্ত বৈশিষ্ট্যটি উপলব্ধ নয় সে সম্পর্কে আরও বিশদ তথ্য প্রদানের জন্য অপ্রচলিত isSplitSupported এবং splitSupportStatus দিয়ে প্রতিস্থাপিত হয়েছে।
  • splitSupportStatus সম্পত্তির জন্য স্টেট কনস্ট্যান্ট প্রদান করতে SplitController.SplitSupportStatus নেস্টেড ক্লাস যোগ করা হয়েছে।
  • বিভিন্ন মডিউলে রিফ্যাক্টর করা SplitController :
    • Activity বা ActivityStack সম্পর্কিত API-এর জন্য ActivityEmbeddingController মডিউল।
    • SplitController থেকে isActivityEmbedded ActivityEmbeddingController সরানো হয়েছে।
    • EmbeddingRule সম্পর্কিত ক্রিয়াকলাপের জন্য RuleController মডিউল:
    • সরানো SplitController APIs:
      • clearRegisteredRules()
      • getSplitRules()
      • initialize()
      • registerRule()
      • unregisterRule()
    • RuleController API যোগ করা হয়েছে:
      • addRule() — একটি নিয়ম যোগ করে বা একই ট্যাগ আছে এমন নিয়ম আপডেট করে।
      • removeRule() — নিবন্ধিত নিয়মের সংগ্রহ থেকে একটি নিয়ম সরিয়ে দেয়।
      • setRules() — নিয়মের একটি সংগ্রহ স্থাপন করে।
      • clearRules() — সমস্ত নিবন্ধিত নিয়ম মুছে দেয়।
      • `parseRules() — XML নিয়ম সংজ্ঞা থেকে নিয়ম পার্স করে।
  • সমস্ত মডিউলের জন্য #getInstance() পদ্ধতি দ্বারা আরম্ভ করার জন্য একটি প্রসঙ্গ প্রয়োজন, সহ:
    • ActivityEmbeddingController#getInstance(Context)
    • SplitController#getInstance(Context)
    • RuleController#getInstance(Context)
  • ডিসপ্লে অ্যাসপেক্ট রেশিওর সাথে সম্পর্কিত enum-এর মতো আচরণের ধ্রুবক সংজ্ঞায়িত করতে EmbeddingAspectRatio ক্লাস যোগ করা হয়েছে।
  • বিভক্ত বিন্যাস সংজ্ঞায়িত করতে SplitAttributes ক্লাস যোগ করা হয়েছে।
  • স্প্লিট লেআউট কাস্টমাইজ করতে SplitAttributes ক্যালকুলেটর ফাংশন SplitController এ যোগ করা হয়েছে:
    • setSplitAttributesCalculator(Function)
    • clearSplitAttributesCalculator()
    • isSplitAttributesCalculatorSupported() ডিভাইসে SplitAttributesCalculator API সমর্থিত কিনা তা পরীক্ষা করতে
  • EmbeddingRule#tag ক্ষেত্র যোগ করা হয়েছে।
  • SplitRule এ API আপডেট:
    • যোগ করা হয়েছে defaultSplitAttributes — একটি বিভাজনের ডিফল্ট স্প্লিট বিন্যাস সংজ্ঞায়িত করে; splitRatio এবং layoutDirection প্রতিস্থাপন করে।
    • defaultSplitAttributes এ XML বৈশিষ্ট্য splitRatio এবং splitLayoutDirection এর অনুবাদ যোগ করা হয়েছে।
    • পিক্সেলের পরিবর্তে ঘনত্ব-স্বাধীন পিক্সেল (dp) ব্যবহার করতে ন্যূনতম মাত্রার সংজ্ঞা পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minHeightDp যোগ করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minWidth থেকে minWidthDp এ পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minSmallestWidth থেকে minSmallestWidthDp এ পরিবর্তন করা হয়েছে৷
    • ডিফল্ট মান ALWAYS_ALLOW সহ maxAspectRatioInHorizontal যোগ করা হয়েছে।
    • ডিফল্ট মান 1.4 সহ maxAspectRatioInPortrait যোগ করা হয়েছে।
    • ফিনিশ আচরণ ধ্রুবক প্রতিস্থাপন করতে FinishBehavior নেস্টেড ক্লাস সংজ্ঞায়িত করা হয়েছে।
    • SplitPairRule এবং SplitPlaceholderRule এর Builder নেস্টেড ক্লাসে সম্পত্তির পরিবর্তনগুলি প্রয়োগ করা হয়েছে।
  • স্প্লিট-সম্পর্কিত অতিরিক্ত তথ্য প্রদানের জন্য SplitInfo#getSplitRatio() SplitInfo#getSplitAttributes() প্রতিস্থাপিত হয়েছে।

উইন্ডো লেআউট

  • WindowInfoTracker এ নন-অ্যাক্টিভিটি UI প্রসঙ্গ সমর্থন যোগ করা হয়েছে।
  • WindowMetricsCalculator এ নন-অ্যাক্টিভিটি UI প্রসঙ্গ যোগ করা হয়েছে।

মাইগ্রেশন ধাপ

  • বিভাজনে ক্রিয়াকলাপগুলি প্রদর্শনের জন্য অ্যাক্টিভিটি এমবেডিং সক্ষম করতে, অ্যাপগুলিকে ম্যানিফেস্ট <application> ট্যাগে PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED বৈশিষ্ট্য যোগ করতে হবে: xml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" /> এই অনুমতি দেয় সময়ের আগে একটি অ্যাপ্লিকেশনের জন্য বিভক্ত আচরণ অপ্টিমাইজ করার জন্য সিস্টেম।
  • SplitInfo অনুপাত
    • বর্তমান স্প্লিট স্ট্যাক করা আছে কিনা দেখুন: kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
    • বর্তমান অনুপাত পরীক্ষা করুন: kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
  • SplitController মাইগ্রেশন:
    • SplitController.getInstance() SplitController.getInstance(Context) এ পরিবর্তন হয়।
    • SplitController.initialize(Context, @ResId int) RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int)) এ পরিবর্তন হয়।
    • SplitController.getInstance().isActivityEmbedded(Activity) ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity)
    • SplitController.getInstance().registerRule(rule) RuleController.getInstance(Context).addRule(rule)
    • SplitController.getInstance().unregisterRule(rule) পরিবর্তন করে RuleController.getInstance(Context).removeRule(rule)
    • SplitController.getInstance().clearRegisteredRules() RuleController.getInstance(Context).clearRules() এ পরিবর্তন হয়।
    • SplitController.getInstance().getSplitRules() RuleController.getInstance(Context).getRules() এ পরিবর্তন হয়।
  • SplitRule সম্পত্তি স্থানান্তর:
    • minWidth এবং minSmallestWidth এখন পিক্সেলের পরিবর্তে dp ইউনিট ব্যবহার করে। অ্যাপগুলি নিম্নলিখিত কলটি ব্যবহার করতে পারে: kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics ) অথবা কেবল displayMetrics#density দ্বারা minWith পিক্সেলে ভাগ করুন।
  • ফিনিশ আচরণের ধ্রুবকগুলি অবশ্যই FinishBehavior enum-এর মতো শ্রেণী ধ্রুবকগুলিতে স্থানান্তরিত করতে হবে:
    • FINISH_NEVER FinishBehavior.NEVER এ পরিবর্তন হয় না।
    • FINISH_ALWAYS FinishBehavior.ALWAYS এ পরিবর্তন হয়।AlWAYS।
    • FINISH_ADJACENT পরিবর্তিত হয়েছে FinishBehavior.ADJACENT
  • লেআউটের দিকনির্দেশকে অবশ্যই SplitAttributes.LayoutDirection এ স্থানান্তরিত করতে হবে:
    • ltr পরিবর্তন করে SplitAttributes.LayoutDirection.LEFT_TO_RIGHT .
    • rtl পরিবর্তন করে SplitAttributes.LayoutDirection.RIGHT_TO_LEFT .
    • SplitAttributes.LayoutDirection.LOCALElocale পরিবর্তন হয়।
    • splitRatio অবশ্যই SplitAttributes.SplitType.ratio(splitRatio) এ স্থানান্তরিত হতে হবে।
  • SplitPairRule.Builder মাইগ্রেশন:
    • SplitPairRule.Builder(filters, minWidth, minSmallestWidth) kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
    • setLayoutDirection(layoutDirection) এবং setSplitRatio(ratio) kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() ) এ পরিবর্তন করুন।
    • setFinishPrimaryWithSecondary এবং setFinishSecondaryWithPrimary FinishBehavior enum-এর মতো ধ্রুবক গ্রহণ করে। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন।
    • পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) ব্যবহার করুন।
  • SplitPlaceholder.Builder মাইগ্রেশন:
    • শুধুমাত্র filters এবং placeholderIntent প্যারামিটার আছে। অন্যান্য বৈশিষ্ট্য সেটটারে চলে যায়। বিস্তারিত জানার জন্য "SplitPairRule.Builder মাইগ্রেশন" দেখুন।
    • setFinishPrimaryWithPlaceholder FinishBehavior enum-এর মতো ধ্রুবক নেয়। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন।
    • setLayoutDirection(layoutDirection) এবং setSplitRatio(ratio) এতে পরিবর্তন করুন: kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) ব্যবহার করুন।

সংস্করণ 1.1.0-alpha06

22 ফেব্রুয়ারি, 2023

androidx.window:window-*:1.1.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha06-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • একটি UI প্রসঙ্গ থেকে WindowLayoutInfo পাওয়ার পরীক্ষামূলক সংস্করণ প্রকাশ করুন।

এপিআই পরিবর্তন

  • অ্যাক্টিভিটি এমবেডিং উপলব্ধ কিনা তা নির্দেশ করতে splitSupportStatus যোগ করুন। ( I10024 )
  • পরীক্ষামূলক হিসাবে UI প্রসঙ্গ WindowLayoutInfo API তৈরি করুন। ( I58ee0 )
  • RearDisplay মোড সক্ষম করতে WindowAreaController এবং API-এর সাথে বর্তমান উইন্ডোটিকে রিয়ার ক্যামেরার সাথে সারিবদ্ধ ডিসপ্লেতে সরানোর জন্য চালু করে। ( IFfcbf )
  • ডিফল্ট পটভূমির রঙ আপডেট করুন। ( I1ac1b )
  • SplitAttributes params যোগ করুন। ( I18bdd )
  • SplitRule , SplitAttributes , SplitAttributesCalculator এর জন্য API যোগ করুন। ( I92d23 )
  • maxAspectRatio চারপাশে API গুলি উন্নত করুন:
    1. ALWAYS_ALLOW এবং ALWAYS_DISALLOW দিয়ে alwaysAllow() এবং alwaysDisallow() প্রতিস্থাপন করুন।
    2. স্বতন্ত্র ডকুমেন্টেশন সহ @see-এর API ডকুমেন্টেশন আপডেট করুন। ( I3057b )
  • নিম্নলিখিত কনস্ট্রাক্টরগুলিকে সর্বজনীন API থেকে সরানো হয়েছে কারণ তাদের অ্যাপগুলির দ্বারা কল করার কথা নয়৷
    • SplitInfo কনস্ট্রাক্টর
    • ActivityStack কনস্ট্রাক্টর ( Ide534 )
  • SplitRule এখন maxAspectRatioInPortrait/Landscape নেয়। এটি কেবল তখনই ক্রিয়াকলাপগুলিকে বিভক্ত করার অনুমতি দেয় যখন পিতামাতার সীমানার দিক অনুপাতটি অনুরোধ করা maxAspectRatio চেয়ে ছোট বা সমান হয়। ( Ia5990 )
  • স্ট্যাটিক হতে RuleController#parseRules পরিবর্তন করুন ( i785df )
  • ক্রিয়াকলাপের চারপাশে এপিআইগুলি উন্নত করুন
    1. এপিআই নামকরণটি সারিবদ্ধ করুন - একাধিক দৃষ্টান্তের জন্য অ্যাড/সরান ব্যবহার করুন:
    2. addRule পরিবর্তনগুলি registerRule
    3. removeRule unregisterRule পরিবর্তন
    4. getSplitRules getRules দিয়ে প্রতিস্থাপন করুন যেহেতু ActivityRule কোনও বিভক্ত নিয়ম নয়
    5. বিধিগুলির একগুচ্ছ সেট করতে RuleController#setRules যুক্ত করুন
    6. SplitController থেকে সিঙ্গেলটন RuleController পর্যন্ত বিধি সম্পর্কিত এপিআইগুলি বের করুন। তারা হল:
    7. addRule
    8. removeRule
    9. getRules
    10. setRules
    11. clearRules
    12. parseRules
    13. SplitController থেকে সিঙ্গেলটন ActivityEmbeddingController পর্যন্ত #isActivityEmbedded এক্সট্রাক্ট করুন। তারা হল:
    14. isActivityEmbedded
    15. SplitController#initialize । এক্সএমএল ফাইল থেকে নিয়ম সেট করতে, দয়া করে RuleController#parseRules এবং #setRules ব্যবহার করুন। এই পরিবর্তনের আগে: SplitController.initialize(context, R.xml.static_rules) এই পরিবর্তনের পরে: val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules)
    16. আমরা আর রানটাইম বিধিগুলির সাথে স্থির নিয়মকে আলাদা করি না। এটি বলেছে যে, স্ট্যাটিক এক্সএমএল বিধি সংজ্ঞা বা রানটাইমে নিবন্ধিত না হওয়া সমস্ত নিয়ম সাফ করার জন্য #clearRules ফলাফল কল করে। SplitController#clearRegisteredRules উত্তরাধিকার আচরণটি হ্যাভ করার জন্য, দয়া করে এক্সএমএল রিসোর্স আইডির সাথে RuleController#parseRules কল করুন এবং নিয়মগুলি আবার সেট করার জন্য RuleController#setRules কল করুন। এই পরিবর্তনের আগে: SplitController.getInstance(context).clearRegisteredRules() ) val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules)
  • স্প্লিটরুল এপিআইগুলি উন্নত করুন:
    1. SplitRule জন্য পিক্সেলের পরিবর্তে ডিপিতে ন্যূনতম মাত্রা নিন।
    2. SplitRule নির্মাতার জন্য রিফ্যাক্টর Min চ্ছিক হিসাবে ন্যূনতম মাত্রা নিতে। ( I95f17 )
  • SplitController ( আই 42549 ) আরম্ভ করতে একটি প্রসঙ্গ পাস করুন
  • SplitRule#layoutDir নামকরণ করুন# #layoutDirection এবং SplitRule Builder#setLayoutDir থেকে Builder#setLayoutDirection । ( I3f6d1 )

সংস্করণ 1.1.0-Alpha04

9 নভেম্বর, 2022

androidx.window:window-*:1.1.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA04 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • ActivityStack জন্য কোনও ActivityEmbedding জন্য খালি রয়েছে কিনা তা নির্ধারণের জন্য একটি পদ্ধতি প্রকাশ করুন।
  • ActivityEmbedding এপিআই থেকে পরীক্ষামূলক এপিআই ট্যাগগুলি সরানো হয়েছে।
  • Builder হিসাবে ActivityRule কনস্ট্রাক্টর লুকান, এটি নির্মাণের পছন্দের উপায়।
  • WindowMetrics WindowInsets পেতে একটি পরীক্ষামূলক পদ্ধতি যুক্ত করুন।
  • স্থানধারক সমাপ্তি রোধ করতে SplitPlaceholderFinishBehavior আপডেট করুন। স্থানধারক শেষ করার ফলে কিছু বিভ্রান্তিকর আচরণ হয়েছিল।

এপিআই পরিবর্তন

  • isEmpty প্রতিস্থাপনের জন্য ভ্যাল isEmpty জনসাধারণকে তৈরি করুন।
  • activitiesInProcess জন্য ActivityStack প্যারামিটার ক্রিয়াকলাপের নাম পরিবর্তন করুন। ( IA5055 )
  • ActivityFilter#matchesClassName এবং ActivityFilter#matchesClassNameOrWildCard সরান কারণ তারা বিভ্রান্তিকর।
  • ActivityFilter#componentName ABD ActivityFilter#intentAction কলারকে বিভিন্ন ফিল্টারকে আলাদা করার অনুমতি দেয় ( i41f22 )
  • পরীক্ষামূলক এপিআই ( আই 216 বি 3 ) থেকে @Deprecated এপিআইগুলি সরান
  • ক্রিয়াকলাপ এম্বেডিং এপিআই ( i69ebe ) এর জন্য @ExperimentalWindowApi সরান
  • ActivityRule কনস্ট্রাক্টর লুকান, পরিবর্তে বিল্ডার ব্যবহার করুন। ( If4eb6 )
  • কোনও ক্রিয়াকলাপ ActivityFilter অংশ কিনা তা পরীক্ষা করতে এপিআই যুক্ত করুন। ( আইএ 43 সিএফ )
  • WindowMetrics এবং WindowMetricsCalculatorCompat ক্লাসগুলির পরিবর্তনগুলি প্রতিফলিত করতে এপিআই ফাইলগুলি আপডেট করুন ( i667fe )
  • আপডেট ActivityEmbedding জাভাডোক এবং শ্রেণীর নাম ( আইএ 1386 )
  • অ্যান্ড্রয়েডম্যানিফেস্ট.এক্সএমএল ( আইডি 1 এড 4 ) এ ব্যবহার করার জন্য ক্রিয়াকলাপের ট্যাগের নামগুলি ActivityEmbedding যুক্ত করা হচ্ছে
  • নতুন এপিআই SplitPlaceholderFinishBehavior এবং SplitPlaceholderRule.finishPrimaryWithPlaceholder যুক্ত করা হয়েছে, এটি বিদ্যমান SplitPlaceholderRule.finishPrimaryWithSecondary উইথসেকেন্ডারি প্রতিস্থাপন করে যা স্থানধারক অ্যাক্টিভেটগুলি শেষ হওয়ার পরে কীভাবে সংজ্ঞায়িত করে, ক্রিয়াকলাপের এম্বেডিংয়ে কীভাবে সম্পর্কিত ক্রিয়াকলাপগুলি আচরণ করা উচিত। ( I64647 )

বাগ ফিক্স

  • রিয়ারডিসপ্লে মোডকে বর্তমান উইন্ডোটি রিয়ার ক্যামেরার সাথে সংযুক্ত করে এমন ডিসপ্লেতে সরাতে RearDisplay মোড সক্ষম করতে WindowAreaController এবং এপিআই'র পরিচয় করিয়ে দেয়। ( I388ab )

সংস্করণ 1.1.0-Alpha03

জুলাই 27, 2022

androidx.window:window-*:1.1.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA03 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • এম্বেডিং বিধিগুলির জন্য ডিফল্ট মানগুলি আপডেট করুন।

এপিআই পরিবর্তন

  • এম্বেডিং নিয়মের বৈশিষ্ট্যগুলির জন্য ডিফল্ট মানগুলি আপডেট করুন। ( আইসি 4 ডি 35 )

সংস্করণ 1.1.0-Alpha02

11 মে, 2022

androidx.window:window-*:1.1.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA02 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • জাভা এবং আরএক্সজাভা সমর্থন করার জন্য অ্যাডাপ্টার লাইব্রেরিগুলি প্রকাশ করুন।

সংস্করণ 1.1.0-Alpha01

11 মে, 2022

androidx.window:window-*:1.1.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA01 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • জাভা এবং আরএক্সজাভা সমর্থন করার জন্য অ্যাডাপ্টারগুলি প্রকাশ করুন

সংস্করণ 1.1.0-Alpha01

20 এপ্রিল, 2022

androidx.window:window:1.1.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.1.0-ALPHA01 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • একটি বাগ ঠিক করে যেখানে কোনও অ্যাপ্লিকেশন ব্যাকগ্রাউন্ডিং ভাঁজ বৈশিষ্ট্যগুলি নির্গমন বন্ধ করে দেয়।
  • পরীক্ষামূলক ক্রিয়াকলাপ এপিআই -তে প্রসারিত করুন।

এপিআই পরিবর্তন

  • কোনও ক্রিয়াকলাপ এম্বেড করা হচ্ছে কিনা তা যাচাই করার জন্য একটি পাবলিক এপিআই। ( I39eb7 )

বাগ ফিক্স

  • ক্রিয়াকলাপ বিভক্ত ( i1a1e4 ) ধারকগুলির জন্য সমাপ্তি আচরণ কাস্টমাইজ করুন এমন এপিআই যুক্ত করুন
  • ক্রিয়াকলাপ বিভক্ত নিয়মের জন্য একটি নতুন কনফিগারেশন বিকল্প যুক্ত করেছে। ( আইইসি 6 এএফ )

সংস্করণ 1.0

সংস্করণ 1.0.0

জানুয়ারী 26, 2022

androidx.window:window-*:1.0.0 প্রকাশিত হয়েছে। সংস্করণ 1.0.0 এ এই কমিটস রয়েছে।

1.0.0 এর প্রধান বৈশিষ্ট্য

  • WindowInfoTracker এবং FoldingFeature মাধ্যমে ফোনগুলি ভাঁজ করার জন্য সমর্থন। বর্তমান উইন্ডোমেট্রিক্স গণনা করতে সহায়তা করার জন্য WindowMetricsCalculator

সংস্করণ 1.0.0-আরসি 01

15 ডিসেম্বর, 2021

androidx.window:window-*:1.0.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0.0-RC01 এর মধ্যে এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • WindowInfoTracker মাধ্যমে ভাঁজ ফোনগুলির জন্য সমর্থন যুক্ত করুন।
  • বর্তমান এবং সর্বাধিক WindowMetrics গণনা করতে পদ্ধতি যুক্ত করুন।
  • সহায়ক পরীক্ষার এপিআই যুক্ত করুন।

সংস্করণ 1.0.0-BETA04

17 নভেম্বর, 2021

androidx.window:window-*:1.0.0-beta04 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA04 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

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

এপিআই পরিবর্তন

  • এক্সটেনশনগুলি এক্সট্রাক্ট করুন ( i25a5f )
  • ক্রিয়াকলাপের মধ্যে ইসম্বি যুক্ত করুন ( i5a4e6 )
  • উইন্ডোইনফোট্র্যাকারে উইন্ডোইনফোরপোসিটরিটির নাম পরিবর্তন করুন।
    • ম্যাচ করার জন্য জাভা/আরএক্সজাভা/পরীক্ষার নির্ভরতা আপডেট করুন। ( I0da63 )
  • একটি সাধারণ উইন্ডোমেট্রিক্সক্যালকুলেটরের জন্য একটি পরীক্ষার নিয়ম যুক্ত করুন। ( আইব্যাকডিবি )

সংস্করণ 1.0.0-BETA03

27 অক্টোবর, 2021

androidx.window:window-*:1.0.0-beta03 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA03 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

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

এপিআই পরিবর্তন

  • কারেন্টউইন্ডোমেট্রিক্স এপিআই সরানো হয়েছে যেহেতু আমরা এটি সঠিকভাবে সরবরাহ করতে পারি না। পরিবর্তে উইন্ডোমেট্রিক্সক্যালকুলেটর ব্যবহার করুন ( আইসিডিএ 5 এফ )
  • এক্সটেনশন এপিআই আপডেট করেছে। ( আইসিএ 92 বি )
  • একটি নতুন বৈশিষ্ট্যের জন্য একটি ইন্টারফেস যুক্ত করা হয়েছে যা এম্বেডিং ক্রিয়াকলাপগুলিকে অনুমতি দেয় এবং প্যারেন্ট টাস্ক উইন্ডোতে পাশাপাশি পাশাপাশি দেখানোর অনুমতি দেয়। ( I5711d )
  • উইন্ডোমেট্রিক্স এবং উইন্ডোওয়েআউটআইএনএফওর জন্য কনস্ট্রাক্টরগুলি লুকিয়ে রাখুন, দয়া করে পরিবর্তে পরীক্ষার এপিআই ব্যবহার করুন। ( I5a1b5 )
  • নকল উইন্ডোওয়েআউটআইএনএফও অবজেক্ট তৈরি করতে একটি এপিআই যুক্ত করুন। ( I4a2fd )

বাগ ফিক্স

সংস্করণ 1.0.0-BETA02

1 সেপ্টেম্বর, 2021

androidx.window:window-*:1.0.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA02 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • পরীক্ষামূলক এপিআইগুলিকে টীকা দেওয়ার জন্য একটি পরীক্ষামূলক টীকা যুক্ত করুন। ( I9f1b6 )
  • একটি পরীক্ষা ভাঁজ করে যা একটি রেক্ট গ্রহণ করে যা একটি পরীক্ষা গ্রহণ করে একটি পরীক্ষা পদ্ধতি যুক্ত করুন। প্রকৃত ক্রিয়াকলাপের বিপরীতে রোবোলেক্ট্রিক ব্যবহার করার সময় এটি পরীক্ষা করা সহজ করে তুলবে। ( আইডি 1 সিসিএ )

সংস্করণ 1.0.0-BETA01

18 আগস্ট, 2021

androidx.window:window-*:1.0.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-BETA01 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • পুরানো ধ্রুবকগুলি সরিয়ে ফেলা হয়েছে এবং একটি ইন্টারফেসে FoldingFeature তৈরি করেছে।

এপিআই পরিবর্তন

  • পুরানো ধ্রুবকগুলি সরান এবং ফোল্ডফ্যাচারকে একটি ইন্টারফেস তৈরি করুন। ( I9a2d5 )

বাগ ফিক্স

  • Test Core লাইব্রেরির উপর নির্ভরশীল গ্রন্থাগারগুলি সংস্করণ 1.4.0 এ আপগ্রেড করা হয়েছে এবং এখন অ্যান্ড্রয়েড প্ল্যাটফর্ম সংস্করণ এস ( আই 88 বি 72 , বি/189353863 ) এর সাথে কাজ করবে

সংস্করণ 1.0.0-আলফা 10

4 আগস্ট, 2021

androidx.window:window-*:1.0.0-alpha10 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-আলফা 10 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

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

এপিআই পরিবর্তন

  • ক্রিয়াকলাপের নতুন করে ক্রিয়াকলাপ এক্সটেনশনস এক্সটেনশনের রেপো থেকে সংগ্রহস্থলে পরিবর্তিত হয়। ( I61a16 )
  • ক্লাসগুলির জন্য প্যাকেজ আপডেট করুন। ( I23ae2 )
  • উইন্ডোইনফোরপো থেকে উইন্ডোমেট্রিক্স সরান ( i24663 )
  • উইন্ডো ম্যানেজার সরান এবং উইন্ডোইনফোরপো ব্যবহার করুন
    • উইন্ডোব্যাকেন্ডকে অভ্যন্তরীণ করুন। ( I06d9a )
  • উইন্ডো মেট্রিকগুলি প্রবাহে রূপান্তর করুন।
    • উইন্ডোইনফোরপোকালব্যাকডাপ্টারে জাভা অ্যাডাপ্টারের নাম পরিবর্তন করুন
    • কলব্যাকফ্লো সরান যাতে আর কোনও পরীক্ষামূলক এপিআই ব্যবহার করা হয় না। ( আইএ 4 ডি 15 )
  • পরীক্ষা প্রদর্শন বৈশিষ্ট্য তৈরি করতে সহায়ক পদ্ধতি যুক্ত করুন।
    • অবলম্বনমোড থেকে অবসন্নতা টাইপ ( if4cff ) এ পরিবর্তন করুন

বাগ ফিক্স

  • প্রোগুয়ার্ড ত্রুটিটি ঠিক করুন যেখানে কোর লাইব্রেরি সরানো হচ্ছে।
  • ত্রুটি ঠিক করুন যেখানে উইন্ডোআউআউটআইএনএফও অতিরিক্ত গ্রাহকদের কাছে সরবরাহ করা হচ্ছে না।
  • ত্রুটি সমাধান করুন যেখানে কনফিগার পরিবর্তনগুলি ফোল্ডিং বৈশিষ্ট্য আপডেটগুলি ট্রিগার করবে না।

সংস্করণ 1.0.0-Alpha09

৩০ জুন, ২০২১

androidx.window:window-*:1.0.0-alpha09 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA09 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • পূর্ণসংখ্যার ধ্রুবক থেকে সীমাহীন এনামগুলিতে পরিবর্তন করুন।
  • টেস্ট ভাঁজ বৈশিষ্ট্যগুলি তৈরি করতে একটি পরীক্ষার ইউটিল যুক্ত করুন।

এপিআই পরিবর্তন

  • পরীক্ষা প্রদর্শন বৈশিষ্ট্য তৈরি করতে সহায়ক পদ্ধতি যুক্ত করুন। ( I3cf54 )
    • occlusionMode থেকে occlusionType টাইপে পরিবর্তন করুন।

বাগ ফিক্স

  • ডেটা স্ট্রিমগুলির একাধিক গ্রাহক যুক্ত করার সময় প্রাথমিক মান নির্গত করুন।

সংস্করণ 1.0.0-Alpha08

16 জুন, 2021

androidx.window:window-*:1.0.0-alpha08 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA08 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

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

সংস্করণ 1.0.0-Alpha07

2 জুন, 2021

androidx.window:window-*:1.0.0-alpha07 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA07 এর মধ্যে এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • কোরলিনে কোর উইন্ডো লাইব্রেরিটি স্থানান্তর করুন। অ্যাসিঙ্ক্রোনাস ডেটা এগিয়ে যাওয়ার জন্য কোরুটাইন এবং স্থগিত ফাংশনগুলি ব্যবহার করবে।
  • উইন্ডোমেট্রিক্স এবং উইন্ডোওয়েআউটআইএনএফওর প্রবাহ পাওয়ার জন্য মূল ইন্টারঅ্যাকশন পয়েন্ট হিসাবে উইন্ডোইনফোরপো যুক্ত করুন।
  • নতুন window-java আর্টিফ্যাক্ট জাভা-বান্ধব এপিআইগুলি প্রকাশ করতে এবং নিবন্ধভুক্ত কলব্যাকগুলি নিবন্ধভুক্ত করতে।
  • নতুন window-rxjava2 এবং window-rxjava3 শিল্পকর্মগুলি আরএক্সজাভা অভিযোজিত এপিআইগুলি প্রকাশ করতে।

এপিআই পরিবর্তন

  • সমানভাবে নির্ভরতা সরবরাহ করতে WindowServices যুক্ত করুন।
    • উইন্ডো লেআউট তথ্য গ্রাস করতে করুটাইন ভিত্তিক এপিআই যুক্ত করুন। ( আইএবি 70 এফ )
  • কোরলিনে কোর উইন্ডো ম্যানেজার লাইব্রেরি স্থানান্তর করুন। ( আইসিসিএ 34 )

বাগ ফিক্স

  • বৈশিষ্ট্য সীমানা উপস্থাপন করতে নতুন ডেটা ক্লাস যুক্ত করুন। ( I6dcd1 )

সংস্করণ 1.0.0-Alpha06

5 মে, 2021

androidx.window:window:1.0.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA06 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

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

এপিআই পরিবর্তন

  • নির্ভরতা হিসাবে কোটলিন যুক্ত করা।
    • কোরলিনে কোর লাইব্রেরি স্থানান্তর করুন। ( আইডিডি 995 )
  • DisplayFeature নির্মাতা সরানো হয়েছে। ( I61fa4 )
  • পাবলিক এপিআই থেকে DeviceState সরানো, পরিবর্তে FoldingFeature ব্যবহার করুন। ( ID6079 )
  • এক্সটেনশনগুলি থেকে ডিভাইস স্টেট কলব্যাক সরান। ( I5ea83 )
  • ফোল্ডিংফেচার থেকে STATE_FLIPPED সরান। ( I9c4e1 )
  • অবমূল্যায়িত নিবন্ধকরণ পদ্ধতিগুলি সরান। ( আইবি 381 বি )

সংস্করণ 1.0.0-Alpha05

24 মার্চ, 2021

androidx.window:window:1.0.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA05 এর মধ্যে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

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

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

এপিআই পরিবর্তন

  • ফোল্ডিংফেচারগুলির সাথে কাজ করার জন্য সুবিধার্থে পদ্ধতি যুক্ত করুন ( আইই 733 এফ )
  • উইন্ডো ম্যানেজার থেকে সিঙ্ক্রোনাস রিড পদ্ধতিগুলি সরিয়ে দেয় ( i96fd4 )

সংস্করণ 1.0.0-Alpha04

10 মার্চ, 2021

androidx.window:window:1.0.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA04 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

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

বাগ ফিক্স

  • ওএম লাইব্রেরি অনুপস্থিত থাকলে একটি খালি মান নির্গত করুন। ( আইডিই 935 )

সংস্করণ 1.0.0-Alpha03

18 ফেব্রুয়ারি, 2021

androidx.window:window:1.0.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA03 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

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

বাগ ফিক্স

  • ওএম লাইব্রেরি অনুপস্থিত থাকলে একটি খালি মান নির্গত করুন। ( আইডিই 935 )

সংস্করণ 1.0.0-Alpha02

জানুয়ারী 27, 2021

androidx.window:window:1.0.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA02 এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

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

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

  • উইন্ডো সম্পর্কে মেট্রিকের জন্য জিজ্ঞাসা করার জন্য বিকাশকারীদের একটি সহজ উপায় সরবরাহ করার জন্য অ্যান্ড্রয়েড 11 এ উইন্ডোমেট্রিক্স চালু করা হয়েছিল, উদাহরণস্বরূপ স্ক্রিনে এর অবস্থান এবং আকার এবং কোনও সিস্টেম ইনসেট। আমরা এই রিলিজটিতে এপিআইকে ব্যাকপোর্ট করেছি যাতে বিকাশকারীরা উইন্ডোমেট্রিক্সকে উত্তোলন করতে পারে এবং পুরানো অ্যান্ড্রয়েড সংস্করণগুলিকে সমর্থন করতে পারে। উইন্ডোমেট্রিক্স WindowManager#getCurrentWindowMetrics() এবং উইন্ডো ম্যানেজার#getMaximumwindowmetrics () APIS এর মাধ্যমে পাওয়া যেতে পারে।

এপিআই পরিবর্তন

  • এপিআইগুলিকে অবমূল্যায়ন করুন যা পরবর্তী আলফায় মুছে ফেলা হবে ( আইবি 7 সিসি 4 )
  • সুস্পষ্ট ক্রিয়াকলাপের রেফারেন্সগুলি গ্রহণ করতে ExtensionInterface আপডেট করে। ( I07eded )
  • উইন্ডোমেট্রিক্স এপিআই পরিচয় করিয়ে দেয়। ( I3ccee )
  • উইন্ডো ম্যানেজার থেকে সিঙ্ক্রোনাস রিড পদ্ধতিগুলি সরান ( i69983 )
  • এক্সটেনশনউইনডোভ্যাকেন্ড প্যাকেজটি সুরক্ষিত করুন। ( আইইডি 208 )

বাগ ফিক্স

  • ভিজ্যুয়াল প্রসঙ্গগুলি গ্রহণ করতে ExtensionInterface এপিআই আপডেট করুন। ( I8e827 )

বাহ্যিক অবদান

  • ডিভাইসস্টেট এবং উইন্ডোওয়েউইউটিআইএনএফও মার্জ করুন যাতে ডেটা অ্যাক্সেস করা সহজ। ( ID34F4 )

সংস্করণ 1.0.0-Alpha01

27 ফেব্রুয়ারি, 2020

androidx.window:window:1.0.0-alpha01 এবং androidx.window:window-extensions:1.0.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-ALPHA01 এর মধ্যে এই কমিট রয়েছে। এটি উইন্ডো ম্যানেজার লাইব্রেরির প্রথম প্রকাশ।

নতুন বৈশিষ্ট্য

  • DisplayFeature : এই নতুন এপিআই অবিচ্ছিন্ন ফ্ল্যাট স্ক্রিন পৃষ্ঠগুলিতে বাধাগুলি চিহ্নিত করে যেমন কব্জা বা ভাঁজগুলি
  • DeviceState : এই নতুন এপিআই সংজ্ঞায়িত ভঙ্গির একটি তালিকা থেকে ফোনের বর্তমান ভঙ্গিটি সরবরাহ করে (উদাহরণস্বরূপ, CLOSED , OPENED , HALF_OPENED ইত্যাদি)