Android Açık Kaynak Projesinden Özel ROM Nasıl Oluşturulur

kaynak AOSP (Android Açık Kaynak Projesi) olarak bilinir .



Şimdi AOSP ile ilgili olan şey, saf kaynak kodunun içermez aygıta özgü donanım özellikleri. Uzman olmayanların terimleriyle, kameranız ve GPU'nuz gibi donanım, AOSP ile geliştirilirken 'kutunun dışında' çalışmayacaktır. Aslında, cihazınız bu donanım ikili dosyaları olmadan önyükleme yapmayacaktır.

Google markalı bir telefon (Pixel, Nexus vb.) İçin geliştirme yapıyorsanız, donanım ikili dosyalarını bulabilirsiniz. doğrudan Google'dan ve bu kılavuz bunları edinme ve ROM'unuza yerleştirme konusunda size yol gösterecektir. Ancak, markalı bir telefon (Sony, Samsung, vb.) İçin bir ROM geliştiriyorsanız… kalbinizi korusun, çünkü bir gezintiye çıkacaksınız.



Biraz Üreticilerin kendi açık kaynak projeleri veya olası geliştiriciler için yayın geliştirme araçları varken, diğer üreticiler kendi tescilli kodlarını sıkı bir şekilde korur. Daha popüler üreticilerin açık kaynaklı projelerinin kısa bir listesi:



Samsung Açık Kaynak Yayın Merkezi
Sony Geliştirici Dünyası
Lenovo Desteği
Huawei Açık Kaynak Yayın Merkezi
Motorola Geliştiricileri



Bunun dışında, bir Google Pixel cihazı için en temel, vanilya Android deneyimi için bir ROM oluşturduğumuz varsayımıyla devam edelim. Bu bilgi birikimiyle kendi başınıza dalabilir ve belirli üreticilerin ROM'larının özelleştirilmiş versiyonlarını geliştirmeye başlayabilirsiniz.

Bu Kılavuz için Gereksinimler:

  • Android Açık Kaynak Projesi
  • Pixel XL telefon veya Linux için bir Android emülatörü
  • 64 bit Linux İşletim Sistemi - Ubuntu veya Linux Mint en yeni kullanıcı dostu dağıtımlar, oysa BBQLinux özellikle Android geliştiricileri düşünülerek geliştirilmiştir.
  • Python
  • Güçlü bir bilgisayar (kod derlemek çok fazla bellek ve alan gerektirir!)

Derleme Ortamınızı Kurma

Linux makinenizde Android öykünücüsünü kurarak başlayalım. Bir Google Pixel XL cihazınız olsun ya da olmasın, yeni ROM'unuzu bir Android emülatöründe denemek her zaman en güvenlisidir önce cihazınıza yanıp sönüyor. Benim kişisel favorim Genymotion, bu nedenle o emülatörü kurarken size rehberlik edeceğim. Ancak, bu kılavuza da göz atabilirsiniz ' En İyi Android Emülatörleri ”, Çünkü çoğu Linux uyumluluğuna sahip.

Şuraya gidin: Genymotion web sitesi , bir hesap açın, e-posta yoluyla doğrulayın ve yürütülebilir dosyayı Linux masaüstünüze indirin.



Şimdi bir Linux terminali açın ve şunu yazın:

Chmod + x genymotion-xxxxx.bin (xxxx'i dosya adındaki sürüm numarasıyla değiştirin)
./genymotion-xxxxxx.bin

Basın VE Genymotion dizinini oluşturmak için. Şimdi terminali yazın:

cd genymotion && ./genymotion

Şimdi sizden yükleme işlemine başlamanızı isteyecektir, bu yüzden Sanal Aygıtlar Ekle penceresine gelene kadar İleri'yi tıklamanız yeterlidir. Cihaz Modeli seçeneğinin altında 'Pixel XL' öğesini seçin ve ardından kurulumu tamamlayın. İsterseniz sanal cihazı test edebilirsiniz, temelde masaüstünüzde bir Pixel XL telefona sahip olmak gibi olacaktır.

Şimdi Python'u kuralım:

$ apt-get install python

Şimdi Linux makinenize Java Geliştirme Kitini kurmamız gerekiyor. Linux terminalini açın ve aşağıdaki komutları yazın:

$ sudo apt-get güncellemesi
$ sudo apt-get install openjdk-8-jdk

Şimdi, USB cihaz erişimine izin vermek için Linux sistemini yapılandırmanız gerekecek. Linux terminalinde aşağıdaki kodu çalıştırın:

Bu, yukarıda belirtilen USB cihaz erişimine izin veren gerekli 51-android.txt dosyasını indirecektir. .Txt dosyasını açın ve Linux kullanıcı adınızı içerecek şekilde değiştirin, ardından .txt dosyasını aşağıdaki konuma yerleştirin: (olarak kök kullanıcı ). Şimdi yeni kuralların otomatik olarak yürürlüğe girmesi için cihazınızı USB aracılığıyla bilgisayarınıza bağlayın.

Android Kaynağını İndirme

AOSP Git'te barındırıldığından, Git ile iletişim kurmak için Repo adlı bir araç kullanacağız.

Öncelikle Ana dizininizde bir / bin klasörü kurmamız gerekiyor. Linux terminaline aşağıdaki komutları yazın:

$ mkdir ~/bin
$ PATH = ~ / bin: $ PATH

Şimdi Repo aracını indireceğiz, bu yüzden Linux terminaline yazın:

$ curl https://storage.googleapis.com/git-repo-downloads/repo> ~ / bin / repo
$ chmod a + x ~ / bin / repo

Repo yüklendikten sonra, iş dosyalarınızı tutmak için şimdi boş bir dizin oluşturmalıyız. Bunu Linux terminaline yazın:

$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY

Şimdi Git'i adınız ve e-posta adresinizle yapılandıracağız - düzenli olarak kontrol ettiğiniz bir Gmail adresi kullanın aksi takdirde Gerrit kod inceleme aracını kullanamazsınız.

$ git config –global user.name 'Adınız'
$ git config –global user.email
siz@gmail.com

Şimdi Repo'ya Git'ten en son AOSP ana manifestini almasını söyleyeceğiz:

$ repo init -u https://android.googlesource.com/platform/manifest

Başarılı bir şekilde yapılırsa, çalışma dizininizde Repo'nun başlatıldığını belirten bir mesaj alacaksınız. Ayrıca bir ' .repo ” istemci dizini içindeki dizin. Şimdi Android kaynak ağacını şu şekilde indireceğiz:

$ repo senkronizasyonu

Android Kaynağını Oluşturma

1

Bu kılavuzun başında bahsedilen donanım ikili dosyalarının devreye girdiği yer burasıdır. Şimdi şuraya gidelim: AOSP sürücüleri sayfasına gidin ve Android 7.1.0 (NDE63P) için Pixel XL ikili dosyalarını indirin. Hem satıcı görüntüsünü hem de donanım bileşenlerini indirmek istiyorsunuz. Bunlar sıkıştırılmış arşivler olarak gelir, bu nedenle bunları masaüstünüze çıkartın ve kök klasörden kendi kendine açılan komut dosyasını çalıştırın. İkili dosyaları daha önce oluşturduğumuz WORKING_DIRECTORY dizinine kurmayı seçin.

Şimdi Linux terminalinize yazın:

$ yonca yapmak
$ kaynak derleme / envsetup.sh

Şimdi oluşturulacak hedefi seçeceğiz, bu yüzden şunu yazın:

$ öğle yemeği aosp_marlin-userdebug
$ setpaths
$ make –j4

Orada, şimdi kaynaktan bir Android ROM 'oluşturduk'. Öyleyse, terminale yazarak öykünücüde test edelim:

$ emülatörü

Öyleyse emülatörde biraz oynayın. Gördüğünüz gibi, tamamen vanilyalı bir Android deneyimi oldukça azdır ve bu nedenle üreticiler AOSP'yi ihtiyaçlarına göre özelleştirirler. Yani sen abilir İsterseniz cihazınıza yeni oluşturduğumuz bu ROM'u flashlayın, ancak herhangi bir geliştirme eklemeden, tamamen vanilyalı bir Android deneyimi gerçekten çok sıkıcı bir şey olurdu.

Dolayısıyla, üreticilerin AOSP ile tipik olarak yapacakları, onu çatallamak, kendi özel ikili dosyalarını eklemek, kullanıcı arayüzünü özelleştirmek, bir önyükleme logosu eklemek vb. .

Bu kılavuzun ikinci bölümünde ROM'unuza yazı tipleri, temalar ve bir önyükleme animasyonu ekleneceği için bizi izlemeye devam edin!

5 dakika okundu