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

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

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

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-alpha04

2 অক্টোবর, 2024

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

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

  • WindowMetrics থেকে WindowSizeClass গণনা করার জন্য একটি পদ্ধতি যোগ করা হয়েছে। ( 874dba )
  • স্বচ্ছতার জন্য WindowSizeClass পদ্ধতিগুলিকে containsWidthDp , containsHeightDp , এবং containsWindowSizeDp করতে পরিবর্তন করুন। ( fa760d )
  • WindowAreaController বিমূর্ত বেস ক্লাসে রূপান্তর করুন। ( I90893 )

বাগ ফিক্স

  • একটি পরীক্ষা FoldingFeature তৈরি করার সময় আপেক্ষিক সীমার জন্য সমর্থন যোগ করুন। ( 2e6b3e )
  • একটি WindowSizeClass নির্বাচন করার সময় সাধারণ বাগ সংশোধন করা হয়।

সংস্করণ 1.4.0-alpha03

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

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

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

  • WindowMetrics থেকে WindowSizeClass পেতে একটি ইউটিলিটি পদ্ধতি যোগ করুন। ( I83f1f )
  • containsBreakpoint করতে isAtLeast পুনঃনামকরণ করুন। ( I85b47 )
  • ফ্লোট ব্যবহার করে computeWindowSizeClass সাইজক্লাসে ওভারলোড যোগ করুন। ( I3dcb2 , b/364677934 , b/364677802 , b/364680886 )

বাগ ফিক্স

  • ডিফল্ট WindowSizeClass ব্রেকপয়েন্ট সেটে অনুপস্থিত ব্রেকপয়েন্ট যোগ করুন।
  • একটি বাগ সংশোধন করা হয়েছে যেখানে কিছু ক্ষেত্রে কমপ্যাক্ট মাত্রা সঠিকভাবে নির্বাচন করা হচ্ছে না।

সংস্করণ 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 )
  • removeSplitCallback add /মুছে ফেলুন
    • 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 SplitAttributes-এ XML বৈশিষ্ট্য splitRatio এবং splitLayoutDirection এর অনুবাদ যোগ করা হয়েছে।
    • পিক্সেলের পরিবর্তে ঘনত্ব-স্বাধীন পিক্সেল (dp) ব্যবহার করতে ন্যূনতম মাত্রার সংজ্ঞা পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minHeightDp যোগ করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minWidth থেকে minWidthDp এ পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minSmallestWidth থেকে minSmallestWidthDp এ পরিবর্তন করা হয়েছে৷
    • ডিফল্ট মান ALWAYS_ALLOW সহ maxAspectRatioInHorizontal যোগ করা হয়েছে।
    • ডিফল্ট মান 1.4 সহ maxAspectRatioInPortrait যোগ করা হয়েছে।
    • ফিনিশ আচরণ ধ্রুবক প্রতিস্থাপন করতে FinishBehavior নেস্টেড ক্লাস সংজ্ঞায়িত করা হয়েছে।
    • SplitPairRule এবং SplitPlaceholderRule এর বিল্ডার নেস্টেড ক্লাসে সম্পত্তির পরিবর্তনগুলি প্রয়োগ করা হয়েছে।
  • স্প্লিট-সম্পর্কিত অতিরিক্ত তথ্য প্রদানের জন্য SplitInfo#getSplitAttributes() দিয়ে SplitInfo#getSplitRatio() প্রতিস্থাপিত হয়েছে।

উইন্ডো লেআউট

  • 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 SplitAttributes-এ XML বৈশিষ্ট্য splitRatio এবং splitLayoutDirection এর অনুবাদ যোগ করা হয়েছে।
    • পিক্সেলের পরিবর্তে ঘনত্ব-স্বাধীন পিক্সেল (dp) ব্যবহার করতে ন্যূনতম মাত্রার সংজ্ঞা পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minHeightDp যোগ করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minWidth থেকে minWidthDp এ পরিবর্তন করা হয়েছে।
    • ডিফল্ট মান 600dp সহ minSmallestWidth থেকে minSmallestWidthDp এ পরিবর্তন করা হয়েছে৷
    • ডিফল্ট মান ALWAYS_ALLOW সহ maxAspectRatioInHorizontal যোগ করা হয়েছে।
    • ডিফল্ট মান 1.4 সহ maxAspectRatioInPortrait যোগ করা হয়েছে।
    • ফিনিশ আচরণ ধ্রুবক প্রতিস্থাপন করতে FinishBehavior নেস্টেড ক্লাস সংজ্ঞায়িত করা হয়েছে।
    • SplitPairRule এবং SplitPlaceholderRule এর Builder নেস্টেড ক্লাসে সম্পত্তির পরিবর্তনগুলি প্রয়োগ করা হয়েছে।
  • স্প্লিট-সম্পর্কিত অতিরিক্ত তথ্য প্রদানের জন্য SplitInfo#getSplitAttributes() দিয়ে SplitInfo#getSplitRatio() প্রতিস্থাপিত হয়েছে।

উইন্ডো লেআউট

  • 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 এর জন্য এপিআই যুক্ত করুন। ( I92d23 )
  • maxAspectRatio আশেপাশে এপিআইগুলিকে উন্নত করুন:
    1. ALWAYS_ALLOW এবং সর্বদা_ডিসালো দিয়ে alwaysAllow() এবং ALWAYS_DISALLOW alwaysDisallow() প্রতিস্থাপন করুন।
    2. স্ট্যান্ডেলোন ডকুমেন্টেশন সহ @দেখুন এপিআই ডকুমেন্টেশন আপডেট করুন। ( আই 3057 বি )
  • নিম্নলিখিত কনস্ট্রাক্টরগুলি পাবলিক এপিআই থেকে সরানো হয়েছে কারণ তাদের অ্যাপস দ্বারা ডাকা হওয়ার কথা নয়।
    • SplitInfo কনস্ট্রাক্টর
    • ActivityStack কনস্ট্রাক্টর ( আইডি 534 )
  • 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 এর মধ্যে এই কমিট রয়েছে।

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

  • ActivityEmbedding জন্য কোনও ActivityStack জন্য খালি রয়েছে কিনা তা নির্ধারণের জন্য একটি পদ্ধতি প্রকাশ করুন।
  • 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-rc01

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-alpha10 এই কমিট ধারণ করে।

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

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

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

  • ক্রিয়াকলাপের নতুন করে ক্রিয়াকলাপ এক্সটেনশনস এক্সটেনশনের রেপো থেকে সংগ্রহস্থলে পরিবর্তিত হয়। ( 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 ইত্যাদি)
,

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

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

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

উইন্ডো ম্যানেজারের উপর নির্ভরতা যুক্ত করতে, আপনাকে অবশ্যই আপনার প্রকল্পে গুগল মাভেন রিপোজিটরি যুক্ত করতে হবে। আরও তথ্যের জন্য 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-আলফা 04

