2023年中旬,谷歌宣布開啟project treble計畫,希望解決安卓手機碎片化的問題,有很多的良心廠商加入了該專案組,包括日本的索尼,南韓的三星,中國的一加,華為;也就是說,我們可以在三星的任何一款機器上面定製安卓原生系統,這對於對安卓手機有定製化需求的公司來說是一件很棒的事情;
主流手機廠商開源**
samsung open source release center
sony developer world
lenovo support
huawei open source release center
motorola developers
oneplus github repository
三星s9出來了,在國外的xda論壇已經有很多大神開始製作s9的rom包,但是國內的相關部落格確實少之又少,可能現在做rom不掙錢?總之,對於普通人開發者來說,想要把自己三星手機或者一加手機刷成自己的系統實在是太難了;的作為一名負責人的安卓開發人員,我決定把我學到的這點知識分享給大家,如果有錯誤也希望大家多多指正;
核心編譯;
系統原始碼編譯
刷入系統映象和核心映象
好了,那我們開始吧;
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel nss_ldap openldap openldap-devel openldap-clients openldap-servers libxslt-devel libevent-devel ntp libtool-ltdl bison libtool vim-enhanced配置輸出目錄
在核心解壓目錄下新建out目錄,用來存放編譯結果;
$ mkdir out
$ output_dir=out
修改根目錄下makefile檔案,指定編譯toolchain,我這裡是
cross_compile=/usr/local/toolchain/aarch64-linux-android-4.9/bin/aarch64-linux-android-
開始編譯
首先指定編譯版本,然後執行make指令:
$ export arch=arm64
$ make -c $(pwd) o=$(pwd)/out kcflags=-mno-android starqlte_chn_open_defconfig
$ make -c $(pwd) o=$(pwd)/out kcflags=-mno-android
到這裡就是耐心等待編譯完成了,編譯完成後,在out/arch/arm64/boot/image目錄下會生成核心映象,module目錄在out/drivers/*/*.ko
下;
同樣的,我們要把一些必須的依賴庫加入進去,也需要自行配置一下(aosp不會自動配置的);這裡的話我通過修改build\target\product\core.mk
檔案;
對應的模組需要的lib如下:
case 1) professionalaudio : 需要新增 'libjackshm','libjackserver','libjack', 'libjacklogger', 'androidshmservice','jackd','jack_dummy','jack_alsa','jack_opensles','jack_loopback',
'in','out','jack_connect','jack_disconnect','jack_lsp','jack_showtime','jack_******_client','jack_transport','libasound','libglib-2.0',
'libgthread-2.0' 到product_packages
case 2) e2fsprog : 需要新增 'e2fsck','resize2fs' 到product_packages
case 3) libexifa : 需要新增'libexifa' 到product_packages
case 4) libjpega :需要新增 'libjpega' 到product_packages
case 5) keyutils :需要新增 'libkeyutils' 到product_packages
具體怎麼做呢?我們只需要在該檔案裡面新增如下:
# professionalaudio
product_packages += \
libjackshm \
libjackserver \
libjack \
libjacklogger \
androidshmservice \
jackd \
jack_dummy \
jack_alsa \
jack_opensles \
jack_loopback \
in \
out \
jack_connect \
jack_disconnect \
jack_lsp \
jack_showtime \
jack_******_client \
jack_transport \
libasound \
libglib-2.0 \
libgthread-2.0
# e2fsprog
product_packages += \
e2fsck \
resize2fs
# libexifa
product_packages += \
libexifa
# libjpega
product_packages += \
libjpega
# keyutils
product_packages += \
libkeyutils
到這裡,依賴模組就新增完成了;
執行./build_64bit.sh
$ ./build_64bit.sh
爬蟲大作業 爬取三星Galaxy S9論壇
1.選乙個自己感興趣的主題或 所有同學不能雷同 2.用python 編寫爬蟲程式,從網路上爬取相關主題的資料。3.對爬了的資料進行文字分析,生成詞云。4.對文字分析結果進行解釋說明。5.寫一篇完整的部落格,描述上述實現過程 遇到的問題及解決辦法 資料分析思想及結論。6.最後提交爬取的全部資料 爬蟲及...
三星Galaxy S21 FE上市
經過數月的期待,三星galaxy s21 fe於本周早些時候發布。根據市場的不同,它配備了snapdragon 888或exynos 2100晶元組,今天它在一些地區開始銷售,比最初宣布的1月11日提前 這款6 12zzekvv8 gb型號的手機起價為749歐元 699英鎊,可以在歐洲的一些線下商店...
三星Galaxy S22高畫質渲染
早些時候,知名爆料人士 onleaks 分享了 galaxy s22ultra 程式設計客棧和 galaxy s22 兩款旗艦的高畫質渲染圖,程式設計客棧現在他再次分享了 ga程式設計客棧laxy s22標準版的渲染圖和 與 s22ultra 不同,其設計與三星 galaxy s22 相似,特別是機...