پروژه تربل چیست و اکنون چه دستگاهای از تربل پشتیبانی می کنند

استاندارد

با سلام

درحالی که اپل حتی دستگاهای قدیمی خود را از نظر نرم افزاری بروز می کند

سازندگان گوشیهای اندروید در بروزرسانی گوشیهای خود خوب عمل نمی کنند

شرکتهای مانند گوگل و اسنشنال در آپدیت امنیتب نیز خوب عمل می کنند

این بدون در نظر گرفتن آپدیت نسخه اندروید هست که تقریبا تمام سازندگان به جز گوگل در آن کند عمل می کنند

گوگل برای این مشکل پروژه تربل را معرفی کرد

در تربل حافظه سیستم عامل(فریمورک) از سخت افزار جدا می شود

سخت افزار می شود Hardware Abstraction Layers مخفف HALs

این کار به شرکتهای سازنده اجازه می دهد که بر روی سیستم عامل کار کنند بدون اینکه منتظر آپدیت شرکتی مانند کوالکام شوند

قبلا در یک پارتیشن بودند و شرکت سازنده ابتدا باید منتظر می بود تا HALs توسط شرکت سازنده سخت افزار آپدیت شود

با این کار می توان انتظار آپدیت سریعتر را داشت

برای جامعه دوست داران اندروید یک امتیاز دیگر در تربل وجود دارد

و آن این است که می توان رامهای AOSP را بدون هک زیاد در گوشی اجرا کرد

برای رامهای LOS و RR خبر بسیار خوبی می باشد

و یک انقلاب در ساخت کاستوم رام می باشد

ولی باز هم برخی قابلیتهای گوشی مانند اسکنر عنبیه سامسونگ در رامهای AOSP کار نمی کنند

تا به اینجا حتما علاقمند شدید که بدونید گوشی شما از تربل پشتیبانی می کند یا خیر

برای فهمین این موضوع کافیه که دیباگ را فعال و با دستور adb زیر شروع کنید

adb shell

و بعد از آن

getprop ro.treble.enabled

اگر با پیغام true مواجه شدید به معنی پشتیبانی کردن گوشی شما از تربل می باشد

و اگر با false یعنی گوشی شما از تربل پشتیبانی نمی کند

گوگل قصد دارد که تمام دستگاهای که با اندروید 8 به بالا روانه می شوند از تربل پشتیبانی کنند

ما در زیر لیستی از گوشیهای که اکنون از تربل پشتیبانی می کنند را برایتان قرار می دهیم

اما در آینده این لیست بسیار وسیعتر می شود با عرضه گوشیهای با اندروید اوریو

گوشیهای که بصورت رسمی از تربل پشتیبانی می کنند

Google

  • Google Pixel
  • Google Pixel XL

Honor/Huawei

  • Huawei Mate 9
  • Huawei Mate 9 Pro
  • Huawei Mate 10 Lite
  • Huawei Nova 2
  • Honor 7X
  • Honor 8 Pro
  • Honor 9
  • Honor 9i
  • Huawei P10
  • Huawei P10 Lite
  • Huawei P10 Plus

برندهای مختلف

  • ASUS Zenfone 4  – بدون پارتیشن vendor , پس نمی توان ایمیج GSI را فلش کرد
  • Essential Phone
  • Razer Phone
  • Sharp Aquos S2
  • Xiaomi Redmi Note 5 Pro

گوشیهای که بصورت غیر رسمی از تربل پشتیبانی میکنند

  • Lenovo ZUK Z2 Plus
  • Lenovo ZUK Z2 Pro
  • Xiaomi Redmi Note 4
  • Xiaomi Mi 5
  • Xiaomi Mi 5s
  • Xiaomi Mi 5s Plus
  • Xiaomi Mi 6
  • Xiaomi Redmi 3s/3X
  • Xiaomi Redmi Note 5/Redmi 5 Plus

شرکتها روز به روز با آپدیت به اندروید 8 پشتیبانی از تربل را اضافه می کنند

اما برای پشتیبانی بهتر باید حافظه به دو قسمت تقسیم شود

قسمت A و B