2 অক্টোবর, 2024

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

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

  • WindowMetrics থেকে WindowSizeClass গণনা করার জন্য একটি পদ্ধতি যুক্ত করেছে। ( 874 ডিবিএ )
  • স্বচ্ছতার containsWindowSizeDp WindowSizeClass containsHeightDp containsWidthDp ( এফএ 760 ডি )
  • WindowAreaController অ্যাবস্ট্রাক্ট বেস ক্লাসে রূপান্তর করুন। ( I90893 )

বাগ ফিক্স

  • পরীক্ষার FoldingFeature তৈরি করার সময় আপেক্ষিক সীমানার জন্য সমর্থন যুক্ত করুন। ( 2e6b3e )
  • WindowSizeClass নির্বাচন করার সময় সাধারণ বাগ ঠিক করে।

সংস্করণ 1.4.0-আলফা 03

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

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

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

  • WindowMetrics থেকে WindowSizeClass পেতে একটি ইউটিলিটি পদ্ধতি যুক্ত করুন। ( I83f1f )
  • isAtLeast টু রিগন্টে containsBreakpoint । ( I85b47 )
  • ফ্লোটস ব্যবহার করে computeWindowSizeClass ওভারলোড যুক্ত করুন। ( I3dcb2 , বি/364677934 , বি/364677802 , বি/364680886 )

বাগ ফিক্স

  • ডিফল্ট WindowSizeClass ব্রেকপয়েন্ট সেটটিতে অনুপস্থিত ব্রেকপয়েন্টগুলি যুক্ত করুন।
  • একটি বাগ স্থির করে যেখানে কিছু ক্ষেত্রে কমপ্যাক্ট মাত্রা সঠিকভাবে নির্বাচন করা হচ্ছে না।

সংস্করণ 1.4.0-আলফা 02

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

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

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

কাস্টম WindowSizeClass জন্য সমর্থন যুক্ত করুন।

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

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

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

সংস্করণ 1.4.0-আলফা 01

7 আগস্ট, 2024

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

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

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

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

  • একটি নতুন এপিআই WindowInfoTracker#supportedPostures :

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

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

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

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

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

    • EmbeddingAnimationBackground
    • SplitAttributes.Builder#setAnimationBackground
  • ActivityStacks শেষ করতে এপিআই যুক্ত করুন

    • ActivityEmbeddingController#finishActivityStacks
  • ActivityStack চালু করতে এপিআই যুক্ত করুন

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

    • ActivityEmbeddingController#invalidateVisibleActivityStacks (স্প্লিটকন্ট্রোলার থেকে সরানো হয়েছে#ইনভ্যালিডেটটোপভিসিবিলসপ্লিটট্রিবিউটস)
    • ActivityEmbeddingController#getActivityStack
    • SplitController#updateSplitAttributes
  • 1.4 এর জন্য এপিআই যুক্ত করুন। ( I56774 )

বাগ ফিক্স

  • নির্দিষ্ট ডিভাইসে বাগ ফিক্স করে যেখানে কোনও সেশন সক্রিয় থাকাকালীন সক্রিয় হওয়ার পরিবর্তে অনুপলব্ধ ফিরে আসবে।
  • অস্থির এপিআই সমর্থনের কারণে 2 এর vendorApiLevel সহ ডিভাইসগুলিতে transferActivityToWindowArea জন্য সমর্থন অপসারণ করে।
  • ক্রিয়াকলাপ এম্বেড করার জন্য ড্র্যাগ-টু-ফুলস্ক্রিন সক্ষম করতে এপিআই পরিচয় করিয়ে দিন। ( I645c9 )
  • অ্যাপ্লিকেশনগুলিকে SplitAttributes জন্য অ্যানিমেশন প্যারামগুলির মাধ্যমে ActivityEmbedding অ্যানিমেশনগুলি অক্ষম করার অনুমতি দিন। ( আইডিসি 01 এ )
  • নতুন প্ল্যাটফর্ম এপিআইগুলিতে অ্যাক্সেসের রূপরেখা সরানো সরানো হয়েছে যেহেতু এজিপি 7.3 বা তার পরে আর 8 ব্যবহার করার সময় এপিআই মডেলিংয়ের মাধ্যমে এটি স্বয়ংক্রিয়ভাবে ঘটে (যেমন আর 8 সংস্করণ 3.3) এবং এজিপি 8.1 বা তার পরে (যেমন ডি 8 সংস্করণ 8.1) ব্যবহার করার সময় সমস্ত বিল্ডগুলির জন্য। এজিপি ব্যবহার করছেন না এমন ক্লায়েন্টদের ডি 8 সংস্করণ 8.1 বা তার পরে আপডেট করার পরামর্শ দেওয়া হচ্ছে। আরও তথ্যের জন্য এই নিবন্ধটি দেখুন। ( Ia60e0 , খ/345472586 )
  • SplitAttributes জন্য অ্যানিমেশন প্যারামগুলি নেওয়ার জন্য এক্সটেনশনের অনুমতি দিন যাতে ডিভাইসটি এটি অ্যানিমেশন ট্রানজিশনের জন্য ব্যবহার করতে পারে। ( আইইডি00 )
  • ওভারলে এপিআইগুলি লুকান ( আইসি 4251 )
  • বিভক্তির জন্য স্থির বা ড্র্যাগেবল ডিভাইডারটি কনফিগার করতে এপিআইগুলি পরিচয় করিয়ে দিন ( আইএ 7 এ 78 )
  • WindowMetrics ঘনত্ব যুক্ত করা হয়েছে ( ID6723 )
  • SupportedPostures পৃষ্ঠাগুলি পেতে এপিআই যুক্ত করুন। ( If557a )
  • পরীক্ষামূলক এপিআই ( আই 191 সিএফ ) থেকে setLaunchingActivityStack সরান
  • ActivityEmbeddingController#embeddedActivityWindowInfo ( আই 24312 ) প্রবর্তন করুন
  • #getToken অবমূল্যায়ন করুন এবং #getActivityStackToken যোগ করুন ( IE0471 )
  • embeddedActivityWindowInfo ফ্লো এপিআই ( আইডিএ 77 এফ ) এর জন্য কলব্যাক অ্যাডাপ্টারটি পরিচয় করিয়ে দিন
  • ওভারলেআইএনফো ফ্লো এপিআই ( i7264f ) এর জন্য কলব্যাক অ্যাডাপ্টার যুক্ত করুন
  • পরীক্ষার জন্য extensionsVersion ওভাররাইড করতে WindowSdkExtensionsRule রুলের পরিচয় করিয়ে দিন। ( Ifb928 )
  • - ActivityOptionsCompat ব্যবহারের সাথে সামঞ্জস্য করতে বান্ডিল করতে #setLaunchingActivityStack স্থানান্তর করুন।
    • ব্যবহারকারীদের activityOptions.toBundle পাস করা উচিত ActvityOptions
    • #setLaunchingActivityStack(Activity) সরান। ব্যবহারকারীদের ক্রিয়াকলাপের জন্য ক্রিয়াকলাপের জন্য ActivityStack #setLaunchingActivityStack ActivityStack জন্য স্থানান্তরিত হওয়া উচিত ActivityEmbeddingController#getActivityStac(Activity) ( Ie0ccc )
  • - ডাব্লুএম জেটপ্যাক এবং এক্সটেনশনের মধ্যে যোগাযোগের জন্য পরিচয় হিসাবে ActivityStack.Token এবং SpltInfo.Token পরিচয় করিয়ে দিন।
    • আইবিন্ডারের পরিবর্তে টোকেন নিতে/ফিরে এপিআইগুলিকে অবমূল্যায়ন/প্রতিস্থাপন করুন। ( I12b24 )
  • - ActivityEmbeddingController#invalidateVisibleActivityStacks প্রবর্তন করুন
    • SplitController#invalidateTopVisibleSplitAttributes সরান কারণ বৈশিষ্ট্যটি #invalidateVisibleActivityStacks ( i02ef5 ) এ একীভূত করা হয়েছে
  • - এম্বেডিং কনফিগারেশন সেট করতে এপিআই যুক্ত করা। ( I59a4a )
  • - পিন/আনপিন টপ ActivityStack androidx.Window এপিআইএস যুক্ত করা হচ্ছে
    • পিন/আনপিন শীর্ষ ActivityStack অনুমতি দেওয়ার জন্য ডেমো অ্যাপ্লিকেশন আপডেট করা হচ্ছে ( i24dd3 )
  • পুনরায় যুক্ত করুন #finishActivityStacks এবং ActivityEmbeddingOptions ( আইসি 1 এ বি 3 )
  • অস্থির এপিআই সরান। ( আইবিসি 534 , বি/302380585 )

