مقالات تخصصي طراحي اپ موبايل مرجع رسمي مقالات طراحي اپليكيشن
|
چرخه حيات (LifeCycle) 2- داده زنده (LiveData) 3- سبك نما (ViewModel) 4- محيط (Room) نكته: تعدادي كامپوننت ديگر هم ميباشند كه جديدا منتشر گرديده اند طراحي اپليكيشن اما ما درباره آن ها كلام نميكنيم زيرا در مرحله اول بسط ميباشند. چرخه حيات (Lifecycle) رئيس چرخه حيات يكياز بزگترين بحران هاي ايجاد كرد يك نرم افزار اندرويدي ميباشد. راياپارس در شرايطي كه از فرگمنت ها به كار گيري نمائيد چرخه حيات حتي ميتواند بغرنج خيس خواهد شد ، چرا كه چرخه حيات آنها در ورژن هاي گوناگون اندرويد گوناگون ميباشد ( ولي اين خلل الان به وسيله كتابخانه AppCompat حل گرديدهاست). بريم ببنيم كه كامپوننت چرخه حيات چهگونه به ما ياري ميكند تا از بند اين بحران عبور كنيم. Lyfecycle، كلاس ها و اينترفيس هايي را اماده نموده است كه اذن تشكيل داد كامپوننت هاي آگاه از چرخه حيات (lifecycle-aware) را مي دهند كه به طور خود كار خلق و خوي خودشان را با چرخه حيات فعلي يك اكتيويتي يا اين كه فرگمنت سازگار ميكنند. اين قابليت و امكان اذن ميدهد كه چرخه حيات براي ساير ابجكت ها قابل مشاهده باشد. اين كامپوننت براي افزودن چرخه هاي حيات غير باخبر(lifecycle-awareness) به كارگيري مي گردد. اين گزينه براي اشخاصي كه كتابخانه ميسازند اثر گذار خواهد بود به دليل آن كه ميتوانند منابع را باتوجه به چرخه حيات ازاد نمايند. بريم ببينيم چه طور كامپوننت Lyfecycle به ما ياري ميكند. اينجا يك نمونه از اينكه چهگونه يك كد كانال بنويسيم بيان شده ميباشد: override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Network call api.get().onResponse { data -> textView.text = data } }
اين نمونه يك كد بي آلايش كانال ميباشد كه يك درخواست GET به اينترنت ارسال ميكند و جواب ان را در يك TextView تهيه و تنظيم ميكند. بي آلايش به لحاظ ميرسد، البته اينطور وجود ندارد، چون زماني كه شما دستگاه اندرويدي خويش را بچرخانيد يااينكه از نرمافزار بيرون گرديد، درخواستي كه به اينترنت رسول بوديد همچنان در بك گراند در حالا اجراست و هنگامي كه جواب خويش را اخذ ميكند اپليكيشن كرش ميكند زيرا ديگرTextViewوجود ندارد چون اكتويتي از در ميان رفته ميباشد.
امتیاز:
بازدید:
|
|
[قالب وبلاگ : سایت آریا] [Weblog Themes By : sitearia.ir] |