تاکنون فقط دستگاهای زیر از دو حافظه A و B پشتیبانی می کنند

  • Essential Phone
  • HTC U11 Life Android One
  • Google Pixel
  • Google Pixel XL
  • Google Pixel 2
  • Google Pixel 2 XL
  • Motorola Moto X4
  • Motorola Moto Z2 Force
  • Nokia 6
  • Nokia 7
  • Nokia 7 Plus
  • Nokia 8
  • Nokia 8 Sirocco
  • Razer Phone
  • Sharp Aquos S2
  • Sony Xperia XZ2
  • Sony Xperia XZ2 Compact
  • Sony Xperia XA2
  • Sony Xperia XA2 Ultra
  • Xiaomi Mi A1

 

این لیستها روز به روز در حال بزرگتر شدن می باشد

باید منتظر ماند و آینده پروژه تربل را دید

بررسی OmniROM اندروید 8.1 با عکس و ویدیو

استاندارد

رامهای کاستومی زیادی هستند که با ورژنهای اندروید همچنان عرضه می شوند

یکی از آنها OmniROM می باشد

که از اندروید 4 به خاطر امنی سویچ معروف بود

امروز می خوام نسخه اندروید 8.1 این رام را کمی بررسی کنیم

قابلیتهای بسیاری به نسخه 8.1 این رام اضافه شده و جذابیت آن را دو چندان کرده است

این علاوه بر تمام قابلیتهای اندروید 8.1 ویژیگهای زیادی دارد که سعی میکنیم در زیر براتون معرفی کنیم

اگر می خواهید ببینید که  OmniROM برای دستگاه اندرویدی شما توسعه داده شده به لینک زیر مراجعه کنید

http://dl.omnirom.org

https://www.omnirom.org/devices

ما در اینجا نسخه اجرا شده OmniROM بر روی گوشی OnePlus 5T را بررسی می کنیم

منوی OmniGears که در تنظیمات گزینش موجود هست تمام ویژگیهای رام را اینجا می بینید

در اینجا نیز می توانید انواع رنگها را برای چراف اعلان انتخاب نمایید

تنظیمات چرخش صفحه و قفل صفحه همچنین تنظیم چرخش 180 یا 720 درجه

گزینه بیشتر در OmniGears نیز قابلیت به دو قسمت کردن تنظیمات را دارد

تنظیمات اعلان و قفل صفحه می توانید عکس قفل صفحه را کلا غیرفعال کنید

در قسمت دکمه ها نیز تنظیمات نگه داشتن دکمه یا سویچ از دکمه ها سخت افزاری به نرم افزاری را می بینید

 

 

این هم OmniSwitch قابلیت پرطرفدار که می توانید آیکونهای دلخواهم اضافه کنید

نمایی از OmniSwitch با پک آیکون StealthyChief’s Viper

در اینجا نیز می توانید حرکات هنگام خاموش بودن صفحه و کالیبره رنگ را تنظیم کنید

نمایی از صفحه اصلی با یکی از چهار عکس استوک OmniROM

تنظیمات استایل و قرار دادن هدر در بالای اعلانها

اینجا هم منوی اعلانها همراه با یک هدر سفارشی شده را می بینید

نمای از تنظیمات که به دو بخش تقسیم شده است

رام OmniROM همچنین از OMS پشتیبانی می کند

که با وجود اندروید 8 قرار دادن تم با  Substratum بسیار راحت شده است

برای نمونه در زیر عکسهای از تم Valerie می توانید ببینید(یکی از تمهای مورد علاقه بنده در رامهای 7.1.2)

تمهای فراوانی برای اندروید 8 بهینه شده اند که می توانید استفاده کنید

ویدیویی از کار با OmniROM را نیز در زیر می توانید مشاهده کنید

معرفی کامل مولتی رام(MultiROM)

استاندارد

با سلام

یکی از پروژهای بسیار جذاب اندروید مولتی رام می باشد

مولتی رام این قابلیت را به دستگاه شما می دهد که چندین رام اندروید را بر روی گوشی خود نصب و اجرا کنید

حتی سیستمهای مبتنی بر لینوکس را نیز بر روی مولتی رام می توانید اجرا کنید

کار اصلی مولتی رام هنگام بوت دستگاه می باشد

در هنگام بوت می توانید رام مورد نظر خود را انتخاب نمایید

همراه ما با باشید با اطلاعات کامل درباره MultiROM و نحوه پورت و استفاده

تاریخچه