সংস্করণ 1.3

সংস্করণ 1.3.0

29 মে, 2024

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

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

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

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

14 মে, 2024

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

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

সংস্করণ 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-আলফা 03

6 মার্চ, 2024

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

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

  • WindowSizeClassUtil আরও বেশি কেন্দ্রীভূত পদ্ধতিতে বিভক্ত করুন। ( Ie9292 )
  • WindowSizeClass#compute পুনরুদ্ধার করুন ( আই 21355 , বি/324293374 )

বাগ ফিক্স

  • ফিক্সগুলি ক্র্যাশ যেখানে প্রসঙ্গটি সরবরাহ করা হয় সঠিকভাবে মোড়ানো ছিল না। ( 94D10CE , খ/318787482 )

সংস্করণ 1.3.0-আলফা 02

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

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

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

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

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

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

বাগ ফিক্স

  • যখন ফ্লোট মান 0 এ কাটা হয় তখন ব্যতিক্রম ঠিক করুন ( 272 এফএসি )

সংস্করণ 1.3.0-আলফা 01

15 নভেম্বর, 2023

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

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

  • পিছনের স্ক্রিন অ্যাক্সেসের জন্য পরীক্ষামূলক উইন্ডো এপিআইগুলি প্রকাশ করুন।
  • একটি FoldingFeature তৈরির জন্য পরীক্ষার এপিআই এখন স্থিতিশীল।
  • জাল ActivityEmbedding স্থাপনের জন্য পরীক্ষার এপিআইগুলি এখন স্থিতিশীল।
  • 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 থেকে গুরুত্বপূর্ণ পরিবর্তন

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

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

নভেম্বর 1, 2023

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

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

  • পিছনের স্ক্রিন অ্যাক্সেসের জন্য পরীক্ষামূলক উইন্ডো এপিআইগুলি প্রকাশ করুন।
  • একটি FoldingFeature তৈরির জন্য পরীক্ষার এপিআই এখন স্থিতিশীল।
  • জাল ActivityEmbedding স্থাপনের জন্য পরীক্ষার এপিআইগুলি এখন স্থিতিশীল।
  • 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 এ এই কমিটগুলি রয়েছে।

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

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

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

  • পাবলিক এপিআইগুলিতে প্রয়োজনীয় উইন্ডো এসডিকে এক্সটেনশন সংস্করণটি টীকা দিন।
    • ক্রিয়াকলাপ এম্বেডিং উপাদানটিতে 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 এর মধ্যে এই কমিটগুলি রয়েছে।

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

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

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

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

সংস্করণ 1.2.0-Alpha03

জুন 21, 2023

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

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

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

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

  • অবনমিত এপিআইগুলি সরান ( i18d39 )
  • একযোগে প্রদর্শনগুলির জন্য সমর্থন যুক্ত করুন। ( আইএফসিবিবি 0 )

