日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

从零开始学习Android Framework

發(fā)布時(shí)間:2023/12/10 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从零开始学习Android Framework 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

  • 從零開始學(xué)習(xí)Android Framework
    • 1. 環(huán)境配置
      • 步驟
    • 2. 編譯運(yùn)行
      • 所遇到的問題:
        • 問題一:
        • 問題二:
        • 問題三:
      • 編譯成功:
      • 使用模擬器
        • 出現(xiàn)問題:
        • 解決方法:
      • 模擬器啟動(dòng)

從零開始學(xué)習(xí)Android Framework

打工是不可能打工的,這輩子不可能打工的,寫代碼又不會(huì)寫,只能去B站找找視頻學(xué)學(xué),才能夠維持的了生活這樣子。
參考視頻教程:鏈接: 千里馬學(xué)框架.

1. 環(huán)境配置

Android8.1源碼:在視頻里有百度網(wǎng)盤,自行下載,10G花了我五塊加速結(jié)果半個(gè)多小時(shí)就下完了
我是用的虛擬機(jī)+Ubuntu 18.04.

步驟

  • 安裝openjdk8:$ sudo apt-get install openjdk-8-jdk # 檢查是否安裝成功,顯示的是openjdk $ java -version
  • 安裝軟件包:
    Ubuntu16:sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip Ubuntu18:參考鏈接:Ubantu18.04環(huán)境下編譯android源碼.
  • 解壓源碼:$ sudo apt-get install p7zip $ 7zr x android-8.1.0_r1.7z
  • 2. 編譯運(yùn)行

    編譯的命令很簡(jiǎn)單:

    # 初始化編譯環(huán)境( .可以用source代替,如 source build/envsetup.sh ) $ . build/envsetup.sh # 執(zhí)行 $ lunch # 我這里使用模擬器所以選擇 6 (即aosp_x86_64-eng) Which would you like? [aosp_arm-eng] 6 # 開始編譯 $ make

    可以選擇編譯的版本:

    Lunch menu... pick a combo:1. aosp_arm-eng2. aosp_arm64-eng3. aosp_mips-eng4. aosp_mips64-eng5. aosp_x86-eng6. aosp_x86_64-eng7. full_fugu-userdebug8. aosp_fugu-userdebug9. aosp_car_emu_arm-userdebug10. aosp_car_emu_arm64-userdebug11. aosp_car_emu_x86-userdebug12. aosp_car_emu_x86_64-userdebug13. mini_emulator_arm64-userdebug14. m_e_arm-userdebug15. m_e_mips-userdebug16. m_e_mips64-eng17. mini_emulator_x86-userdebug18. mini_emulator_x86_64-userdebug19. uml-userdebug20. aosp_dragon-userdebug21. aosp_dragon-eng22. aosp_marlin-userdebug23. aosp_marlin_svelte-userdebug24. aosp_sailfish-userdebug25. aosp_walleye-userdebug26. aosp_walleye_test-userdebug27. aosp_taimen-userdebug28. aosp_angler-userdebug29. aosp_bullhead-userdebug30. aosp_bullhead_svelte-userdebug31. hikey-userdebug32. hikey960-userdebug

    所遇到的問題:

    問題一:


    問題原因:不清楚,在一個(gè)帖子上看到說是時(shí)區(qū)的問題
    解決方法:在build/envsetup.sh文件最后添加export LC_ALL=C
    如下圖所示:
    ------------------

    問題二:


    問題原因:內(nèi)存不夠
    解決方法:執(zhí)行下面三條命令

    export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g" ./prebuilts/sdk/tools/jack-admin kill-server ./prebuilts/sdk/tools/jack-admin start-server

    如下圖所示:

    問題三:


    問題原因:
    解決方法:修改prebuilts/sdk/tools/jack-admin 文件,變量JACK_SERVER_VM_ARGUMENTS,添加參數(shù) -Xmx4096M

    JACK_SERVER_VM_ARGUMENTS=”${JACK_SERVER_VM_ARGUMENTS:=-Dfile.encoding=UTF-8 -XX:+TieredCompilation -mx4096M}

    如圖所示:

    編譯成功:

    使用模擬器

    $ emulator

    出現(xiàn)問題:

    解決方法:

    我是使用虛擬機(jī)里的Ubuntu,先要打開虛擬化Intel VT-x/EPT或AMD-V/RVI(V)。如圖所示

    打開后要重啟Ubuntu,emulator還是不行,如下圖

    然后輸入以下命令

    $ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils $ sudo adduser `id -un` libvirtd $ sudo adduser `id -un` kvm#查看安裝成功沒有 $ sudo kvm-ok #顯示下面信息就表示好了 INFO: /dev/kvm exists KVM acceleration can be used

    參考鏈接:
    VM中,無法使用X86_64模擬器.

    KVM安裝社區(qū)幫助.
    試了一下還是不行,同上圖一樣,

    解決:解決辦法也很簡(jiǎn)單,就是把之前的編譯執(zhí)行的命令再執(zhí)行一遍:

    # 執(zhí)行以下命令 $ source build/envsetup.sh $ lunch $ emulator

    參考鏈接:ubuntu 打開Android模擬器(Android源碼編譯)提示:emulator:未找到命令.

    模擬器啟動(dòng)


    不過我這里啟動(dòng)時(shí)彈出了找不到adb工具的警示框,使用sudo apt-get install adb 安裝adb之后設(shè)置adb位置就行了。
    參考鏈接:鏈接: 啟動(dòng)模擬器的,報(bào)“Could not automatically detect an ADB binary……”,要怎么解決?.

    總結(jié)

    以上是生活随笔為你收集整理的从零开始学习Android Framework的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。