MultiROM در سال 2012 برای اولین بار توسط Tasssadar توسعه داده شد

این توسعه دهنده بار اول برای دو دستگاه LG Optimus One/P500/Vو the Google Nexus 7 (2012) مولتی رام را توسعه داد

بار اول Tasssadar از سختی پروژه برای پورت و توسعه برای دستگاهای دیگر خبر داد

اما یک توسعه دهنده به نام Oblikas چند نسخه از مولتی رام را پورت کرد

مولتی رام برای دستگاهای Nexus 4, HTC One, و SGS4 پورت شد

بعد از آن مولتی رام راه خود را به دستگاهای دیگری پیدا کرد

و قابلیتهای زیادی به مولتی رام اضافه شد

امیدواریم در آینده مولتی رام بصورت مستقل بعنوان یک ریکاوری کاستوم عرضه بشود

قابلیتهای کلیدی مولتی رام

  • بوت کردن هر چند رام اندروید که بخواهید
  • بازگشت بکاپ کاستوم ریکاوری بعنوان رام دوم
  • بوت دوگانه سیستم عاملهای بر پایه لینوکس(Ubuntu Touch, Firefox OS, Arch Linux) بدون فرمت دستگاه
  • نصب و اجرایی رام از OTG به راحتی

اجزای تشکیل دهنده مولتی رام

مولتی رام دارایی سه جز اصلی می باشد

این سه جز در کنار هم باید کار کنند تا مولتی رام اجرا شود

1- یک ریکاوری کاستوم TWRP همراه با افزونه مولتی رام:

به ریکاوری TWRP نیاز هست تا  دستکاری شود تا بتوان رام اول بدون اینکه دست زده شود رام دیگری نصب شود

2- کرنل کاستوم لینوکس با پشتیبانی از kexec-hardboot:

باید یک کرنل کاستوم با kexec-hardboot نصب باشد تا به مولتی رام اجازه نوشتن یک کرنل دیگر در حافظه را بدهد

برای اطلاعات بیشتر درباره kexec-hardboot می توانید به این لینک مراجعه نمایید

3- بوتلودر مولتی رام:

بعد از لود شدن کرنل لینوکس این بوتلودر بالا می آید و شما قادر به انتخاب رام و حتی برگشت به ریکاوری کاستوم می باشید

توضیح منوی مولتی رام

منوی مولتی رام به شکل زیر می باشد

 

گزینه Add ROM برای اضافه کردن رام می باشد

گزینه List ROMs لیست رامهای نصب شده و مدیریت آنها

گزینه Inject boot.img اگر یک کرنل دانلود کردید که تمام boot.img را شامل می شود باید از این گزینه استفاده کنید وگرنه مولتی رام غیرفعال می شود

گزینه Inject boot sector اگر هنگام بوت مولتی رام ظاهر نشد از این گزینه استفاده کنید

Settings هم که تنظیمات مولتی رام می باشد

و در آخر Swap ROMs نیز برای جابه جا کردن رامها از رام اصلی و فرعی می باشد

در مورد مدیریت رام نیز چند گزینه وجود دارند که به شرح زیر می شوند

Rename, delete برای تغییر نام رام و پاک رام مورد استفاده قرار می گیرد

Flash ZIP برای فلش فایلهای زیپ رامهای اندروید مانند برنامه های گوگل

Add/replace boot.img نیز برای تغییر کرنل رام می باشد

آموزش نصب مولتی رام

نصب مولتی رام یک توضیح کلی ندارد و ممکن است با توضیحات بنده متفاوت باشد نصب برای دستگاه شما

در مرحله اول باید بوتلودر دستگاه شما باز باشد

یک ریکاوریTWRP دستکاری شده برای مولتی رام نیز نصب کنید

فایل زیپ مولتی را برای نصب از ریکاوری کاستوم

برای نصب رام اول بعد از نصب فایلهای بالا

فایل رام را بصورت معمول نصب می کنید

به منوی مولتی رام میروید گزینه Inject curr. boot sector را میزنید

(چک شود در مدلهای جدید مولتی رام این گزینه بصورت اتوماتیک زده می شود)

برای نصب رام دوم نیز می توانید هر تعداد که حافظه داشته باشید رام نصب کنید

از گزینه Add ROM به راحتی می توانید رام دوم خود را نصب کنید