বাগ ফিক্স

  • ফোর্স রেজাইজ ওভাররাইডের জন্য অপ্ট-আউট কমপ্যাট সম্পত্তি যুক্ত করা ( ie7ab1 )
  • এক্সটেনশন ইন্টারফেস থেকে SESSION_STATE_CONTENT_INVISIBLE সরিয়ে দেয়। ( I6ed19 )
  • ক্রিয়াকলাপ এম্বেডিংয়ের আশেপাশে ইউনিট টেস্টিংকে সমর্থন করার জন্য ActivityEmbeddingRule স্থিতিশীল করুন। ( I8d6b6 )
  • ন্যূনতম দিক অনুপাতের ওভাররাইডের জন্য অপ্ট-আউট কমপ্যাট সম্পত্তি যুক্ত করা। ( I66390 )
  • অবনমিত উইন্ডোয়ারিয়া এপিআই এর ( আইইবি 67 সি ) সরিয়ে দেয়
  • PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED ওরিয়েন্টেশন অনুরোধ লুপ সম্পত্তি পুনরায় নাম দিন। ( আই 2 এফবিডি )
  • আপডেট উইন্ডো অঞ্চল সেশন ধ্রুবক নাম ( i83675 )
  • অপ্ট-আউট কমপ্যাট সম্পত্তি যুক্ত করা যা সনাক্ত করা হলে ওরিয়েন্টেশন অনুরোধ লুপকে উপেক্ষা করে ( i0a7a2 )
  • বৈশিষ্ট্যটি ইতিমধ্যে সক্রিয় রয়েছে তা বোঝাতে WindowAreaComponent#STATUS_ACTIVE যুক্ত করুন। ( I62bc3 )
  • RearDisplayPresentationMode এপিআইএস যুক্ত করুন ( i0401c )
  • স্থিতিশীল জন্য পটভূমি রঙ এপিআই সরান। ( I34c3e )
  • উইন্ডো অঞ্চল এপিআইগুলি লুকান। ( I39de0 )
  • SplitController SplitInfo ওভাররাইড করার জন্য পদ্ধতি যুক্ত করুন। SplitInfo এবং ActivityStack জন্য ডাবল তৈরি করতে পরীক্ষার পদ্ধতি যুক্ত করুন। ( আইসিডি 69 এফ )
  • ActivityRule.Builder জন্য ট্যাগটি al চ্ছিক করুন u ( আইবি 0 বি 44 )
  • RatioSplitType , ExpandContainersSplit এবং HingeSplitType সরিয়ে ফেলুন। তারা এখন SplitType
    • #splitEqually() , #expandContainers() এবং #splitByHinge ধ্রুবক SplitType SPLIT_TYPE_EQUAL , SPLIT_TYPE_EXPAND এবং SPLIT_TYPE_HINGE প্রতিস্থাপন করুন
    • হিঞ্জ স্প্লিট টাইপের ফলব্যাক ধরণ সেট করতে কার্যকারিতা সরান। যদি বর্তমান ডিভাইস বা উইন্ডো অবস্থার কারণে কব্জা বিভক্ত প্রকারটি প্রয়োগ করা যায় না, তবে এটি প্যারেন্ট টাস্ক কনটেইনারকে সমানভাবে বিভক্ত করতে ফলব্যাক করে। ফ্যালব্যাক স্প্লিট টাইপটি কাস্টমাইজ করতে SplitController#setSplitAttributesCalculator ব্যবহার করুন। ( আইএফসিসি 59 )
  • add / removeSplitCallback
    • SplitControllerCallbackAdapter add / removeSplitCallback সরান
    • SplitInfo তালিকা পেতে Flow সমর্থন যুক্ত করুন ( i7f1b6 )
  • ActivityEmbeddingController জন্য একটি পরীক্ষার নিয়ম যুক্ত করুন ( i42e9b )
  • ActivityOptionsCompat ActivityEmbeddingOptions
  • ক্রিয়াকলাপ এম্বেডিং উপলব্ধ কিনা তা নির্দেশ করতে splitSupportStatus যুক্ত করুন। ( I10024 )
  • DEFAULT মানটি আরও ভালভাবে উপস্থাপন করতে SplitAttributes.BackgroundColor পরিচয় করিয়ে দিন। স্পষ্ট করুন যে অ-ওপিক অ্যানিমেশন ব্যাকগ্রাউন্ডের রঙ সমর্থিত নয়, সুতরাং কোনও অ-অস্বচ্ছ রঙগুলি ডিফল্ট হিসাবে বিবেচিত হবে, যার অর্থ বর্তমান থিম উইন্ডো পটভূমির রঙ ব্যবহার করা। ( আইসি 6 বি 95 )
  • ALWAYS_ALLOW এবং সর্বদা_ডিসালো দিয়ে alwaysAllow() এবং ALWAYS_DISALLOW alwaysDisallow() প্রতিস্থাপন করুন। ( আই 3057 বি )
  • SplitRule , SplitAttributes , SplitAttributesCalculator এর জন্য এপিআই যুক্ত করুন। ( I92d23 )
  • পরীক্ষার জন্য ActivityStack তৈরি করতে TestActivityStack যুক্ত করুন
    • পরীক্ষার জন্য SplitInfo তৈরি করতে TestSplitInfo যুক্ত করুন। ( I8e779 )
  • নকল SplitAttributesCalculatorParams তৈরি করার জন্য একটি উপায় যুক্ত করুন যাতে বিকাশকারীরা তাদের কাস্টমাইজড SplitAttributesCalculator ( আইডি 4 এ 6 ই) যাচাই করতে পারে
  • WindowMetricsCalculator#computeCurrentWindowMetrics(@UiContext context: Context) এবং WindowMetricsCalculator#computeMaximumWindowMetrics(@UiContext context: Context) ( আই 66 সি 7 এফ ) যুক্ত করুন

সংস্করণ 1.2.0-আলফা 02

7 জুন, 2023

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

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

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

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

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

বাগ ফিক্স

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

সংস্করণ 1.2.0-Alpha01

24 মে, 2023

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

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

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

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

  • Stabilize ActivityEmbeddingRule to support unit testing around Activity embedding. ( I8d6b6 )
  • WindowMetrisCalculatorTestRule is stable allowing stub metrics for JVM tests. We recommend using an emulator for accurate results.
  • Stabilize test APIs for WindowLayoutInfo to support JVM testing. ( Ie036e )
  • Add IntRange for test folding feature values. ( I69f7d )

সংস্করণ 1.1

সংস্করণ 1.1.0

7 জুন, 2023

androidx.window:window-*:1.1.0 is released. Version 1.1.0 contains these commits.

Important changes since 1.0.0

Activity Embedding

  • Added PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED as a boolean property of the <application> tag in the app manifest.
  • Deprecated isSplitSupported and replaced with splitSupportStatus to provide more detailed information about why the split feature is not available.
  • Added the SplitController.SplitSupportStatus nested class to provide state constants for the splitSupportStatus property.
  • Refactored SplitController to several modules:
    • ActivityEmbeddingController module for Activity or ActivityStack related APIs.
    • Moved isActivityEmbedded from SplitController to ActivityEmbeddingController .
    • RuleController module for EmbeddingRule related operations:
    • Removed SplitController APIs:
    • clearRegisteredRules()
    • getSplitRules()
    • initialize()
    • registerRule()
    • unregisterRule()
    • Added RuleController APIs:
    • addRule() — Adds a rule or updates the rule that has the same tag.
    • removeRule() — Removes a rule from the collection of registered rules.
    • setRules() — Establishes a collection of rules.
    • clearRules() — Removes all registered rules.
    • parseRules() — Parses rules from XML rule definitions.
  • All modules require a context to be initialized by #getInstance() method, including:
    • ActivityEmbeddingController#getInstance(Context)
    • SplitController#getInstance(Context)
    • RuleController#getInstance(Context)
  • Added the EmbeddingAspectRatio class to define enum-like behavior constants related to display aspect ratio.
  • Added the SplitAttributes class to define the split layout.
  • Added SplitAttributes calculator functions to SplitController to customize split layouts:
    • setSplitAttributesCalculator(Function)
    • clearSplitAttributesCalculator()
    • isSplitAttributesCalculatorSupported() to check if the SplitAttributesCalculator APIs are supported on the device
  • Added EmbeddingRule#tag field.
  • API updates in SplitRule :
    • Added defaultSplitAttributes — Defines the default split layout of a split; replaces splitRatio and layoutDirection .
    • Added translation of the XML properties splitRatio and splitLayoutDirection to defaultSplitAttributes .
    • Changed minimum dimension definitions to use density-independent pixels (dp) instead of pixels.
    • Added minHeightDp with default value 600dp.
    • Changed minWidth to minWidthDp with default value 600dp.
    • Changed minSmallestWidth to minSmallestWidthDp with default value 600dp.
    • Added maxAspectRatioInHorizontal with default value ALWAYS_ALLOW .
    • Added maxAspectRatioInPortrait with default value 1.4.
    • Defined FinishBehavior nested class to replace finish behavior constants.
    • Applied the property changes to the Builder nested class of SplitPairRule and SplitPlaceholderRule .
  • Replaced SplitInfo#getSplitRatio() with SplitInfo#getSplitAttributes() to provide additional split-related information.

