გაიცანით სუბსტრატი, თემატიკის მომავალი, რომელიც აიღებს ფენებს

შეამოწმეთ Android-ის თემატიკის უახლესი ვერსია და რატომ მოაწყობს სუბსტრატი სავარაუდოდ თქვენს მოწყობილობას უახლოეს მომავალში!

ფენები უნახავს თანდათანობით აწევა ხელისუფლებაში, გახდა შესაძლებელი და ძლიერი ჩანაცვლება CyanogenMod Theme Engine-ისთვის. ფენები გროვდება მასზე RRO ჩარჩო შემუშავებული Sony-ს მიერ რადგან ის საშუალებას იძლევა უფრო რთული რესურსების გადართვა და უფრო მეტი ელემენტის თემატიკის შესაძლებლობა, ვიდრე RRO თავდაპირველად აკეთებდა.

RRO-ზე საკუთარი მუშაობის გასაგრძელებლად, Sony მუშაობდა OMS-ზე (რაც ნიშნავს Overlay Manager Service-ს). როგორც სახელი გულისხმობს, OMS არის კლიენტი გადაფარვების მართვისთვის, რომელიც პროვაიდერებს საშუალებას აძლევს დინამიურად გააკონტროლონ პრიორიტეტები და ჩართონ/გამორთონ გადაფარვები. ეს იწვევს რამდენიმე კონფლიქტს ფენებთან, რადგან ტრადიციულად ეს ფუნქციები თემის კონტროლის ქვეშ იყო.

OMS-ის მიერ წამოჭრილი საკითხების ირგვლივ სამუშაოდ და ფენების ფუნქციონირების გასაუმჯობესებლად Layers Managers-ის უკან დეველოპერები გაერთიანდნენ სუბსტრატის შესაქმნელად, რომელიც არის კლიენტი OMS-ით ფუნქციონირება. სიტყვებში დან სიკო პომპოსიLayers Manger-ის შემქმნელი:

Substratum-ის დანერგვით, გადაფარვები გადმოწერილი, შედგენილი, ხელმოწერილი და ინსტალირებული ხდება ისევე, როგორც მესამე მხარის აპლიკაციები, რომლებიც დაინსტალირებულია მონაცემთა/აპში. ინსტალაციის შემდეგ, ისინი ქმნიან idmap ფაილს, რომელიც ქმნის კავშირს და თუ ჩართულია, ეუბნება სისტემას განაახლოს თავისი რესურსები და ჩატვირთოს ახალი. შეტყობინება აცნობებს მომხმარებელს, რომ შესაძლებელია ახალი თემის გამოყენება და პაკეტის დაყენება („Beltz დაინსტალირებულია“)

სუბსტრატი ცდილობს ფენების ფუნქციონალურობის შერწყმას CM Theme Engine-ის ზოგიერთ საუკეთესო ნაწილთან, რომელიც მოიცავს სრულ კომპილ-მოწყობილობაზე სისტემას. გადაფარვები აღარ იქნება ერთმანეთზე გადახურული ცალკეული ელემენტების თემებზე. ამის ნაცვლად, ელემენტები შეჰყავთ ერთად, რათა შეიქმნას ერთიანი გადაფარვა. კომპილაცია მოწყობილობაზე ასევე საშუალებას აძლევს თემის დიზაინერს შეინარჩუნოს უკან თავსებადობა (რადგან საბაზისო API დაყენებულია API 23 ვერსიაზე) და საშუალებას აძლევს Marshmallow-ისთვის შექმნილ თემებს გააგრძელონ მუშაობა Android N-ისთვის. გარდა ამისა, თქვენ შეგიძლიათ თემის გადატვირთვა მოგზაურობის დროს, ცვლილებებს შორის გადატვირთვის გარეშე, და შეგიძლიათ გამოიყენოთ სხვა აპლიკაციებიც კი თემის შედგენის დროს.

გარდა ამისა, სუბსტრატი ასევე იმუშავებს როგორც დიზაინერის, ასევე მომხმარებლის სასარგებლოდ. ის აფრთხილებს მომხმარებლებს, როდესაც თემები მოძველებულია (ანუ აგებულია ძველი სუბსტრატის კონსტრუქციებისთვის) და მაინც აძლევს მათ უფლებას გააგრძელონ, თუ ეს ნამდვილად სურთ, სანამ ისინი აღიარებენ არასტაბილურობის საკითხებს, რომლებიც შეიძლება წარმოიშვას. ეს ასევე იმუშავებს როგორც წახალისება ROM-ის დეველოპერებისთვის, რათა გაგზავნონ ახალი Substratum კონსტრუქციები, მაგრამ მაინც აძლევს მომხმარებლებს ძალას, თუ ეს ასე არ არის. ასევე მუშაობს პროფილირების სისტემა, რომელიც თეორიულად საშუალებას მოგცემთ შეინახოთ მთელი კონფიგურაციები და სწრაფად შეცვალოთ ისინი, რაც წინასწარ დაყენებულ ავტომატიზაციას გახდის შესაძლებლობას მომავალში.

გავრცელებული ინფორმაციით, სუბსტრატის თემები უფრო მეტად წააგავს CM Theme Engine-ისთვის აგებულ თემებს, რამაც უნდა შეამსუბუქოს დიზაინერისთვის ორივე სისტემაზე თანაარსებობის ტკივილები. კიდევ რამდენიმე სასიხარულო სიახლეში თემების დიზაინერებისთვის, მეკობრეობის საწინააღმდეგო ფუნქციები შეიძლება განხორციელდეს Substratum-ში, რაც მას გახდის რთულია ერთ მოწყობილობაზე შექმნილი გადაფარვების ხელახლა გამოყენება მეორეზე და ამოიღებს გადაფარვებს, თუ აღმოაჩენს, რომ შემთხვევა ასეა ასეთი.


Layers Manager-ს აქამდე კარგი პერსპექტივა ჰქონდა, მაგრამ მალე გაუქმდება Substratum-ისა და კომპილ-მოწყობილობის სისტემის სასარგებლოდ, როგორც აქტიური განვითარების ფოკუსი. თუმცა სუბსტრატს არ ექნება მხარდაჭერა წინასწარ დამზადებული გადაფარვისთვის, მაგრამ დეველოპერები ირწმუნებიან, რომ ეს ძალიან მარტივია გადაიყვანეთ კომპილზე მოწყობილ თემებზე თემების დიზაინერებისთვის, რადგან მხოლოდ მანიფესტის შესწორებაა საჭირო იგივე.

გაემართეთ Google+ განცხადების პოსტი რომ გაიგოთ მეტი სუბსტრატის შესახებ.