بعد از آن به راحتی هنگام بوت می توانید رام مورد نظر خود را انتخاب کنید

برای نصب رام نیز بر روی حافظه خارجی نیز می توانید موقع نصب رم یا فلش با هر فرمتی را بزارید و نصب کنید

برای حذف کردن مولتی رام نیز باید فایل زیپ uninstaller آن را نصب کنید

یا یک ریکاوریTWRP را از اول نصب کنید

برای اینکه تایپیک شلوغ نشود در تایپیکی جدا طریقه پورت مولتی را قرار می دهم

موفق باشید

فرق میان نام رامهای اندروید چیست؟(رسمی،کاستوم،کوک،OMS)

استاندارد

با سلام

با یک مقاله در خصوص نامهای متفاوت رامهای اندروید در خدمتتان هستم

شاید پیش اومده براتون که خواستید یک رام را دانلود کنید و در اسم رام به کی نام عجیب برخورد کردید

در این مقاله سعی میکنم طبق اطلاعاتی که بنده دارم نام رامها را به تفکیک توضیح بدهم

اگر چیزی از قلم افتاد یا در جایی دیده اید خطا دارم خوشحال می شوم در نظرات اعلام کنید

رامهای رسمی Official

رامهای رسمی

این رامها در همه گوشیها و تبلتهای اندرویدی موقع خرید وجود دارند

رام رسمی توسط خود شرکت سازنده دستگاه توسعه می یابد

معمولا این رامها قبل از عرضه مورد تست قرار می گیرند و دارایی باگهای کمتری هستند

کل رامهای اندروید به دو دسته رامهای رسمی و کاستوم دسته بندی می شوند

رامهای رسمی دارایی فرمتهای مختلفی هستند

سامسونگ با فرمت tar سونی ftf الجی kdz یا tot هواوی app یا بصورت زیپ

برخی برندهای متفرقه دیگر نیز طبق پردازنده دارایی فرمتهای img یا pac می باشند

رام رسمی را می توان با ثباترین رام برای دستگاه اندرویدی خود دانست

البته رامهای کاستوم ساخته شده بر پایه رامهای رسمی همان پایداری رامهای رسمی را دارا می باشند

رامهای کاستوم

کاستوم رامها چیزی هستند که سیستم عامل اندروید را از رقیب اصلی خود ios متمایز کرده اند

در کل فرق رامها بین رسمی و کاستوم می باشد

هر رامی غیر از رام خود شرکت سازنده گوشی می شود کاستوم رام

برخی کاستوم رامها توسط یک تیم قوی توسعه داده می شوند و از پایه قوی هستند مانند رامهای LOS

برخی هم توسط یک فرد ساخته می شوند و نیاز به زمان برای رفع اشکالات دارند

حتی خود شما نیز می توانید برای دستگاه خود یک رام درست کنید

معمولا کدهای خام اندروید به نام AOSP (android open source project) هستند و تمام رامهای اندروید بر پایه همین کدها هستند

اکنون بریم سراغ رامهای مختلف کاستوم

رامهای LOS

یکی از معروفترین رامهای اندروید lineage os می باشد که به مخفف LOS خوانده می شود

این رام همان رام معروف سیانوژن می باشد که با تغییر و تحولات چند سال اخیر در میان توسعه دهندگان آن اکنون با تغییر نام برگشته است

خود LOS یک رام مستقل می باشد و از خود کدهای AOSP ساخته شده ولی تغییرات نسبتا زیادی داده و کرنل خود را دارا می باشد

این رام طیف وسیعی از گوشیها را شامل می شود

سایت رسمی رام LOS تمام دستگاهای که پشتیبانی می کنند را لیست کرده است

خوب این از خود رام LOS ولی رامهای دیگری هستند که بر پایه کدهای LOS ساخته شده اند

پس هر وقت در اول یا آخر رامی دیدید نوشته LOS بر پایه کدهای همین رام هستند

پس هر باگی که در رام LOS وجود دارد در همان رام کاستوم نیز وجود دارد

رامهای کد CAF

کدهای منبع باز CAF یک پروژه هست مانند سیانوژن که از آن می توانید برای ساخت رام استفاده کنید

این کلمه مخفف Code Aurora Project می باشد

رامهای بر پایه این کدها کاملا قابل اعتماد هستند و تقریبا دارایی باگی نمی باشند