WindowLayout

  • Added experimental non-activity UI context support to WindowInfoTracker .
  • Added experimental non-activity UI context to WindowMetricsCalculator .

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

  • To enable activity embedding to display activities in splits, apps must add the PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED property to the manifest <application> tag: xml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" /> This allows the system to optimize the split behaviors for an application ahead of time.
  • SplitInfo ratio
    • Check if the current split is stacked: kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
    • Check the current ratio: kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
  • SplitController migrations:
    • SplitController.getInstance() changes to SplitController.getInstance(Context) .
    • SplitController.initialize(Context, @ResId int) changes to RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int)) .
    • SplitController.getInstance().isActivityEmbedded(Activity) changes to ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity) .
    • SplitController.getInstance().registerRule(rule) changes to RuleController.getInstance(Context).addRule(rule) .
    • SplitController.getInstance().unregisterRule(rule) changes to RuleController.getInstance(Context).removeRule(rule) .
    • SplitController.getInstance().clearRegisteredRules() changes to RuleController.getInstance(Context).clearRules() .
    • SplitController.getInstance().getSplitRules() changes to RuleController.getInstance(Context).getRules() .
  • SplitRule property migrations:
    • minWidth and minSmallestWidth now use dp units instead of pixels. Apps can use the following call: kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics ) or simply divide minWith in pixels by displayMetrics#density .
  • Finish behavior constants must be migrated to FinishBehavior enum-like class constants:
    • FINISH_NEVER changes to FinishBehavior.NEVER .
    • FINISH_ALWAYS changes to FinishBehavior.ALWAYS .
    • FINISH_ADJACENT changes to FinishBehavior.ADJACENT .
  • Layout direction must be migrated to SplitAttributes.LayoutDirection :
    • ltr changes to SplitAttributes.LayoutDirection.LEFT_TO_RIGHT .
    • rtl changes to SplitAttributes.LayoutDirection.RIGHT_TO_LEFT .
    • locale changes to SplitAttributes.LayoutDirection.LOCALE .
    • splitRatio must be migrated to SplitAttributes.SplitType.ratio(splitRatio) .
  • SplitPairRule.Builder migrations:
    • SplitPairRule.Builder(filters, minWidth, minSmallestWidth) changes to kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
    • setLayoutDirection(layoutDirection) and setSplitRatio(ratio) changes to kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • setFinishPrimaryWithSecondary and setFinishSecondaryWithPrimary take the FinishBehavior enum-like constants. See “SplitRule migrations” for details.
    • Use setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) to show splits on portrait devices.
  • SplitPlaceholder.Builder migrations:
    • Has only filters and placeholderIntent parameters. Other properties move to setters. See “SplitPairRule.Builder migrations” for details.
    • setFinishPrimaryWithPlaceholder takes the FinishBehavior enum-like constants. See “SplitRule migrations” for details.
    • setLayoutDirection(layoutDirection) and setSplitRatio(ratio) change to: kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • Use setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) to show splits on portrait devices.

Version 1.1.0-rc01

10 মে, 2023

androidx.window:window-*:1.1.0-rc01 is released. Version 1.1.0-rc01 contains these commits.

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

  • Release ActivityEmbedding as a stable API.
  • বিভিন্ন বাগ ফিক্স।

Version 1.1.0-beta02

5 এপ্রিল, 2023

androidx.window:window-*:1.1.0-beta02 is released. Version 1.1.0-beta02 contains these commits.

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

  • Internal fixes and clean up.

Version 1.1.0-beta01

22 মার্চ, 2023

androidx.window:window-*:1.1.0-beta01 is released. Version 1.1.0-beta01 contains these commits.

