উইন্ডো ম্যানেজার
সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | মুক্তির প্রার্থী | বিটা রিলিজ | আলফা রিলিজ |
---|---|---|---|---|
7 আগস্ট, 2024 | 1.3.0 | - | - | 1.4.0-আলফা01 |
নির্ভরতা ঘোষণা করা
WindowManager-এ নির্ভরতা যোগ করতে, আপনাকে অবশ্যই আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google এর Maven সংগ্রহস্থল পড়ুন।
আপনার অ্যাপ বা মডিউলের জন্য build.gradle
ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টগুলির জন্য নির্ভরতা যোগ করুন:
Groovy
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" }
Kotlin
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-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 এই কমিট ধারণ করে।
এপিআই পরিবর্তন
- অস্থির API গুলি সরান। ( Ibc534 , b/302380585 )
সংস্করণ 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
স্থিতিশীল করুন।
এপিআই পরিবর্তন
বাগ ফিক্স
- ফোর্স রিসাইজ ওভাররাইডের জন্য অপ্ট-আউট কমপ্যাট সম্পত্তি যোগ করা হচ্ছে ( 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 )
-
SplitController
এSplitInfo
ওভাররাইড করার পদ্ধতি যোগ করুন।SplitInfo
এবংActivityStack
এর জন্য ডবল তৈরি করতে পরীক্ষা পদ্ধতি যোগ করুন। ( Icd69f ) -
ActivityRule.Builder
এর জন্য ট্যাগটিকে ঐচ্ছিক করুন। ( Ib0b44 ) -
RatioSplitType
,ExpandContainersSplit
এবংHingeSplitType
সরান। তারা এখনSplitType
।-
#splitEqually()
,#expandContainers()
এবং#splitByHinge
কে ধ্রুবকSplitType SPLIT_TYPE_EQUAL
,SPLIT_TYPE_EXPAND
এবংSPLIT_TYPE_HINGE
এ প্রতিস্থাপন করুন - কব্জা স্প্লিট টাইপের ফলব্যাক টাইপ সেট করতে কার্যকারিতা সরান। যদি বর্তমান ডিভাইস বা উইন্ডো অবস্থার কারণে কব্জা বিভক্ত প্রকারটি প্রয়োগ করা না যায়, তাহলে এটি মূল টাস্ক কন্টেইনারকে সমানভাবে বিভক্ত করতে ফলব্যাক করে। ফলব্যাক স্প্লিট টাইপ কাস্টমাইজ করতে
SplitController#setSplitAttributesCalculator
ব্যবহার করুন। ( IFcc59 )
-
- স্প্লিটকলব্যাক
add
/removeSplitCallback
-
SplitControllerCallbackAdapter
এadd
/removeSplitCallback
সরান -
SplitInfo
তালিকা পেতেFlow
সমর্থন যোগ করুন ( I7f1b6 )
-
-
ActivityEmbeddingController
( I42e9b ) এর জন্য একটি পরীক্ষার নিয়ম যোগ করুন -
ActivityOptionsCompat
নাম পরিবর্তন করেActivityEmbeddingOptions
( I89301 ) - অ্যাক্টিভিটি এমবেডিং উপলব্ধ কিনা তা নির্দেশ করতে
splitSupportStatus
যোগ করুন। ( I10024 ) -
DEFAULT
মানকে আরও ভালোভাবে উপস্থাপন করতেSplitAttributes.BackgroundColor
প্রবর্তন করুন। স্পষ্ট করুন যে অ-অস্বচ্ছ অ্যানিমেশন পটভূমির রঙ সমর্থিত নয়, তাই যেকোনো অ-অস্বচ্ছ রংকে ডিফল্ট হিসাবে গণ্য করা হবে, যার অর্থ বর্তমান থিম উইন্ডোর পটভূমির রঙ ব্যবহার করা। ( IC6b95 ) -
ALWAYS_ALLOW
এবংALWAYS_DISALLOW
দিয়েalwaysAllow()
এবংalwaysDisallow()
প্রতিস্থাপন করুন। ( I3057b ) -
SplitRule
,SplitAttributes
,SplitAttributesCalculator
এর জন্য API যোগ করুন। ( I92d23 ) - পরীক্ষার জন্য
ActivityStack
তৈরি করতেTestActivityStack
যোগ করুন- পরীক্ষার জন্য
SplitInfo
তৈরি করতেTestSplitInfo
যোগ করুন। ( I8e779 )
- পরীক্ষার জন্য
- জাল
SplitAttributesCalculatorParams
তৈরি করার একটি উপায় যোগ করুন যাতে ডেভেলপাররা তাদের কাস্টমাইজডSplitAttributesCalculator
( Id4a6e ) যাচাই করতে পারে -
WindowMetricsCalculator#computeCurrentWindowMetrics(@UiContext context: Context)
এবংWindowMetricsCalculator#computeMaximumWindowMetrics(@UiContext context: Context)
যোগ করুন ( I66c7f )
সংস্করণ 1.2.0-alpha02
7 জুন, 2023
androidx.window:window-*:1.2.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha02 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- অনির্দিষ্ট ভাঁজ বৈশিষ্ট্যগুলির জন্য একটি ধ্রুবক থাকতে পরীক্ষা API আপডেট করুন।
-
WindowLayoutInfoPublishRule
দিয়ে ওভাররাইড করাwindowLayoutInfo
এর সমস্ত মানকে ওভাররাইড করবে, প্রসঙ্গ ভিত্তিক API সহ।
এপিআই পরিবর্তন
- অনির্দিষ্ট কেন্দ্র ভাঁজ বৈশিষ্ট্য জন্য ধ্রুবক যোগ করুন. ( I7530c )
বাগ ফিক্স
-
Context
ভিত্তিকWindowLayoutInfo
এ ওভাররাইড সমর্থন করতেWindowLayoutInfoPublishRule
আপডেট করুন। ( I2037a )
সংস্করণ 1.2.0-alpha01
24 মে, 2023
androidx.window:window-*:1.2.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha01-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
অ্যাক্টিভিটি এমবেডিং এবং WindowLayoutInfoTracker
চারপাশে টেস্টিং API গুলিকে স্থিতিশীল করুন৷ ActivityEmbeddingRule
স্থিতিশীল হিসাবে উন্নীত করা হয়েছে। WindowMetricsCalculatorRule
স্থিতিশীল হিসাবে উন্নীত করা হয়েছে। পরীক্ষার জন্য একটি FoldingFeature
তৈরি করতে ইউটিলিটি ফাংশনগুলিকে স্থিতিশীল হিসাবে উন্নীত করা হয়েছে।
এপিআই পরিবর্তন
- অ্যাক্টিভিটি এমবেডিং এর চারপাশে ইউনিট টেস্টিং সমর্থন করতে
ActivityEmbeddingRule
স্থিতিশীল করুন। ( I8d6b6 ) -
WindowMetrisCalculatorTestRule
স্থিতিশীল JVM পরীক্ষার জন্য স্টাব মেট্রিক্সের অনুমতি দেয়। আমরা সঠিক ফলাফলের জন্য একটি এমুলেটর ব্যবহার করার পরামর্শ দিই। - JVM পরীক্ষা সমর্থন করার জন্য
WindowLayoutInfo
এর জন্য পরীক্ষা API গুলিকে স্থির করুন। ( IE036e ) - পরীক্ষা ভাঁজ বৈশিষ্ট্য মান জন্য
IntRange
যোগ করুন. ( I69f7d )
সংস্করণ 1.1
সংস্করণ 1.1.0
7 জুন, 2023
androidx.window:window-*:1.1.0
প্রকাশিত হয়েছে। সংস্করণ 1.1.0 এই কমিট ধারণ করে.
1.0.0 থেকে গুরুত্বপূর্ণ পরিবর্তন
অ্যাক্টিভিটি এমবেডিং
- অ্যাপ ম্যানিফেস্টে
<application>
ট্যাগের বুলিয়ান প্রপার্টি হিসেবেPROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED
যোগ করা হয়েছে। - কেন বিভক্ত বৈশিষ্ট্যটি উপলব্ধ নয় সে সম্পর্কে আরও বিশদ তথ্য প্রদানের জন্য অপ্রচলিত
isSplitSupported
এবংsplitSupportStatus
দিয়ে প্রতিস্থাপিত হয়েছে। -
splitSupportStatus
সম্পত্তির জন্য স্টেট কনস্ট্যান্ট প্রদান করতেSplitController.SplitSupportStatus
নেস্টেড ক্লাস যোগ করা হয়েছে। - বিভিন্ন মডিউলে রিফ্যাক্টর করা
SplitController
:-
Activity
বাActivityStack
সম্পর্কিত API-এর জন্যActivityEmbeddingController
মডিউল। -
SplitController
থেকেisActivityEmbedded
ActivityEmbeddingController
সরানো হয়েছে। -
EmbeddingRule
সম্পর্কিত ক্রিয়াকলাপের জন্যRuleController
মডিউল: - সরানো
SplitController
APIs: -
clearRegisteredRules()
-
getSplitRules()
-
initialize()
-
registerRule()
-
unregisterRule()
-
RuleController
API যোগ করা হয়েছে: -
addRule()
— একটি নিয়ম যোগ করে বা একই ট্যাগ আছে এমন নিয়ম আপডেট করে। -
removeRule()
— নিবন্ধিত নিয়মের সংগ্রহ থেকে একটি নিয়ম সরিয়ে দেয়। -
setRules()
— নিয়মের একটি সংগ্রহ স্থাপন করে। -
clearRules()
— সমস্ত নিবন্ধিত নিয়ম মুছে দেয়। -
parseRules()
— XML নিয়ম সংজ্ঞা থেকে নিয়ম পার্স করে।
-
- সমস্ত মডিউলের জন্য
#getInstance()
পদ্ধতি দ্বারা আরম্ভ করার জন্য একটি প্রসঙ্গ প্রয়োজন, সহ:-
ActivityEmbeddingController#getInstance(Context)
-
SplitController#getInstance(Context)
-
RuleController#getInstance(Context)
-
- ডিসপ্লে অ্যাসপেক্ট রেশিওর সাথে সম্পর্কিত enum-এর মতো আচরণের ধ্রুবক সংজ্ঞায়িত করতে
EmbeddingAspectRatio
ক্লাস যোগ করা হয়েছে। - বিভক্ত বিন্যাস সংজ্ঞায়িত করতে
SplitAttributes
ক্লাস যোগ করা হয়েছে। - স্প্লিট লেআউট কাস্টমাইজ করতে
SplitAttributes
ক্যালকুলেটর ফাংশনSplitController
এ যোগ করা হয়েছে:-
setSplitAttributesCalculator(Function)
-
clearSplitAttributesCalculator()
-
isSplitAttributesCalculatorSupported()
ডিভাইসেSplitAttributesCalculator
API সমর্থিত কিনা তা পরীক্ষা করতে
-
-
EmbeddingRule#tag
ক্ষেত্র যোগ করা হয়েছে। -
SplitRule
এ API আপডেট:- যোগ করা হয়েছে
defaultSplitAttributes
— একটি বিভাজনের ডিফল্ট স্প্লিট বিন্যাস সংজ্ঞায়িত করে;splitRatio
এবংlayoutDirection
প্রতিস্থাপন করে। -
defaultSplitAttributes
এ XML বৈশিষ্ট্যsplitRatio
এবংsplitLayoutDirection
এর অনুবাদ যোগ করা হয়েছে। - পিক্সেলের পরিবর্তে ঘনত্ব-স্বাধীন পিক্সেল (dp) ব্যবহার করতে ন্যূনতম মাত্রার সংজ্ঞা পরিবর্তন করা হয়েছে।
- ডিফল্ট মান 600dp সহ
minHeightDp
যোগ করা হয়েছে। - ডিফল্ট মান 600dp সহ
minWidth
থেকেminWidthDp
এ পরিবর্তন করা হয়েছে৷ - ডিফল্ট মান 600dp সহ
minSmallestWidth
থেকেminSmallestWidthDp
এ পরিবর্তন করা হয়েছে৷ - ডিফল্ট মান
ALWAYS_ALLOW
সহmaxAspectRatioInHorizontal
যোগ করা হয়েছে। - ডিফল্ট মান 1.4 সহ
maxAspectRatioInPortrait
যোগ করা হয়েছে। - ফিনিশ আচরণ ধ্রুবক প্রতিস্থাপন করতে
FinishBehavior
নেস্টেড ক্লাস সংজ্ঞায়িত করা হয়েছে। -
SplitPairRule
এবংSplitPlaceholderRule
এর বিল্ডার নেস্টেড ক্লাসে সম্পত্তির পরিবর্তনগুলি প্রয়োগ করা হয়েছে।
- যোগ করা হয়েছে
- স্প্লিট-সম্পর্কিত অতিরিক্ত তথ্য প্রদানের জন্য
SplitInfo#getSplitRatio()
SplitInfo#getSplitAttributes()
প্রতিস্থাপিত হয়েছে।
উইন্ডো লেআউট
-
WindowInfoTracker
এ পরীক্ষামূলক নন-অ্যাক্টিভিটি UI প্রসঙ্গ সমর্থন যোগ করা হয়েছে। -
WindowMetricsCalculator
এ পরীক্ষামূলক নন-অ্যাক্টিভিটি UI প্রসঙ্গ যোগ করা হয়েছে।
মাইগ্রেশন ধাপ
- বিভাজনে ক্রিয়াকলাপগুলি প্রদর্শনের জন্য অ্যাক্টিভিটি এমবেডিং সক্ষম করতে, অ্যাপগুলিকে ম্যানিফেস্ট
<application>
ট্যাগেPROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED
বৈশিষ্ট্য যোগ করতে হবে:xml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" />
এই অনুমতি দেয় সময়ের আগে একটি অ্যাপ্লিকেশনের জন্য বিভক্ত আচরণ অপ্টিমাইজ করার জন্য সিস্টেম। -
SplitInfo
অনুপাত- বর্তমান স্প্লিট স্ট্যাক করা আছে কিনা দেখুন:
kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
- বর্তমান অনুপাত পরীক্ষা করুন:
kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
- বর্তমান স্প্লিট স্ট্যাক করা আছে কিনা দেখুন:
- স্প্লিটকন্ট্রোলার মাইগ্রেশন:
-
SplitController.getInstance()
SplitController.getInstance(Context)
এ পরিবর্তন হয়। -
SplitController.initialize(Context, @ResId int)
RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int))
এ পরিবর্তন হয়। -
SplitController.getInstance().isActivityEmbedded(Activity)
ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity)
-
SplitController.getInstance().registerRule(rule)
RuleController.getInstance(Context).addRule(rule)
। -
SplitController.getInstance().unregisterRule(rule)
পরিবর্তন করেRuleController.getInstance(Context).removeRule(rule)
। -
SplitController.getInstance().clearRegisteredRules()
RuleController.getInstance(Context).clearRules()
এ পরিবর্তন হয়। -
SplitController.getInstance().getSplitRules()
RuleController.getInstance(Context).getRules()
এ পরিবর্তন হয়।
-
-
SplitRule
সম্পত্তি স্থানান্তর:-
minWidth
এবংminSmallestWidth
এখন পিক্সেলের পরিবর্তে dp ইউনিট ব্যবহার করে। অ্যাপগুলি নিম্নলিখিত কলটি ব্যবহার করতে পারে:kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics )
অথবা কেবলdisplayMetrics#density
দ্বারাminWith
পিক্সেলে ভাগ করুন।
-
- ফিনিশ আচরণের ধ্রুবকগুলি অবশ্যই
FinishBehavior
enum-এর মতো শ্রেণী ধ্রুবকগুলিতে স্থানান্তরিত করতে হবে:-
FINISH_NEVER
FinishBehavior.NEVER
এ পরিবর্তন হয় না। -
FINISH_ALWAYS
FinishBehavior.ALWAYS
এ পরিবর্তন হয়।AlWAYS। -
FINISH_ADJACENT
পরিবর্তিত হয়েছেFinishBehavior.ADJACENT
।
-
- লেআউটের দিকনির্দেশকে অবশ্যই
SplitAttributes.LayoutDirection
এ স্থানান্তরিত করতে হবে:-
ltr
পরিবর্তন করেSplitAttributes.LayoutDirection.LEFT_TO_RIGHT
. -
rtl
পরিবর্তন করেSplitAttributes.LayoutDirection.RIGHT_TO_LEFT
. -
SplitAttributes.LayoutDirection.LOCALE
এlocale
পরিবর্তন হয়। -
splitRatio
অবশ্যইSplitAttributes.SplitType.ratio(splitRatio)
এ স্থানান্তরিত হতে হবে।
-
-
SplitPairRule.Builder
মাইগ্রেশন:-
SplitPairRule.Builder(filters, minWidth, minSmallestWidth)
kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
-
setLayoutDirection(layoutDirection)
এবংsetSplitRatio(ratio)
kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
-
setFinishPrimaryWithSecondary
এবংsetFinishSecondaryWithPrimary
FinishBehavior
enum-এর মতো ধ্রুবক গ্রহণ করে। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন। - পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য
setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)
ব্যবহার করুন।
-
-
SplitPlaceholder.Builder
মাইগ্রেশন:- শুধুমাত্র
filters
এবংplaceholderIntent
প্যারামিটার আছে। অন্যান্য বৈশিষ্ট্য সেটটারে চলে যায়। বিস্তারিত জানার জন্য "SplitPairRule.Builder মাইগ্রেশন" দেখুন। -
setFinishPrimaryWithPlaceholder
FinishBehavior
enum-এর মতো ধ্রুবক নেয়। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন। -
setLayoutDirection(layoutDirection)
এবংsetSplitRatio(ratio)
এতে পরিবর্তন করুন:kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
- পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য
setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)
ব্যবহার করুন।
- শুধুমাত্র
সংস্করণ 1.1.0-rc01
10 মে, 2023
androidx.window:window-*:1.1.0-rc01
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-rc01-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- একটি স্থিতিশীল API হিসাবে
ActivityEmbedding
প্রকাশ করুন। - বিভিন্ন বাগ ফিক্স।
সংস্করণ 1.1.0-beta02
5 এপ্রিল, 2023
androidx.window:window-*:1.1.0-beta02
প্রকাশিত হয়েছে। 1.1.0-beta02 সংস্করণে এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- অভ্যন্তরীণ সংশোধন করুন এবং পরিষ্কার করুন।
সংস্করণ 1.1.0-beta01
22 মার্চ, 2023
androidx.window:window-*:1.1.0-beta01
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-beta01-এ এই কমিট রয়েছে।
অ্যাক্টিভিটি এমবেডিং
- অ্যাপ ম্যানিফেস্টে
<application>
ট্যাগের বুলিয়ান প্রপার্টি হিসেবেPROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED
যোগ করা হয়েছে। - কেন বিভক্ত বৈশিষ্ট্যটি উপলব্ধ নয় সে সম্পর্কে আরও বিশদ তথ্য প্রদানের জন্য অপ্রচলিত
isSplitSupported
এবংsplitSupportStatus
দিয়ে প্রতিস্থাপিত হয়েছে। -
splitSupportStatus
সম্পত্তির জন্য স্টেট কনস্ট্যান্ট প্রদান করতেSplitController.SplitSupportStatus
নেস্টেড ক্লাস যোগ করা হয়েছে। - বিভিন্ন মডিউলে রিফ্যাক্টর করা
SplitController
:-
Activity
বাActivityStack
সম্পর্কিত API-এর জন্যActivityEmbeddingController
মডিউল। -
SplitController
থেকেisActivityEmbedded
ActivityEmbeddingController
সরানো হয়েছে। -
EmbeddingRule
সম্পর্কিত ক্রিয়াকলাপের জন্যRuleController
মডিউল: - সরানো
SplitController
APIs:-
clearRegisteredRules()
-
getSplitRules()
-
initialize()
-
registerRule()
-
unregisterRule()
-
-
RuleController
API যোগ করা হয়েছে:-
addRule()
— একটি নিয়ম যোগ করে বা একই ট্যাগ আছে এমন নিয়ম আপডেট করে। -
removeRule()
— নিবন্ধিত নিয়মের সংগ্রহ থেকে একটি নিয়ম সরিয়ে দেয়। -
setRules()
— নিয়মের একটি সংগ্রহ স্থাপন করে। -
clearRules()
— সমস্ত নিবন্ধিত নিয়ম মুছে দেয়। - `parseRules() — XML নিয়ম সংজ্ঞা থেকে নিয়ম পার্স করে।
-
-
- সমস্ত মডিউলের জন্য
#getInstance()
পদ্ধতি দ্বারা আরম্ভ করার জন্য একটি প্রসঙ্গ প্রয়োজন, সহ:-
ActivityEmbeddingController#getInstance(Context)
-
SplitController#getInstance(Context)
-
RuleController#getInstance(Context)
-
- ডিসপ্লে অ্যাসপেক্ট রেশিওর সাথে সম্পর্কিত enum-এর মতো আচরণের ধ্রুবক সংজ্ঞায়িত করতে
EmbeddingAspectRatio
ক্লাস যোগ করা হয়েছে। - বিভক্ত বিন্যাস সংজ্ঞায়িত করতে
SplitAttributes
ক্লাস যোগ করা হয়েছে। - স্প্লিট লেআউট কাস্টমাইজ করতে
SplitAttributes
ক্যালকুলেটর ফাংশনSplitController
এ যোগ করা হয়েছে:-
setSplitAttributesCalculator(Function)
-
clearSplitAttributesCalculator()
-
isSplitAttributesCalculatorSupported()
ডিভাইসে SplitAttributesCalculator API সমর্থিত কিনা তা পরীক্ষা করতে
-
-
EmbeddingRule#tag
ক্ষেত্র যোগ করা হয়েছে। -
SplitRule
এ API আপডেট:- যোগ করা হয়েছে
defaultSplitAttributes
— একটি বিভাজনের ডিফল্ট স্প্লিট বিন্যাস সংজ্ঞায়িত করে;splitRatio
এবংlayoutDirection
প্রতিস্থাপন করে। -
defaultSplitAttributes
এ XML বৈশিষ্ট্যsplitRatio
এবংsplitLayoutDirection
এর অনুবাদ যোগ করা হয়েছে। - পিক্সেলের পরিবর্তে ঘনত্ব-স্বাধীন পিক্সেল (dp) ব্যবহার করতে ন্যূনতম মাত্রার সংজ্ঞা পরিবর্তন করা হয়েছে।
- ডিফল্ট মান 600dp সহ
minHeightDp
যোগ করা হয়েছে। - ডিফল্ট মান 600dp সহ
minWidth
থেকেminWidthDp
এ পরিবর্তন করা হয়েছে৷ - ডিফল্ট মান 600dp সহ
minSmallestWidth
থেকেminSmallestWidthDp
এ পরিবর্তন করা হয়েছে৷ - ডিফল্ট মান
ALWAYS_ALLOW
সহmaxAspectRatioInHorizontal
যোগ করা হয়েছে। - ডিফল্ট মান
1.4
সহmaxAspectRatioInPortrait
যোগ করা হয়েছে। - ফিনিশ আচরণ ধ্রুবক প্রতিস্থাপন করতে
FinishBehavior
নেস্টেড ক্লাস সংজ্ঞায়িত করা হয়েছে। -
SplitPairRule
এবংSplitPlaceholderRule
এরBuilder
নেস্টেড ক্লাসে সম্পত্তির পরিবর্তনগুলি প্রয়োগ করা হয়েছে।
- যোগ করা হয়েছে
- স্প্লিট-সম্পর্কিত অতিরিক্ত তথ্য প্রদানের জন্য
SplitInfo#getSplitRatio()
SplitInfo#getSplitAttributes()
প্রতিস্থাপিত হয়েছে।
উইন্ডো লেআউট
-
WindowInfoTracker
এ নন-অ্যাক্টিভিটি UI প্রসঙ্গ সমর্থন যোগ করা হয়েছে। -
WindowMetricsCalculator
এ নন-অ্যাক্টিভিটি UI প্রসঙ্গ যোগ করা হয়েছে।
মাইগ্রেশন ধাপ
- বিভাজনে ক্রিয়াকলাপগুলি প্রদর্শনের জন্য অ্যাক্টিভিটি এমবেডিং সক্ষম করতে, অ্যাপগুলিকে ম্যানিফেস্ট
<application>
ট্যাগেPROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED
বৈশিষ্ট্য যোগ করতে হবে:xml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" />
এই অনুমতি দেয় সময়ের আগে একটি অ্যাপ্লিকেশনের জন্য বিভক্ত আচরণ অপ্টিমাইজ করার জন্য সিস্টেম। -
SplitInfo
অনুপাত- বর্তমান স্প্লিট স্ট্যাক করা আছে কিনা দেখুন:
kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
- বর্তমান অনুপাত পরীক্ষা করুন:
kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
- বর্তমান স্প্লিট স্ট্যাক করা আছে কিনা দেখুন:
-
SplitController
মাইগ্রেশন:-
SplitController.getInstance()
SplitController.getInstance(Context)
এ পরিবর্তন হয়। -
SplitController.initialize(Context, @ResId int)
RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int))
এ পরিবর্তন হয়। -
SplitController.getInstance().isActivityEmbedded(Activity)
ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity)
-
SplitController.getInstance().registerRule(rule)
RuleController.getInstance(Context).addRule(rule)
। -
SplitController.getInstance().unregisterRule(rule)
পরিবর্তন করেRuleController.getInstance(Context).removeRule(rule)
। -
SplitController.getInstance().clearRegisteredRules()
RuleController.getInstance(Context).clearRules()
এ পরিবর্তন হয়। -
SplitController.getInstance().getSplitRules()
RuleController.getInstance(Context).getRules()
এ পরিবর্তন হয়।
-
-
SplitRule
সম্পত্তি স্থানান্তর:-
minWidth
এবংminSmallestWidth
এখন পিক্সেলের পরিবর্তে dp ইউনিট ব্যবহার করে। অ্যাপগুলি নিম্নলিখিত কলটি ব্যবহার করতে পারে:kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics )
অথবা কেবলdisplayMetrics#density
দ্বারাminWith
পিক্সেলে ভাগ করুন।
-
- ফিনিশ আচরণের ধ্রুবকগুলি অবশ্যই
FinishBehavior
enum-এর মতো শ্রেণী ধ্রুবকগুলিতে স্থানান্তরিত করতে হবে:-
FINISH_NEVER
FinishBehavior.NEVER
এ পরিবর্তন হয় না। -
FINISH_ALWAYS
FinishBehavior.ALWAYS
এ পরিবর্তন হয়।AlWAYS। -
FINISH_ADJACENT
পরিবর্তিত হয়েছেFinishBehavior.ADJACENT
।
-
- লেআউটের দিকনির্দেশকে অবশ্যই
SplitAttributes.LayoutDirection
এ স্থানান্তরিত করতে হবে:-
ltr
পরিবর্তন করেSplitAttributes.LayoutDirection.LEFT_TO_RIGHT
. -
rtl
পরিবর্তন করেSplitAttributes.LayoutDirection.RIGHT_TO_LEFT
. -
SplitAttributes.LayoutDirection.LOCALE
এlocale
পরিবর্তন হয়। -
splitRatio
অবশ্যইSplitAttributes.SplitType.ratio(splitRatio)
এ স্থানান্তরিত হতে হবে।
-
-
SplitPairRule.Builder
মাইগ্রেশন:-
SplitPairRule.Builder(filters, minWidth, minSmallestWidth)
kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
-
setLayoutDirection(layoutDirection)
এবংsetSplitRatio(ratio)
kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
এ পরিবর্তন করুন। -
setFinishPrimaryWithSecondary
এবংsetFinishSecondaryWithPrimary
FinishBehavior
enum-এর মতো ধ্রুবক গ্রহণ করে। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন। - পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য
setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)
ব্যবহার করুন।
-
-
SplitPlaceholder.Builder
মাইগ্রেশন:- শুধুমাত্র
filters
এবংplaceholderIntent
প্যারামিটার আছে। অন্যান্য বৈশিষ্ট্য সেটটারে চলে যায়। বিস্তারিত জানার জন্য "SplitPairRule.Builder মাইগ্রেশন" দেখুন। -
setFinishPrimaryWithPlaceholder
FinishBehavior
enum-এর মতো ধ্রুবক নেয়। বিস্তারিত জানার জন্য "SplitRule মাইগ্রেশন" দেখুন। -
setLayoutDirection(layoutDirection)
এবংsetSplitRatio(ratio)
এতে পরিবর্তন করুন:kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
- পোর্ট্রেট ডিভাইসে বিভক্ত দেখানোর জন্য
setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)
ব্যবহার করুন।
- শুধুমাত্র
সংস্করণ 1.1.0-alpha06
22 ফেব্রুয়ারি, 2023
androidx.window:window-*:1.1.0-alpha06
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha06-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- একটি UI প্রসঙ্গ থেকে
WindowLayoutInfo
পাওয়ার পরীক্ষামূলক সংস্করণ প্রকাশ করুন।
এপিআই পরিবর্তন
- অ্যাক্টিভিটি এমবেডিং উপলব্ধ কিনা তা নির্দেশ করতে
splitSupportStatus
যোগ করুন। ( I10024 ) - পরীক্ষামূলক হিসাবে UI প্রসঙ্গ
WindowLayoutInfo
API তৈরি করুন। ( I58ee0 ) -
RearDisplay
মোড সক্ষম করতেWindowAreaController
এবং API-এর সাথে বর্তমান উইন্ডোটিকে রিয়ার ক্যামেরার সাথে সারিবদ্ধ ডিসপ্লেতে সরানোর জন্য চালু করে। ( IFfcbf ) - ডিফল্ট পটভূমির রঙ আপডেট করুন। ( I1ac1b )
-
SplitAttributes
params যোগ করুন। ( I18bdd ) -
SplitRule
,SplitAttributes
,SplitAttributesCalculator
এর জন্য API যোগ করুন। ( I92d23 ) -
maxAspectRatio
চারপাশে API গুলি উন্নত করুন:-
ALWAYS_ALLOW
এবংALWAYS_DISALLOW
দিয়েalwaysAllow()
এবংalwaysDisallow()
প্রতিস্থাপন করুন। - স্বতন্ত্র ডকুমেন্টেশন সহ @see-এর API ডকুমেন্টেশন আপডেট করুন। ( I3057b )
-
- নিম্নলিখিত কনস্ট্রাক্টরগুলিকে সর্বজনীন API থেকে সরানো হয়েছে কারণ তাদের অ্যাপগুলির দ্বারা কল করার কথা নয়৷
-
SplitInfo
কনস্ট্রাক্টর -
ActivityStack
কনস্ট্রাক্টর ( Ide534 )
-
-
SplitRule
এখনmaxAspectRatioInPortrait/Landscape
নেয়। এটি শুধুমাত্র তখনই ক্রিয়াকলাপগুলিকে বিভক্ত করার অনুমতি দেয় যখন প্যারেন্ট বাউন্ডের অনুপাত অনুরোধকৃতmaxAspectRatio
এর তুলনায় ছোট বা সমান হয়৷ ( IA5990 ) -
RuleController#parseRules
স্থির হতে পরিবর্তন করুন ( I785df ) - ActivityEmbedding-এর আশেপাশে APIs উন্নত করুন
- API নামকরণ সারিবদ্ধ করুন - একাধিক দৃষ্টান্তের জন্য যোগ/সরানো ব্যবহার করুন:
-
registerRule
addRule
এ পরিবর্তন হয় -
unregisterRule
removeRule
রুলে পরিবর্তন করে -
getSplitRules
getRules
দিয়ে প্রতিস্থাপন করুন যেহেতুActivityRule
একটি বিভক্ত নিয়ম নয় - নিয়মের একটি গুচ্ছ সেট করতে
RuleController#setRules
যোগ করুন -
SplitController
থেকে singletonRuleController
এ নিয়ম সম্পর্কিত APIগুলি বের করুন। তারা হল: -
addRule
-
removeRule
-
getRules
-
setRules
-
clearRules
-
parseRules
-
SplitController
থেকে singletonActivityEmbeddingController
এ#isActivityEmbedded
এক্সট্র্যাক্ট করুন। তারা হল: -
isActivityEmbedded
-
SplitController#initialize
সরান। XML ফাইল থেকে নিয়ম সেট করতে, অনুগ্রহ করে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)
- আমরা আর রানটাইম নিয়মের সাথে স্ট্যাটিক নিয়মগুলিকে আলাদা করি না। তাতে বলা হয়েছে, স্ট্যাটিক এক্সএমএল নিয়ম সংজ্ঞা বা রানটাইমে নিবন্ধিত হোক না কেন, সমস্ত নিয়ম মুছে ফেলার জন্য
#clearRules
ফলাফল কল করা।SplitController#clearRegisteredRules
এর লিগ্যাসি আচরণ পেতে, অনুগ্রহ করে XML রিসোর্স আইডি সহRuleController#parseRules
এ কল করুন এবং নিয়মগুলি আবার সেট করতেRuleController#setRules
কল করুন। এই পরিবর্তনের আগে:SplitController.getInstance(context).clearRegisteredRules()
এই পরিবর্তনের পরে:val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules)
( 396 )
- SplitRule API গুলি উন্নত করুন:
-
SplitRule
এর জন্য পিক্সেলের পরিবর্তে DP-তে ন্যূনতম মাত্রা নিন। -
SplitRule
বিল্ডারের জন্য রিফ্যাক্টর ন্যূনতম মাত্রা ঐচ্ছিক হিসাবে নিতে। ( I95f17 )
-
-
SplitController
শুরু করতে একটি প্রসঙ্গ পাস করুন ( I42549 ) -
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
APIs থেকে পরীক্ষামূলক API ট্যাগগুলি সরানো হয়েছে৷ -
Builder
হিসাবেActivityRule
কনস্ট্রাক্টর লুকান এটি নির্মাণের পছন্দের উপায়। -
WindowMetrics
এWindowInsets
পেতে একটি পরীক্ষামূলক পদ্ধতি যোগ করুন। - স্থানধারক শেষ করা রোধ করতে
SplitPlaceholderFinishBehavior
আপডেট করুন। স্থানধারক শেষ করার ফলে কিছু বিভ্রান্তিকর আচরণ হয়েছে।
এপিআই পরিবর্তন
- val
isEmpty
পাবলিক করুন মজা প্রতিস্থাপন করার জন্যisEmpty
. -
ActivityStack
প্যারামিটার কার্যকলাপের নাম পরিবর্তন করুনactivitiesInProcess
। ( IA5055 ) -
ActivityFilter#matchesClassName
এবংActivityFilter#matchesClassNameOrWildCard
সরান কারণ তারা বিভ্রান্তিকর। -
ActivityFilter#componentName
abdActivityFilter#intentAction
যোগ করুন যাতে কলকারী বিভিন্ন ফিল্টারকে আলাদা করতে পারে ( I41f22 ) - পরীক্ষামূলক API ( I216b3 ) থেকে
@Deprecated
API গুলি সরান - অ্যাক্টিভিটি এমবেডিং API ( I69ebe ) এর জন্য
@ExperimentalWindowApi
সরান -
ActivityRule
কনস্ট্রাক্টর লুকান, পরিবর্তে Builder ব্যবহার করুন। ( if4eb6 ) - কোনো অ্যাক্টিভিটি
ActivityFilter
অংশ কিনা তা পরীক্ষা করতে API যোগ করুন। ( IA43cf ) -
WindowMetrics
এবংWindowMetricsCalculatorCompat
ক্লাসে পরিবর্তনগুলি প্রতিফলিত করতে API ফাইলগুলি আপডেট করুন ( I667fe ) -
ActivityEmbedding
প্রপার্টি জাভাডক এবং ক্লাসের নাম ( Ia1386 ) আপডেট করুন - AndroidManifest.xml ( Id1ad4 ) এ ব্যবহার করার জন্য
ActivityEmbedding
প্রপার্টি ট্যাগ নাম যোগ করা হচ্ছে - নতুন API
SplitPlaceholderFinishBehavior
এবংSplitPlaceholderRule.finishPrimaryWithPlaceholder
যোগ করা হয়েছে, এটি বিদ্যমানSplitPlaceholderRule.finishPrimaryWithSecondary
কে প্রতিস্থাপন করে যা নির্ধারণ করে কখন প্লেসহোল্ডার অ্যাক্টিভিটগুলি শেষ হয়, অ্যাক্টিভিটিতে অ্যাক্টিভিটিগুলি কীভাবে যুক্ত হওয়া উচিত। ( I64647 )
বাগ ফিক্স
-
RearDisplay
মোড সক্ষম করতেWindowAreaController
এবং API-এর সাথে বর্তমান উইন্ডোটিকে রিয়ার ক্যামেরার সাথে সারিবদ্ধ ডিসপ্লেতে সরানোর জন্য চালু করে। ( I388ab )
সংস্করণ 1.1.0-alpha03
জুলাই 27, 2022
androidx.window:window-*:1.1.0-alpha03
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha03 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- এম্বেডিং নিয়মের জন্য ডিফল্ট মান আপডেট করুন।
এপিআই পরিবর্তন
- নিয়ম বৈশিষ্ট্য এমবেড করার জন্য ডিফল্ট মান আপডেট করুন। ( Ic4d35 )
সংস্করণ 1.1.0-alpha02
11 মে, 2022
androidx.window:window-*:1.1.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha02 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- Java এবং RxJava সমর্থন করার জন্য অ্যাডাপ্টার লাইব্রেরি ছেড়ে দিন।
সংস্করণ 1.1.0-alpha01
11 মে, 2022
androidx.window:window-*:1.1.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha01-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- জাভা এবং RxJava সমর্থন করার জন্য অ্যাডাপ্টার প্রকাশ করুন
সংস্করণ 1.1.0-alpha01
20 এপ্রিল, 2022
androidx.window:window:1.1.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha01-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- একটি বাগ সংশোধন করে যেখানে একটি অ্যাপের ব্যাকগ্রাউন্ডিং ভাঁজ বৈশিষ্ট্যগুলি নির্গত করা বন্ধ করে।
- পরীক্ষামূলক ActivityEmbedding API-এ প্রসারিত করুন।
এপিআই পরিবর্তন
- একটি কার্যকলাপ এমবেড করা হচ্ছে কিনা তা পরীক্ষা করার জন্য একটি সর্বজনীন API। ( I39eb7 )
বাগ ফিক্স
- অ্যাক্টিভিটি স্প্লিট ( I1a1e4 ) এ কন্টেইনারগুলির জন্য ফিনিশিং আচরণ কাস্টমাইজ করে এমন API যোগ করুন
- কার্যকলাপ বিভক্ত নিয়মের জন্য একটি নতুন কনফিগারেশন বিকল্প যোগ করা হয়েছে৷ ( Iec6af )
সংস্করণ 1.0
সংস্করণ 1.0.0
জানুয়ারী 26, 2022
androidx.window:window-*:1.0.0
প্রকাশিত হয়েছে। সংস্করণ 1.0.0 এই কমিট ধারণ করে.
1.0.0 এর প্রধান বৈশিষ্ট্য
-
WindowInfoTracker
এবংFoldingFeature
এর মাধ্যমে ফোন ভাঁজ করার জন্য সমর্থন। বর্তমান WindowMetrics গণনা করতে সাহায্য করার জন্যWindowMetricsCalculator
.
সংস্করণ 1.0.0-rc01
15 ডিসেম্বর, 2021
androidx.window:window-*:1.0.0-rc01
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-rc01 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
-
WindowInfoTracker
এর মাধ্যমে ফোন ভাঁজ করার জন্য সমর্থন যোগ করুন। - বর্তমান এবং সর্বাধিক
WindowMetrics
গণনা করার পদ্ধতি যোগ করুন। - সমর্থনকারী পরীক্ষা API যোগ করুন।
সংস্করণ 1.0.0-beta04
17 নভেম্বর, 2021
androidx.window:window-*:1.0.0-beta04
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta04-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- WindowInfoRepository এর নাম পরিবর্তন করে WindowInfoTracker করুন।
- WindowInfoTracker-এর জন্য কার্যকলাপকে একটি সুস্পষ্ট পদ্ধতি নির্ভরতা করুন।
- Roboelectric ব্যবহার করে ডেভেলপারদের সমর্থন করার জন্য WindowMetricsCalculator-এর জন্য একটি সাধারণ TestRule যোগ করুন।
এপিআই পরিবর্তন
- এক্সট্র্যাক্ট এক্সটেনশন ( I25a5f )
- ActivityStack ( I5a4e6 ) এ isEmpty যোগ করুন
- WindowInfoRepository এর নাম পরিবর্তন করে WindowInfoTracker করুন।
- জাভা/আরএক্সজাভা/পরীক্ষা নির্ভরতা মেলে আপডেট করুন। ( I0da63 )
- একটি সাধারণ WindowMetricsCalculator এর জন্য একটি পরীক্ষার নিয়ম যোগ করুন। ( Ibacdb )
সংস্করণ 1.0.0-beta03
27 অক্টোবর, 2021
androidx.window:window-*:1.0.0-beta03
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta03 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- পরীক্ষামূলক কার্যকলাপ এম্বেডিং API যোগ করুন। এই প্রাথমিক লেআউট সংস্করণটি পাশাপাশি দুটি ক্রিয়াকলাপ দেখানোর অনুমতি দেয়।
এপিআই পরিবর্তন
- বর্তমান WindowMetrics API সরানো হয়েছে যেহেতু আমরা এটি সঠিকভাবে প্রদান করতে পারি না। পরিবর্তে WindowMetricsCalculator ব্যবহার করুন ( Icda5f )
- এক্সটেনশন এপিআই আপডেট করা হয়েছে। ( Ica92b )
- একটি নতুন বৈশিষ্ট্যের জন্য একটি ইন্টারফেস যোগ করা হয়েছে যা ক্রিয়াকলাপগুলিকে এম্বেড করার অনুমতি দেয় এবং সেগুলিকে প্যারেন্ট টাস্ক উইন্ডোর মধ্যে পাশাপাশি দেখানোর অনুমতি দেয়৷ ( I5711d )
- WindowMetrics এবং WindowLayoutInfo-এর কনস্ট্রাক্টর লুকিয়ে রেখেছেন, অনুগ্রহ করে পরিবর্তে পরীক্ষা API ব্যবহার করুন। ( I5a1b5 )
- জাল WindowLayoutInfo অবজেক্ট তৈরি করতে একটি API যোগ করুন। ( I4a2fd )
বাগ ফিক্স
- স্থায়ী মেমরি লিক. ( I3fc79 , b/202989046 )
সংস্করণ 1.0.0-beta02
1 সেপ্টেম্বর, 2021
androidx.window:window-*:1.0.0-beta02
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta02-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- পরীক্ষামূলক এপিআই টীকা করতে একটি পরীক্ষামূলক টীকা যোগ করুন। ( I9f1b6 )
- একটি রেক্ট গ্রহণ করে এমন একটি পরীক্ষা Folding Feature তৈরি করতে একটি পরীক্ষা পদ্ধতি যোগ করুন। এটি একটি বাস্তব কার্যকলাপের বিপরীতে Roboelectric ব্যবহার করার সময় পরীক্ষা করা সহজ করে তুলবে। ( Id1cca )
সংস্করণ 1.0.0-beta01
18 আগস্ট, 2021
androidx.window:window-*:1.0.0-beta01
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta01-এ এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- পুরানো ধ্রুবকগুলি সরানো হয়েছে এবং একটি ইন্টারফেসে
FoldingFeature
তৈরি করেছে৷
এপিআই পরিবর্তন
- পুরানো ধ্রুবকগুলি সরান এবং FoldFeature কে একটি ইন্টারফেস করুন। ( I9a2d5 )
বাগ ফিক্স
-
Test Core
লাইব্রেরির উপর নির্ভরশীল লাইব্রেরিগুলি1.4.0
সংস্করণে আপগ্রেড করা হয়েছে এবং এখন Android প্ল্যাটফর্ম সংস্করণ S. ( I88b72 , b/189353863 ) এর সাথে কাজ করবে
সংস্করণ 1.0.0-আলফা10
4 আগস্ট, 2021
androidx.window:window-*:1.0.0-alpha10
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha10 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- WindowInfoRepo এর নাম পরিবর্তন করে WindowInfoRepository করুন এবং সংশ্লিষ্ট ক্লাস/ফাইলগুলি সামঞ্জস্য করুন।
- বর্তমান উইন্ডো মেট্রিক্সকে WindowInfoRepository-এ একটি ফ্লোতে রূপান্তর করুন যেহেতু সময়ের সাথে মান পরিবর্তন হয়।
- WindowInfoRepoJavaAdapter এর নাম পরিবর্তন করে WindowInfoRepoCallbackAdapter এ
- পরীক্ষার FoldingFeature বস্তু তৈরি করতে সহায়ক পদ্ধতি যোগ করুন
- তারা যে বৈশিষ্ট্যগুলি সমর্থন করছে তার উপর ভিত্তি করে গ্রুপ ক্লাসে প্যাকেজ আপডেট করুন।
এপিআই পরিবর্তন
- ActivityExt থেকে ActivityExtension এর নাম পরিবর্তন করুন Repo থেকে Repository এ পরিবর্তন করুন। ( I61a16 )
- ক্লাসের জন্য প্যাকেজ আপডেট করুন। ( I23ae2 )
- WindowInfoRepo ( I24663 ) থেকে WindowMetrics সরান
- WindowManager সরান এবং WindowInfoRepo ব্যবহার করুন
- WindowBackend অভ্যন্তরীণ করুন। ( I06d9a )
- উইন্ডো মেট্রিক্সকে ফ্লোতে রূপান্তর করুন।
- জাভা অ্যাডাপ্টারের নাম পরিবর্তন করে WindowInfoRepoCallbackAdapter এ
- কলব্যাকফ্লো সরান যাতে আর কোনো পরীক্ষামূলক API ব্যবহার না হয়। ( Ia4d15 )
- পরীক্ষার প্রদর্শন বৈশিষ্ট্য তৈরি করতে সহায়ক পদ্ধতি যোগ করুন।
- অক্লুশনমোড থেকে অক্লুশন টাইপে পরিবর্তন করুন ( If4cff )
বাগ ফিক্স
- প্রোগার্ড ত্রুটি ঠিক করুন যেখানে মূল লাইব্রেরি সরানো হচ্ছে।
- যেখানে WindowLayoutInfo অতিরিক্ত গ্রাহকদের কাছে বিতরণ করা হচ্ছে না সেখানে ত্রুটি ঠিক করুন।
- ত্রুটি ঠিক করুন যেখানে কনফিগার পরিবর্তনগুলি ভাঁজ বৈশিষ্ট্য আপডেটগুলিকে ট্রিগার করবে না।
সংস্করণ 1.0.0-alpha09
৩০ জুন, ২০২১
androidx.window:window-*:1.0.0-alpha09
প্রকাশিত হয়েছে। 1.0.0-alpha09 সংস্করণে এই কমিট রয়েছে।
নতুন বৈশিষ্ট
- পূর্ণসংখ্যা ধ্রুবক থেকে আনবাউন্ডেড enums এ পরিবর্তন করুন।
- পরীক্ষার ভাঁজ বৈশিষ্ট্য তৈরি করতে একটি পরীক্ষা util যোগ করুন।
এপিআই পরিবর্তন
- পরীক্ষার প্রদর্শন বৈশিষ্ট্য তৈরি করতে সহায়ক পদ্ধতি যোগ করুন। ( I3cf54 )
-
occlusionMode
থেকেocclusionType
টাইপে পরিবর্তন করুন।
-
বাগ ফিক্স
- ডেটা স্ট্রীমের একাধিক গ্রাহক যোগ করার সময় প্রাথমিক মান নির্গত করুন।
সংস্করণ 1.0.0-alpha08
16 জুন, 2021
androidx.window:window-*:1.0.0-alpha08
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha08 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- WindowInfoRepository ব্যবহার করার সময় পরীক্ষা করা সহজ করার জন্য একটি টেস্টিং আর্টিফ্যাক্ট প্রকাশ করা হয়েছে। Display Features এবং WindowMetrics সম্পর্কে তথ্য পেতে WindowInfoRepository ব্যবহার করুন। ( I57f66 , Ida620 )
সংস্করণ 1.0.0-alpha07
2 জুন, 2021
androidx.window:window-*:1.0.0-alpha07
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha07 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- কোটলিনে মূল উইন্ডো লাইব্রেরি স্থানান্তর করুন। কোরোটিনগুলি ব্যবহার করবে এবং অ্যাসিঙ্ক্রোনাস ডেটা সামনের দিকে উন্মুক্ত করতে ফাংশনগুলিকে স্থগিত করবে৷
- WindowMetrics এবং WindowLayoutInfo স্ট্রীম পাওয়ার জন্য প্রধান ইন্টারঅ্যাকশন পয়েন্ট হিসাবে WindowInfoRepo যোগ করুন।
- নতুন
window-java
আর্টিফ্যাক্ট জাভা-ফ্রেন্ডলি API গুলিকে রেজিস্টার করতে এবং কলব্যাকগুলি আনরেজিস্টার করতে। - নতুন
window-rxjava2
এবংwindow-rxjava3
আর্টিফ্যাক্ট RxJava অভিযোজিত APIs প্রকাশ করতে।
এপিআই পরিবর্তন
- একইভাবে নির্ভরতা প্রদান করতে
WindowServices
যোগ করুন।- উইন্ডো লেআউট তথ্য ব্যবহার করতে coroutine ভিত্তিক এপিআই যোগ করুন। ( Iab70f )
- কোটলিনে কোর উইন্ডো ম্যানেজার লাইব্রেরি স্থানান্তর করুন। ( Icca34 )
বাগ ফিক্স
- বৈশিষ্ট্য সীমা প্রতিনিধিত্ব করার জন্য নতুন ডেটা ক্লাস যোগ করুন। ( I6dcd1 )
সংস্করণ 1.0.0-alpha06
5 মে, 2021
androidx.window:window:1.0.0-alpha06
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha06 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- আমরা কোটলিনে আমাদের মাইগ্রেশন শুরু করেছি এবং পরবর্তী রিলিজে শেষ করব।
- DeviceState পাবলিক API থেকে সরানো হয়েছে, এর পরিবর্তে FoldingFeature ব্যবহার করুন।
- আমরা
STATE_FLIPPED
FoldingFeature রাজ্য থেকে সরিয়ে দিয়েছি কারণ এটি এই মুহূর্তে কোনো ব্যবহার-কেস দ্বারা সমর্থিত নয়৷ - আমরা অন্যান্য অপসারিত APIগুলিও সরিয়ে দিয়েছি।
এপিআই পরিবর্তন
- একটি নির্ভরতা হিসাবে Kotlin যোগ করা হচ্ছে.
- কোটলিনে মূল লাইব্রেরি স্থানান্তর করুন। ( Idd995 )
-
DisplayFeature
নির্মাতা সরানো হয়েছে। ( I61fa4 ) - পাবলিক api থেকে
DeviceState
সরানো হয়েছে, পরিবর্তেFoldingFeature
ব্যবহার করুন। ( Id6079 ) - এক্সটেনশন থেকে ডিভাইস অবস্থা কলব্যাক সরান. ( I5ea83 )
- FoldingFeature থেকে
STATE_FLIPPED
সরান। ( I9c4e1 ) - অপ্রচলিত রেজিস্ট্রেশন পদ্ধতি সরান। ( Ib381b )
সংস্করণ 1.0.0-alpha05
24 মার্চ, 2021
androidx.window:window:1.0.0-alpha05
প্রকাশিত হয়েছে। 1.0.0-alpha05 সংস্করণে এই কমিট রয়েছে।
নতুন বৈশিষ্ট
আমরা FoldingFeature-এ সুবিধার পদ্ধতি যোগ করেছি যাতে অ্যাপগুলি বলতে পারে যে বৈশিষ্ট্যটি আলাদা হচ্ছে, আটকানো হচ্ছে কিনা এবং কব্জাটির অভিযোজন নির্ধারণ করতে পারে। আমরাও কবজা টাইপ লুকিয়ে রাখছি যাতে
আমরা WindowManager থেকে সিঙ্ক্রোনাস পঠিত পদ্ধতিগুলি সরিয়ে দিচ্ছি। সিঙ্ক্রোনাস পঠন পদ্ধতিগুলি ত্রুটি প্রবণ কারণ একটি অন্তর্নিহিত জাতি শর্ত রয়েছে৷ WindowLayoutInfo-এ আপডেট পেতে শ্রোতা এবং কলব্যাক নিবন্ধন করুন।
এপিআই পরিবর্তন
- Folding Features ( Ie733f ) এর সাথে কাজ করার জন্য সুবিধার পদ্ধতি যোগ করুন
- WindowManager ( I96fd4 ) থেকে সিঙ্ক্রোনাস রিড পদ্ধতিগুলি সরিয়ে দেয়
সংস্করণ 1.0.0-alpha04
10 মার্চ, 2021
androidx.window:window:1.0.0-alpha04
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha04 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- একটি বাগ সংশোধন করে যেখানে কোনো WindowLayoutInfo নির্গত হয় না যদি একটি OEM বাস্তবায়ন না থাকে। এখন আমরা একটি খালি WindowLayoutInfo নির্গত করি।
- অ্যাপ্লিকেশানটির ব্যাকগ্রাউন্ড করার সময় কব্জা অবস্থা পরিবর্তিত হলে রাজ্য সঠিকভাবে আপডেট হবে না এমন একটি বাগ ঠিক করুন৷ এখন রাষ্ট্রকে ধারাবাহিক হতে হবে।
- রানটাইম নির্ভরতা থেকে সতর্কতা উপেক্ষা করতে আমাদের প্রোগার্ড ফাইল আপডেট করুন।
বাগ ফিক্স
- OEM লাইব্রেরি অনুপস্থিত হলে একটি খালি মান নির্গত করুন। ( Ide935 )
সংস্করণ 1.0.0-alpha03
18 ফেব্রুয়ারি, 2021
androidx.window:window:1.0.0-alpha03
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha03 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
- যখন OEM বাস্তবায়ন খালি থাকে তখন WindowLayoutInfo-এর জন্য একটি খালি মান নির্গত করুন। এটি আরও ডিভাইসে লাইব্রেরি ব্যবহার করা সহজ করে তুলবে৷ যেহেতু APIগুলি অ্যাসিঙ্ক্রোনাস তাই এখনও সুপারিশ করা হয় যে অ্যাপগুলি কিছু প্রতিরক্ষামূলক কোড লিখবে এবং একটি সময় শেষ হওয়ার পরে একটি ডিফল্ট মান নির্গত করবে। আমাদের কাছে OEM বাস্তবায়নের কোনো গ্যারান্টি নেই এবং প্রাথমিক মান বিলম্বিত হতে পারে।
বাগ ফিক্স
- OEM লাইব্রেরি অনুপস্থিত হলে একটি খালি মান নির্গত করুন। ( Ide935 )
সংস্করণ 1.0.0-alpha02
জানুয়ারী 27, 2021
androidx.window:window:1.0.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha02 এই কমিট ধারণ করে।
নতুন বৈশিষ্ট
এপিআইকে স্ট্রীমলাইন করতে এবং ভুলগুলি কমাতে সাহায্য করার জন্য আমরা কিছু এপিআই অবমূল্যায়ন করেছি। কিছু উল্লেখযোগ্য উদাহরণ হল WindowManager থেকে সিঙ্ক্রোনাস রিড অপারেশন অপসারণ এবং DeviceState অবমূল্যায়ন করা। সিঙ্ক্রোনাস রিড অপারেশন রেসের অবস্থার দিকে পরিচালিত করতে পারে এবং ভুল UI থাকতে পারে।
আমরা ডিসপ্লেফিচারকে একটি ইন্টারফেসে রূপান্তর করেছি যা অন্যান্য বৈশিষ্ট্যগুলি সামনের দিকে প্রয়োগ করবে। আমাদের প্রথম বৈশিষ্ট্য হল FoldingFeature যা এখন একটি পর্দার ভাঁজ বা একটি কব্জাকে উপস্থাপন করে। এতে DeviceState প্রতিস্থাপনকারী কব্জের অবস্থাও রয়েছে।
Android 11-এ WindowMetrics চালু করা হয়েছিল যাতে ডেভেলপারদের একটি উইন্ডো সম্পর্কে মেট্রিক্সের জন্য অনুসন্ধান করার একটি সহজ উপায় প্রদান করা হয়, যেমন স্ক্রিনে এর অবস্থান এবং আকার এবং যেকোনো সিস্টেম ইনসেট। আমরা এই রিলিজে API ব্যাকপোর্ট করেছি যাতে ডেভেলপাররা WindowMetrics ব্যবহার করতে পারে এবং পুরানো Android সংস্করণগুলিকে সমর্থন করতে পারে৷
WindowManager#getCurrentWindowMetrics()
এবং WindowManager#getMaximumWindowMetrics() API-এর মাধ্যমে WindowMetrics পাওয়া যেতে পারে।
এপিআই পরিবর্তন
- পরবর্তী আলফা ( Ib7cc4 ) এ সরানো হবে এমন APIগুলিকে অবমূল্যায়ন করুন
- স্পষ্ট কার্যকলাপ উল্লেখ গ্রহণ করার জন্য
ExtensionInterface
আপডেট করে। ( I07ded ) - WindowMetrics API প্রবর্তন করে। ( I3ccee )
- WindowManager ( I69983 ) থেকে সিঙ্ক্রোনাস রিড পদ্ধতিগুলি সরান
- এক্সটেনশন উইন্ডোব্যাকএন্ড প্যাকেজ সুরক্ষিত করুন। ( Ied208 )
বাগ ফিক্স
- ভিজ্যুয়াল প্রসঙ্গগুলি গ্রহণ করতে
ExtensionInterface
API আপডেট করুন। ( I8e827 )
বাহ্যিক অবদান
- DeviceState এবং WindowLayoutInfo একত্রিত করুন যাতে ডেটা অ্যাক্সেস করা সহজ হয়। ( আইডি৩৪এফ৪ )
সংস্করণ 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
: এই নতুন API সংজ্ঞায়িত অঙ্গবিন্যাসগুলির একটি তালিকা থেকে ফোনের বর্তমান ভঙ্গি প্রদান করে (উদাহরণস্বরূপ,CLOSED
,OPENED
,HALF_OPENED
, ইত্যাদি)