برای کسب اطلاعات بیشتر می توانید به سایت رسمی این پروژه بروید

رامهای با نام Unified-build

به لطف عطش شرکتها در ارائه گوشیها با سخت افزار روز شاهد بوجود آمدن این رامها هستیم

به عنوان مثال شرکت پرچمدار خود را با پردازنده اسنپدراگون 820 عرضه می کند و در چند ماه بعد همان پرچمدار را با پردازنده 821 و یک S یا پلاس دوباره عرضه می کند

پس اگر رامی دیدید که آخرش نام Unified-build وجود داشت یعنی برای دو مدل دستگاه مشابه توسعه داده شده و بر روی دو دستگاه قابلیت اجرا دارد

پس زیاد از این نام در آخر نام رام نترسید

رامهای کوک شده

این نام در گذشته برای رامهای کاستوم استفاده می شد

ولی همچنان در ایران توسط توسعه دهندگان بخاطر متمایز بودن از رام کاستوم مورد استفاده قرار می گیرد

شاید دلیلش نوع تفکر نسبت به رام کاستوم باشد که توسعه دهندگان ایرانی از این نام استفاده می کنند

پس رام کوک شده نام جدید یا بیلد و پروژه خاصی نیست و همان رام کاستوم می باشد

شما حتی اگر فقط زبانی به رام رسمی اضافه کردید یک رام چندزبانه بر پایه رام رسمی درست کرده اید و آن رام می شود رام کاستوم

این نام رام اکنون در دنیایی اندروید جایی ندارد و فقط در ایران یا شاید هم جاهای دیگر برای فروش رامهای چند زبانه مورد استفاده قرار می گیرد

رام با نام EAS و VOX

رامهای به همراه نام EAS و VOX بر مصرف انرژی تاکیید دارند

سعی می کنند با تغییراتی که در رام انجام می دهند بیشترین بازده را از باتری گوشی بدست بیاورند

برای اطلاعات بیشتر می تونید به این لینک بروید

رامهای با نام OMS

رامهای با برچسب نام OMS بر پایه فریمورکهای سونی هستند

این بدین معنا می باشد که Substratum بصورت کامل در این رامها کار می کنید

Substratum را اگر نمیشناسید بطور خلاصه برای تغییر ظاهر تمام گوشی با تمهای فراوان مورد استفاده قرار می گیرد

رامهای متفرقه دیگر

رامهای کاستوم دیگر طبق سلیقه توسعه دهنده نامگذاری می شوند

بخصوص رامهای بر پایه رام رسمی کاملا به سلیقه توسعه دهنده نامگذاری می شوند

رامهای هم مانند Resurrection Remix یا Omni یا XOSP نیز همه بر پایه LOS می باشند با قابلیتهای اضافی دیگر

رامهای دیگری نیز هستند که کاملا مستقل بر روی گوشیهای اندرویدی وجود دارند

مانند Plasma Mobile ،Tizen OS Sailfish OS ،Ubuntu،Firefox OS که تقریبا هنوز ثبات و کارایی لازم را ندارند

در مقاله ای جدا سعی می کنم درباره سیستم عاملهای بالا توضیح بدهم

اگر سوالی درباره رامها داشتید همینجا اعلام کنید سعی می کنم راهنماییتون کنم

موفق باشید

اودکس و دئودکس فرق میان این دو چیست؟

استاندارد

با سلام

در بسیاری از آموزشهای سایت حتما دو کلمه دئودکس و اودکس را دیده اید

معمولا برای ساخت کاستوم رامها آنها را دئودکس می کنیم

اودکس:

در سیستم اودکس فایلهای با فرمت .odex در کنار فایلهای APK هستند

این کار برای بهینه شدن دالویک فایل اجرایی می باشد

مثلا در کنار فایل Browser.apk یک فایل با نام browser.odex وجود دارد

خوب حالا مهمترین کاری که این فایل browser.odex انجام میده چیست؟

این فایل ساختار سیستم را مدیریت می کند و اطلاعاتی نظیر اجرایی برنامه،مقدار استفاده برنامه و غیره را ذخیره می کند

فایل اودکس به سیستم اندروید اجازه می دهیدکه بدون جستجو و باز کردن فایل APK به این اطلاعات دسترسی پیدا کند