Activity Embedding

  • Added PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED as a boolean property of the <application> tag in the app manifest.
  • Deprecated isSplitSupported and replaced with splitSupportStatus to provide more detailed information about why the split feature is not available.
  • Added the SplitController.SplitSupportStatus nested class to provide state constants for the splitSupportStatus property.
  • Refactored SplitController to several modules:
    • ActivityEmbeddingController module for Activity or ActivityStack related APIs.
    • Moved isActivityEmbedded from SplitController to ActivityEmbeddingController .
    • RuleController module for EmbeddingRule related operations:
    • Removed SplitController APIs:
      • clearRegisteredRules()
      • getSplitRules()
      • initialize()
      • registerRule()
      • unregisterRule()
    • Added RuleController APIs:
      • addRule() — Adds a rule or updates the rule that has the same tag.
      • removeRule() — Removes a rule from the collection of registered rules.
      • setRules() — Establishes a collection of rules.
      • clearRules() — Removes all registered rules.
      • `parseRules() — Parses rules from XML rule definitions.
  • All modules require a context to be initialized by #getInstance() method, including:
    • ActivityEmbeddingController#getInstance(Context)
    • SplitController#getInstance(Context)
    • RuleController#getInstance(Context)
  • Added the EmbeddingAspectRatio class to define enum-like behavior constants related to display aspect ratio.
  • Added the SplitAttributes class to define the split layout.
  • Added SplitAttributes calculator functions to SplitController to customize split layouts:
    • setSplitAttributesCalculator(Function)
    • clearSplitAttributesCalculator()
    • isSplitAttributesCalculatorSupported() to check if the SplitAttributesCalculator APIs are supported on the device
  • Added EmbeddingRule#tag field.
  • API updates in SplitRule :
    • Added defaultSplitAttributes — Defines the default split layout of a split; replaces splitRatio and layoutDirection .
    • Added translation of the XML properties splitRatio and splitLayoutDirection to defaultSplitAttributes .
    • Changed minimum dimension definitions to use density-independent pixels (dp) instead of pixels.
    • Added minHeightDp with default value 600dp.
    • Changed minWidth to minWidthDp with default value 600dp.
    • Changed minSmallestWidth to minSmallestWidthDp with default value 600dp.
    • Added maxAspectRatioInHorizontal with default value ALWAYS_ALLOW .
    • Added maxAspectRatioInPortrait with default value 1.4 .
    • Defined FinishBehavior nested class to replace finish behavior constants.
    • Applied the property changes to the Builder nested class of SplitPairRule and SplitPlaceholderRule .
  • Replaced SplitInfo#getSplitRatio() with SplitInfo#getSplitAttributes() to provide additional split-related information.

WindowLayout

  • Added non-activity UI context support to WindowInfoTracker .
  • Added non-activity UI context to WindowMetricsCalculator .

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

  • To enable activity embedding to display activities in splits, apps must add the PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED property to the manifest <application> tag: xml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" /> This allows the system to optimize the split behaviors for an application ahead of time.
  • SplitInfo ratio
    • Check if the current split is stacked: kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
    • Check the current ratio: kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
  • SplitController migrations:
    • SplitController.getInstance() changes to SplitController.getInstance(Context) .
    • SplitController.initialize(Context, @ResId int) changes to RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int)) .
    • SplitController.getInstance().isActivityEmbedded(Activity) changes to ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity) .
    • SplitController.getInstance().registerRule(rule) changes to RuleController.getInstance(Context).addRule(rule) .
    • SplitController.getInstance().unregisterRule(rule) changes to RuleController.getInstance(Context).removeRule(rule) .
    • SplitController.getInstance().clearRegisteredRules() changes to RuleController.getInstance(Context).clearRules() .
    • SplitController.getInstance().getSplitRules() changes to RuleController.getInstance(Context).getRules() .
  • SplitRule property migrations:
    • minWidth and minSmallestWidth now use dp units instead of pixels. Apps can use the following call: kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics ) or simply divide minWith in pixels by displayMetrics#density .
  • Finish behavior constants must be migrated to FinishBehavior enum-like class constants:
    • FINISH_NEVER changes to FinishBehavior.NEVER .
    • FINISH_ALWAYS changes to FinishBehavior.ALWAYS .
    • FINISH_ADJACENT changes to FinishBehavior.ADJACENT .
  • Layout direction must be migrated to SplitAttributes.LayoutDirection :
    • ltr changes to SplitAttributes.LayoutDirection.LEFT_TO_RIGHT .
    • rtl changes to SplitAttributes.LayoutDirection.RIGHT_TO_LEFT .
    • locale changes to SplitAttributes.LayoutDirection.LOCALE .
    • splitRatio must be migrated to SplitAttributes.SplitType.ratio(splitRatio) .
  • SplitPairRule.Builder migrations:
    • SplitPairRule.Builder(filters, minWidth, minSmallestWidth) changes to kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
    • setLayoutDirection(layoutDirection) and setSplitRatio(ratio) change to kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • setFinishPrimaryWithSecondary and setFinishSecondaryWithPrimary take the FinishBehavior enum-like constants. See “SplitRule migrations” for details.
    • Use setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) to show splits on portrait devices.
  • SplitPlaceholder.Builder migrations:
    • Has only filters and placeholderIntent parameters. Other properties move to setters. See “SplitPairRule.Builder migrations” for details.
    • setFinishPrimaryWithPlaceholder takes the FinishBehavior enum-like constants. See “SplitRule migrations” for details.
    • setLayoutDirection(layoutDirection) and setSplitRatio(ratio) change to: kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
    • Use setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW) to show splits on portrait devices.

Version 1.1.0-alpha06

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

androidx.window:window-*:1.1.0-alpha06 is released. Version 1.1.0-alpha06 contains these commits.

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

  • Expose experimental version of getting the WindowLayoutInfo from a UI context.

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

  • Add splitSupportStatus to indicate if Activity embedding is available. ( I10024 )
  • Make UI Context WindowLayoutInfo API as experimental. ( I58ee0 )
  • Introduces the WindowAreaController and API's to enable RearDisplay Mode to move the current window to the display that is aligned with the rear camera. ( Iffcbf )
  • Update default background color. ( I1ac1b )
  • Add SplitAttributes params. ( I18bdd )
  • Add APIs for SplitRule , SplitAttributes , SplitAttributesCalculator . ( I92d23 )
  • Improve the APIs around maxAspectRatio :
    1. Replace alwaysAllow() and alwaysDisallow() with ALWAYS_ALLOW and ALWAYS_DISALLOW .
    2. Update API documentation of @see with standalone documentation. ( I3057b )
  • The following constructors are removed from public APIs because they are not supposed to be called by apps.
    • SplitInfo constructor
    • ActivityStack constructor ( Ide534 )
  • SplitRule now takes maxAspectRatioInPortrait/Landscape . It only allows activities split when the aspect ratio of the parent bounds is smaller or equal to the requested maxAspectRatio . ( Ia5990 )
  • Change RuleController#parseRules to be static ( I785df )
  • Improve the APIs around ActivityEmbedding
    1. Align the API naming - Use add/remove for multiple instances:
    2. registerRule changes to addRule
    3. unregisterRule changes to removeRule
    4. Replace getSplitRules with getRules since ActivityRule is not a split rule
    5. Add RuleController#setRules to set a bunch of rules
    6. Extract rule related APIs from SplitController to singleton RuleController . তারা হল:
    7. addRule
    8. removeRule
    9. getRules
    10. setRules
    11. clearRules
    12. parseRules
    13. Extract #isActivityEmbedded from SplitController to singleton ActivityEmbeddingController . তারা হল:
    14. isActivityEmbedded
    15. Remove SplitController#initialize . To set rules from XML file, please use RuleController#parseRules and #setRules . Before this change: SplitController.initialize(context, R.xml.static_rules) After this change: val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules)
    16. We don't distinguish static rules with runtime rules anymore. That said, calling #clearRules results to clear all rules no matter they are registered with static XML rule definitions or at runtime. To hav the legacy behavior of SplitController#clearRegisteredRules , please call RuleController#parseRules with the XML resources id and call RuleController#setRules to set back the rules again. Before this change: SplitController.getInstance(context).clearRegisteredRules() After this change: val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules) ( Ib3967 )
  • Improve the SplitRule APIs:
    1. Take min dimensions in DP instead of pixels for SplitRule .
    2. Refactor for SplitRule Builder to take min dimensions as optional. ( I95f17 )
  • Pass a Context to initialize SplitController ( I42549 )
  • Renamed SplitRule#layoutDir to #layoutDirection and SplitRule Builder#setLayoutDir to Builder#setLayoutDirection . ( I3f6d1 )

Version 1.1.0-alpha04

9 নভেম্বর, 2022

androidx.window:window-*:1.1.0-alpha04 is released. Version 1.1.0-alpha04 contains these commits.

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

  • Expose a method to determine if an ActivityStack is empty for ActivityEmbedding .
  • Removed experimental API tags from ActivityEmbedding APIs.
  • Hide ActivityRule constructor as the Builder is the preferred way to construct.
  • Add an experimental method to get the WindowInsets on WindowMetrics .
  • Update SplitPlaceholderFinishBehavior to prevent finishing the placeholder. Finishing the placeholder caused some confusing behavior.

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

  • Make val isEmpty public to replace fun isEmpty .
  • Rename ActivityStack parameter activities to activitiesInProcess . ( Ia5055 )
  • Remove ActivityFilter#matchesClassName and ActivityFilter#matchesClassNameOrWildCard because they are confusing.
  • Add ActivityFilter#componentName abd ActivityFilter#intentAction to allow the caller to distinguish different filters ( I41f22 )
  • Remove the @Deprecated APIs from the experimental API ( I216b3 )
  • Remove @ExperimentalWindowApi for Activity Embedding APIs ( I69ebe )
  • Hide ActivityRule constructor, use Builder instead. ( If4eb6 )
  • Add APIs to check if an Activity is part of the ActivityFilter . ( Ia43cf )
  • Update API files to reflect changes in WindowMetrics and WindowMetricsCalculatorCompat classes ( I667fe )
  • Update ActivityEmbedding Property Javadoc and class name ( Ia1386 )
  • Adding ActivityEmbedding property tag names to be used in AndroidManifest.xml ( Id1ad4 )
  • Added new API SplitPlaceholderFinishBehavior and SplitPlaceholderRule.finishPrimaryWithPlaceholder , this replaces existing SplitPlaceholderRule.finishPrimaryWithSecondary which defines when placeholder activites are finished, how associated activites in Activity Embedding should behave. ( I64647 )

বাগ ফিক্স

  • Introduces the WindowAreaController and API's to enable RearDisplay Mode to move the current window to the display that is aligned with the rear camera. ( I388ab )

সংস্করণ 1.1.0-alpha03

জুলাই 27, 2022

androidx.window:window-*:1.1.0-alpha03 is released. Version 1.1.0-alpha03 contains these commits.

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

  • Update the default values for embedding rules.

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

  • Update default values for embedding rule properties. ( Ic4d35 )

সংস্করণ 1.1.0-alpha02

11 মে, 2022

androidx.window:window-*:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

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

  • Release the adapter libraries to support Java and RxJava.

সংস্করণ 1.1.0-alpha01

11 মে, 2022

androidx.window:window-*:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

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

  • Release adapters to support java and RxJava

সংস্করণ 1.1.0-alpha01

20 এপ্রিল, 2022

androidx.window:window:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

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

  • Fixes a bug where backgrounding an app stops emitting fold features.
  • Expand on the experimental ActivityEmbedding API.

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

  • A public API to check if an activity is being embedded. ( I39eb7 )

বাগ ফিক্স

  • Add APIs that customize finishing behavior for containers in activity splits ( I1a1e4 )
  • Added a new configuration option for activity split rules. ( Iec6af )

সংস্করণ 1.0

সংস্করণ 1.0.0

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

androidx.window:window-*:1.0.0 is released. Version 1.0.0 contains these commits.

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

  • Support for folding phones through WindowInfoTracker and FoldingFeature . WindowMetricsCalculator to help calculate the current WindowMetrics.

সংস্করণ 1.0.0-rc01

15 ডিসেম্বর, 2021

androidx.window:window-*:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.

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

  • Add support for folding phones through WindowInfoTracker .
  • Add methods to calculate the current and maximum WindowMetrics .
  • Add supporting test APIs.

সংস্করণ 1.0.0-beta04

17 নভেম্বর, 2021

androidx.window:window-*:1.0.0-beta04 is released. Version 1.0.0-beta04 contains these commits.

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

  • Rename WindowInfoRepository to WindowInfoTracker.
  • Make Activity an explicit method dependency for WindowInfoTracker.
  • Add a simple TestRule for WindowMetricsCalculator to support developers using Robolectric.

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

  • Extract extensions ( I25a5f )
  • add isEmpty in ActivityStack ( I5a4e6 )
  • Rename WindowInfoRepository to WindowInfoTracker.
    • Update java/rxjava/testing dependencies to match. ( I0da63 )
  • Add a test rule for a simple WindowMetricsCalculator. ( Ibacdb )

Version 1.0.0-beta03

27 অক্টোবর, 2021

androidx.window:window-*:1.0.0-beta03 is released. Version 1.0.0-beta03 contains these commits.

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

  • Add experimental Activity Embedding APIs. This initial layout version allows showing two Activities side by side.

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

  • Removed the currentWindowMetrics API since we can not provide it accurately. Please use WindowMetricsCalculator instead ( Icda5f )
  • Updated the extensions api. ( Ica92b )
  • Added an interface for a new feature that allows embedding activities and showing them side-by-side within the parent task window. ( I5711d )
  • Hid the constructors for WindowMetrics and WindowLayoutInfo, please use the test APIs instead. ( I5a1b5 )
  • Add an API to create fake WindowLayoutInfo objects. ( I4a2fd )

বাগ ফিক্স

Version 1.0.0-beta02

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

androidx.window:window-*:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits.

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

  • Add an experimental annotation to annotate experimental APIs. ( I9f1b6 )
  • Add a test method to create a test FoldingFeature that accepts a Rect. This will make it easie to test when using Robolectric as opposed to an actual Activity. ( Id1cca )

সংস্করণ 1.0.0-beta01

18 আগস্ট, 2021

androidx.window:window-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.

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

  • Removed old constants and made FoldingFeature into an interface.

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

  • Remove old constants and make FoldFeature an interface. ( I9a2d5 )

বাগ ফিক্স

  • Libraries that depend on the Test Core library have been upgraded to version 1.4.0 and will now work with Android platform version S. ( I88b72 , b/189353863 )

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

4 আগস্ট, 2021

androidx.window:window-*:1.0.0-alpha10 is released. সংস্করণ 1.0.0-alpha10 এই কমিট ধারণ করে।

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

  • Rename WindowInfoRepo to WindowInfoRepository and adjust corresponding classes / files.
  • Convert current window metrics to a Flow in WindowInfoRepository since the value changes over time.
  • Rename WindowInfoRepoJavaAdapter to WindowInfoRepoCallbackAdapter
  • Add helper method to create test FoldingFeature objects
  • Update packages to group classes based on the feature they are supporting.

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

  • Rename ActivityExt to ActivityExtensions Change from Repo to Repository. ( I61a16 )
  • Update packages for classes. ( I23ae2 )
  • Remove WindowMetrics from WindowInfoRepo ( I24663 )
  • Remove WindowManager and use WindowInfoRepo
    • Make WindowBackend internal. ( I06d9a )
  • Convert window metrics to Flow.
    • Rename java adapter to WindowInfoRepoCallbackAdapter
    • Remove callbackFlow so no more experimental APIs are in use. ( Ia4d15 )
  • Add helper method to create test display features.
    • Change from occlusionMode to occlusionType ( If4cff )

বাগ ফিক্স

  • Fix proguard error where core library was being removed.
  • Fix error where WindowLayoutInfo was not being delivered to additional subscribers.
  • Fix error where config changes would not trigger folding feature updates.

সংস্করণ 1.0.0-alpha09

৩০ জুন, ২০২১

androidx.window:window-*:1.0.0-alpha09 is released. 1.0.0-alpha09 সংস্করণে এই কমিট রয়েছে।

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

  • Change from integer constants to unbounded enums.
  • Add a test util to create test folding features.

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

  • Add helper method to create test display features. ( I3cf54 )
    • Change from occlusionMode to occlusionType .

বাগ ফিক্স

  • Emit initial value when adding multiple consumers of the data streams.

সংস্করণ 1.0.0-alpha08

16 জুন, 2021

androidx.window:window-*:1.0.0-alpha08 is released. সংস্করণ 1.0.0-alpha08 এই কমিট ধারণ করে।

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

  • Released a testing artifact to make it easier to test when using WindowInfoRepository. Use WindowInfoRepository to get information about DisplayFeatures and the WindowMetrics. ( I57f66 , Ida620 )

সংস্করণ 1.0.0-alpha07

2 জুন, 2021

androidx.window:window-*:1.0.0-alpha07 is released. সংস্করণ 1.0.0-alpha07 এই কমিট ধারণ করে।

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

  • Migrate core window library to Kotlin. Will use coroutines and suspend functions to expose asynchronous data going forward.
  • Add WindowInfoRepo as the main interaction point for getting the WindowMetrics and the stream of WindowLayoutInfo.
  • New window-java artifact to expose Java-friendly APIs to register and unregister callbacks.
  • New window-rxjava2 and window-rxjava3 artifacts to expose RxJava adapted APIs.

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

  • Add WindowServices to provide dependencies uniformly.
    • Add coroutine based api to consume window layout info. ( Iab70f )
  • Migrate core window manager library to Kotlin. ( Icca34 )

বাগ ফিক্স

  • Add new data class to represent feature bounds. ( I6dcd1 )

সংস্করণ 1.0.0-alpha06

5 মে, 2021

androidx.window:window:1.0.0-alpha06 is released. সংস্করণ 1.0.0-alpha06 এই কমিট ধারণ করে।

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

  • We have started our migration to Kotlin and will finish in the next release.
  • DeviceState has been removed from the public API, please use FoldingFeature instead.
  • We have removed STATE_FLIPPED from the FoldingFeature states since it is not supported by any use-case at the moment.
  • We have also removed other deprecated APIs.

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

  • Adding Kotlin as a dependency.
    • Migrate core library to Kotlin. ( Idd995 )
  • Removed DisplayFeature builder. ( I61fa4 )
  • Removed DeviceState from public api, use FoldingFeature instead. ( Id6079 )
  • Remove device state callback from extensions. ( I5ea83 )
  • Remove STATE_FLIPPED from FoldingFeature. ( I9c4e1 )
  • Remove deprecated registration methods. ( Ib381b )

সংস্করণ 1.0.0-alpha05

24 মার্চ, 2021

androidx.window:window:1.0.0-alpha05 is released. 1.0.0-alpha05 সংস্করণে এই কমিট রয়েছে।

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

We have added convenience methods to FoldingFeature so that apps can tell if the feature is separating, occluding, and determine the orientation of the hinge. We are also hiding the hinge type so that

We are removing the synchronous read methods from WindowManager. Synchronous read methods are error prone since there is an implicit race condition. Register listeners and callbacks to receive updates on the WindowLayoutInfo.

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

  • Add convenience methods for working with FoldingFeatures ( Ie733f )
  • Removes synchronous read methods from WindowManager ( I96fd4 )

সংস্করণ 1.0.0-alpha04

10 মার্চ, 2021

androidx.window:window:1.0.0-alpha04 is released. সংস্করণ 1.0.0-alpha04 এই কমিট ধারণ করে।

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

  • Fixes a bug where no WindowLayoutInfo is emitted if there isn't an OEM implementation. Now we emit an empty WIndowLayoutInfo.
  • Fix a bug where state would not update properly if the hinge state changed while the app was backgrounded. Now the state should be consistent.
  • Update our proguard files to ignore warnings from runtime dependencies.

বাগ ফিক্স

  • Emit an empty value when the OEM library is missing. ( Ide935 )

সংস্করণ 1.0.0-alpha03

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

androidx.window:window:1.0.0-alpha03 is released. সংস্করণ 1.0.0-alpha03 এই কমিট ধারণ করে।

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

  • Emit an empty value for WindowLayoutInfo when the OEM implementation is empty. This should make it easier to use the library on more devices. Since the APIs are asynchronous it is still recommended that apps write some defensive code and emit a default value after a timeout. We do not have any guarantees on OEM implementations and the initial value may be delayed.

বাগ ফিক্স

  • Emit an empty value when the OEM library is missing. ( Ide935 )

সংস্করণ 1.0.0-alpha02

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

androidx.window:window:1.0.0-alpha02 is released. সংস্করণ 1.0.0-alpha02 এই কমিট ধারণ করে।

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

  • We have deprecated some APIs to help streamline the api and reduce mistakes. Some notable examples are removing the synchronous read operations from WindowManager and deprecating DeviceState. Synchronous read operations can lead to race conditions and have incorrect UI.

  • We have converted DisplayFeature to an interface that other features will implement going forward. Our first feature is FoldingFeature which is now the representation of a screen fold or a hinge. This also contains the state of the hinge replacing DeviceState.

  • WindowMetrics was introduced in Android 11 to provide developers with a simple way to query for metrics about a window, for example its position and size on screen and any system insets. We've backported the API in this release so that developers can leverage WindowMetrics and continue to support older Android versions. WindowMetrics can be obtained through the WindowManager#getCurrentWindowMetrics() and WindowManager#getMaximumWindowMetrics() APIs.

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

  • Deprecate APIs that will be removed in the next alpha ( Ib7cc4 )
  • Updates ExtensionInterface to accept explicit Activity references. ( I07ded )
  • Introduces the WindowMetrics API. ( I3ccee )
  • Remove synchronous read methods from WindowManager ( I69983 )
  • Make ExtensionWindowBackend package protected. ( Ied208 )

বাগ ফিক্স

  • Update ExtensionInterface APIs to accept visual contexts. ( I8e827 )

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

  • Merge DeviceState and WindowLayoutInfo so it is easier to access data. ( Id34f4 )

সংস্করণ 1.0.0-alpha01

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

androidx.window:window:1.0.0-alpha01 and androidx.window:window-extensions:1.0.0-alpha01 are released. সংস্করণ 1.0.0-alpha01-এ এই কমিট রয়েছে। This is the first release of the Window Manager library.

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

  • DisplayFeature : This new API identifies disruptions in the continuous flat screen surfaces such as hinges or folds
  • DeviceState : This new API provides the current posture of the phone from a list of defined postures (For example, CLOSED , OPENED , HALF_OPENED , etc.)