فالهای Odex در کش دالویک ذخیره می شوند

حتما شنیده اید که بعد از نصب رام میگن کش دالویک را یکبار فرمت کنید باعث سریعتر شدن سیستم می شود

مزایایی فایلهای اودکس چیست؟

  • برنامه ها سریعتر اجرا می شوند چون فایلهای آنها از قبل در دالویک لود شده اند
  • اگر مقداری از دیتای یک برنامه را پاک کنید باید فایل اودکس را پاک کنید برای احتناب از ارور

فایلهای دکس را معمولا درون فایل APK نیز می توانید ببیند

دئودکس

در این رامها تمام اطلاعات درون فایل APK هستند

کدهای اودکس درون فایل classes.dex در APK می باشند

مزایایی فایلهای دنودکس:

  • فایلهای دئودکس برنامه ها را راحت می شود ویرایش،هک و مود کرد چون تمام اطلاعات درون فایل APK قرار دارد
  • برنامه های سیستمی را راحت با پاک کردن APK می توان حذف کرد

معایب:

  • برنامه ها بصورت کامل پیش از اجرا لود نمی شوند از این رو اجرایی اولیه برنامه کندتر می باشد
  • بوت دستگاه کمی کندتر میشود چون سیستم نیاز دارد اطلاعات برنامه ها از خود APK دریافت بکند

این نکته را بگم که دو معایب بالا که ذکر کردم لحظه ای هستند بعد از یکبار اجرا یا بوت اطلاعات برنامه درون دالویک ذخیره می شوند

و گاهی با فرمت دالویک در کاستوم ریکاری ممکن دوباره برای شروع نیاز به استخراج اطلاعات از فایل APK باشد

در آخر نیز اضافه کنم که در اکثر رامهای شرکتها رام اودکس می باشد

در سوی دیگر کاستوم رامها بیشتر دئودکس می باشند

از هر 10 کاستوم رام 9 تایی آنها دئودکس می باشند

با دئودکس کردن کاستوم رامها فضایی رم کمتری اشغال می کنند

همچنین به توسعه دهنده این اجازه را می دهد که ویرایشهای بیشتری در رام خود اعمال کند

 

پس اودکس برای سریعتر اجرا شدن می باشد

دئودکس برای ویرایش و مود رام می باشد

تشریح ساختار فایل ، پارتیشن system

استاندارد

پس از استخراج فایل system تمامی محتویات این فایل برای شما قابل نمایش خواهد بود .
شما همچنین میتوانید با روت کردن گوشی و سپس با نصب نرم افزارهایی مثل rootexplore.apk روی گوشی به محتویات پارتیشن system دسترسی پیدا کنید.برای ویرایش هر فایلی لازم است که با ساختار آن آشنایی داشته باشید.در این بخش از آموزش شما را با تمامی بخش های هسته اندروید یعنی system آشنا خواهم کرد.
سیستم عامل اندروید با ساختار جاوا به صورت رباط مجازی تحت dalvik virtual magic برای اجرای نرم افزارهای خود استفاده میکند

این مطلب توسط ILYA20 تهیه شده است برای خواندن کامل مطلب به لینک زیر در انجمن مراجعه کنید

هر گونه کپی برداری از متن بدون ذکر منبع شرعا حرام و مورد پسند نویسنده نمی باشد

آموزش سازگار کردن سورس سیانوژن برای کامپایل رام

استاندارد

به نام خدا

امروز برای اولین بار در بین سایتهای ایرانی میخوام براتون آموزش اختصاصی برای سازگار کردن سورس سیانوژن برای کامپایل رام مختص گوشی خودتون بزارم.

آموزش دانلود منابع و آماده سازی سیستم و ابزارهای مورد نیاز را میتوانید از لینکهای زیر در سایت مشاهده کنید.

[button link=”http://www.gsm-developers.com/guide-to-developing-rom-step-by-step/” size=”medium”]مبانی و آماده سازی محیط[/button]

[button link=”http://www.gsm-developers.com/%d8%b1%d8%a7%d9%87%d9%86%d9%85%d8%a7%db%8c-%d8%aa%d9%88%d8%b3%d8%b9%d9%87-%d8%b1%d8%a7%d9%85-%d9%87%d8%a7%db%8c-%d8%a2%d9%86%d8%af%d8%b1%d9%88%db%8c%d8%af-%d8%a7%d8%b2-%d9%be%d8%a7%db%8c%d9%87-%d8%aa/” size=”medium”]نصب ابزارکها و منابع مورد نیاز[/button]

از بیس رام cm میتوان برای ساخت رامهای زیادی استفاده کرد ما اینجا سراغ رام پر طرفدار slim میرویم و گوشی گلکسی گرند دو سیمکارت را هم بعنوان نمونه استفاده میکنیم.

 

تذکر: اگر شما برای دستگاه دیگری رام میسازید فقط کافیست که بجای i9080 نام گوشی مورد نظر و اگر رام شما اسلیم نیست فقط بجای slim نام رام خود را بگذارید.

در کل سه فایل در درخت سیانوژن وجود دارد که نیاز به ویرایش دارند.

1) cm.mk

2) cm.dependencies

3) AndroidProducts.mk

 

عکس پایین تمام فایلهای بیس سیانوژن را نمایش می دهد،که سه فایل مورد نیازمان برای ویرایش را با کادر قرمز نشان داده ایم.

cm-tree1

1- فایل cm.mk را به slim.mk تغییر نام دهید.

در عکس زیر مشاهده کنید تا تغییرات لازم  بین فایلهای cm.mk و slim.mk را بدهید.

cm-tree-2

همان طور که شما در عکس بالا مشاهده میکنید فقط به جایی CM نوشتیم SLIM  و مسیر بوت انیمیشن اسلیم را هم اضافه کردیم.( تمام رامها نیاز به بوت انیمیشن ندارند فقط رامهای SLIMROMS,VANIRAOSP,LIQUIDSMOOTH AND SOKP )

همچنین بوت انیمیشن به نسبت رزولوشن دستگاه شما هم متفاوت هست و باید اعمال کنید در متن بعنوان نمونه اگر صفحه نمایش شما اچ دی باشد (XHDPI ) پس باید مانند کد زیر باشد.

# Bootanimation

TARGET_SCREEN_HEIGHT := 1280

TARGET_SCREEN_WIDTH := 720

PRODUCT_COPY_FILES += \

     vendor/slim/prebuilt/common/bootanimation/720.zip:system/media/bootanimation.zip

 

الان ممکن هست فکر کنید که چرا نام فایل راعوض کردیم، جواب ساده است به پوشه vendor بروید و نام را بررسی و جایگزین کنید.( در بعضی رامها ممکن است با اشکال مواجه شوید)

cm-tree-3

برای نمونه در vaniraosp اگر cm.mk را به vanir.mk تغییر دهید،مانند شکل زیر اشکال میدهد.

cm-tree4

در صورت بروز این مشکل کافی که نام فایل cm.mk را به vanir_i9082.mk تغییر دهید.

این قانون دقیقا برای محتوای درون slim.mk هم اجرا میشود .

اول مطمئن میشویم تمام فایلها درون مسیر عکس زیر وجود دارند.

cm-tree5

همانگونه که مشاهده میکنید،فایلها در مسیر vendor/slim/config وجود دارند پس تا اینجا در مسیر درست حرکت کردیم.دیگر نیازی به ویرایش این فایل  نمی باشد.

2- اکنون نوبت فایل cm.dependencies

نام این فایل را طبق رام خود تغییر می دهید،برای ما که اسلیم هست می شودslim.dependencies

 

3- در آخرین مرحله نیاز به ویرایش فایل AndroidProducts.mk داریم.

 

در این فایل به سادگی هر فایلی به اسم device_i9082.mkوجود داشت به نامslim.mk  تغییر دهید.

برای درک بیشتر به عکس زیر دقت کنید.

cm-tree-6

کار تمام هست،بیس سیانوژن کاملا سازگار شده موفق باشید.

برای ادامه ساخت به راهنمایی توسعه رام های اندروید از پایه تا پیشرفته مراجعه کنید.

برای بحث و تبادل نظر میتوانید به لینک همین آموزش در انجمن مراجعه کنید.

 

[button link=”http://forum.gsm-developers.com/thread12651.html#post44695″ size=”medium”]لینک آموزش در انجمن[/button]

 

[button link=”https://telegram.me/gsm_developers” size=”medium”]لینک کانال تلگرام[/button]

 

 

هر گونه کپی برداری از پست شرعاً حرام بوده و مورد پسند نویسنده نمی باشد.

اولین کرنل خودتان را بسازید.

استاندارد

kernal-gsmdevelopers-com

گام اول؛ نرم افزارهای مورد نیاز

آماده سازی محیط

  • سیستم عامل Ubuntu 12.04 را نصب کنید.
  • بسته های برنامه ای مورد نیاز:

[php]

pre class="lang:default decode:true">git-core, gnupg, flex, bison, gpref, libsdl-dev, libesd0-dev, libwxgtk2.6-dev, build-essential, zip, curl, libncurses5-dev, zlib1g-dev, ia32-libs, lib32z1-dev, lib32ncurses5-dev, gcc-multilib, g++-multilib و ADB

[/php]

  • حال ترمینالی باز کنید و دستورات زیر را به ترتیب وارد کنید:

[php]
//Open a terminal
//"Type "
mkdir android
cd android
mkdir kernal
[/php]

توضیحات مراحل بالا:

  • استفاده از پک سیستم عامل Ubuntu (Arch=epicness) به دلیل راحتی استفاده و نصب برنامه و پشتیبانی گسترده توصیه می شود.
  • نصب پک برنامه های یاد شده به منظور انجام دستورات مورد نیاز است.
  • با دستورات مرحله سوم مسیری فهرست وار برای دسته بندی و حفط منظم داده ها ایجاد می شود. دستور mkdir مسیر ایجاد کرده و با دستور cd وارد مسیر می شویم. البته با دستور “mkdir -p android/kernal” می توان دو دستور قبلی را ادغام کرد.

گام دوم؛ Source

یک Terminal prompt باز کنید و دستور زیر را وارد کنید.

[php]

<pre class="lang:default decode:true ">//"Type "
cd android/kernel
git clone git://github.com/DooMLoRD/android_prebuilt_toolchains.git toolchains</pre>

[/php]

در این مرحله باید سورس هایی برای کرنال خودتان ایجاد کنید،  به این منظور به سایت های دستگاه خود مراجعه کنید. بعد از دانلود آن را استخراج کرده و در مسیر کرنال خود ذخیره کنید.

HTC

SAMSUNG

SONY

LG

گام سوم؛ کرنال خود را ویرایش کنید

بسته به نیاز خود یکی از تغییرات خود را در کرنال رامتان اعمال کنید.

در این گام میاموزید که تغییرات مورد نظراتان را در کرنال دستگاه خود اعمال کنید.

  • حالت اول: در نظر بگیرید فایل Patch دارید و می خواهید آن را در کرنال خود اعمال کنید.

– فایلی که می خواهید در کرنال خود اعمال کنید را دانلود کنید.

– فایل مورد نظر را با نام KernalPatch در مسیر کرنال ذخیره کنید.

– ترمینال باز کنید.

– به مسیر ریشه کرنالی که می خواهید پچ کنید بروید.

– دستور زیر را تایپ کنید.

[php]

patch -p1 < ../kernelPatch

[/php]

فایل زیر را اجرا کنید:

 

“drivers/cpufreq/Kconfig”

 

کدهای زیر را وارد کنید:

config CPU_FREQ_DEFAULT_GOV_SMARTASS

bool “smartass”

select CPU_FREQ_GOV_SMARTASS

select CPU_FREQ_GOV_PERFORMANCE

help

Use the CPUFreq governor ‘smartass’ as default.

config CPU_FREQ_GOV_SMARTASS

tristate “‘smartass’ cpufreq governor”

depends on CPU_FREQ

help

smartass’ – a “smart” optimized governor!

If in doubt, say N.

 

فایل زیر را باز کرده و دستورات گفته شده را وارد کنید:

[php]

"drivers/cpufreq/Makefile"

&nbsp;

obj-$(CONFIG_CPU_FREQ_GOV_SMARTASS)     += cpufreq_smartass.o

[/php]

فایلی با مشخصات زیر ایجاد کنید:

[php]

"drivers/cpufreq/cpufreq_smartass.c"

[/php]

حال تغییرات گاورنر خود را اعمال کرده اید.

هر گونه کپی برداری از این مطلب شرعاً حرام است و قطعا مورد رضایت نویسنده نمیباشد