searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

cuttlefish 集成 magisk

2024-07-01 03:26:45
0
0

cuttlefish 集成 magisk

适用于安卓9的cuttlefish,它使用的是ramdisk.img+kernel+cmdline三个单独的文件,而不是用boot.img。

  1. adb安装magisk25.2
    github上topjohnwu/Magisk的Magisk-v25.2.apk
  2. patch
    • 将boot.img放到模拟器中
      adb push boot.img /sdcard
    • 打开Magisk,点击install,按照提示来,最后选择boot.img进行patch
    • 得到 /sdcard/Download/magisk_patched_25200_xxx.img,adb pull到电脑上。
  3. 解包得到ramdisk.img
    • magisk实际上只patch了ramdisk.img,kernel虽然有patch的逻辑,但是没匹配上。

    • 下载AIK工具: github上的osm0sis/Android-Image-Kitchen ,直接下载zip或者git clone就行了。

    • 将magisk_patched_25200_xxx.img放到AIK的目录中,打开命令行运行 ./unpackimg.sh(需要用root运行)。

      • eg:
        root@xx:/home/xx/bin/AIK-Linux# ./unpackimg.sh
        Android Image Kitchen - UnpackImg Script
        by osm0sis @ xda-developers
        
        Supplied image: magisk_patched-25200_wN5Xd.img
        
        Setting up work folders...
        
        Image type: AOSP
        
        Splitting image to "split_img/"...
        ANDROID! magic found at: 0
        BOARD_KERNEL_CMDLINE loop.max_part=7 console=ttyS0 androidboot.console=ttyS1 androidboot.hardware=vsoc enforcing=0 audit=1 androidboot.selinux=permissive mac80211_hwsim.radios=0 security=selinux buildvariant=eng
        BOARD_KERNEL_BASE 0x10000000
        BOARD_NAME 
        BOARD_PAGE_SIZE 2048
        BOARD_HASH_TYPE sha1
        BOARD_KERNEL_OFFSET 0x00008000
        BOARD_RAMDISK_OFFSET 0x01000000
        BOARD_SECOND_OFFSET 0x00f00000
        BOARD_TAGS_OFFSET 0x00000100
        BOARD_OS_VERSION 9.0.0
        BOARD_OS_PATCH_LEVEL 2018-08
        BOARD_HEADER_VERSION 0
        
        Unpacking ramdisk (as root) to "ramdisk/"...
        
        Warning: Using cpio 2.13 may result in an unusable repack; downgrade to 2.12 to be safe!
        
        Compression used: gzip
        9327 blocks
        
        Done!
        
      • 看输出:
        root@xx:/home/xx/bin/AIK-Linux# ls
        authors.txt  bin  cleanup.sh  magisk_patched-25200_wN5Xd.img  ramdisk  repackimg.sh  split_img  unpackimg.sh
        
        root@xx:/home/xx/bin/AIK-Linux# ls split_img/
        magisk_patched-25200_wN5Xd.img-base            magisk_patched-25200_wN5Xd.img-kernel          magisk_patched-25200_wN5Xd.img-ramdiskcomp
        magisk_patched-25200_wN5Xd.img-board           magisk_patched-25200_wN5Xd.img-kernel_offset   magisk_patched-25200_wN5Xd.img-ramdisk.cpio.gz
        magisk_patched-25200_wN5Xd.img-cmdline         magisk_patched-25200_wN5Xd.img-origsize        magisk_patched-25200_wN5Xd.img-ramdisk_offset
        magisk_patched-25200_wN5Xd.img-hashtype        magisk_patched-25200_wN5Xd.img-os_patch_level  magisk_patched-25200_wN5Xd.img-second_offset
        magisk_patched-25200_wN5Xd.img-header_version  magisk_patched-25200_wN5Xd.img-os_version      magisk_patched-25200_wN5Xd.img-tags_offset
        magisk_patched-25200_wN5Xd.img-imgtype         magisk_patched-25200_wN5Xd.img-pagesize
        

      split_img/magisk_patched-25200_wN5Xd.img-ramdisk.cpio.gz就是我们要的ramdisk.img了,重命名一下就可以了。

  4. 将patch好的ramdisk.img替换掉cuttlefish模拟器原来的就可以开机了
  5. 设置Zygisk和安装LSPosed
    Riru+EdXposed已经停更了,换用Zygisk+LSPosed吧。
    • 打开Magisk的app,右上角设置,拉下去有个Zygisk的开关,打开就行。
    • 下载LSPosed并adb push到模拟器中。
    • Magisk App切到Modules tab,选择“install from storage”,找到刚刚下载的LSPosed模块的zip包。
    • 安装好后点右下角的重启按钮或者手动重启反正就是重启。
  6. 重启好后就完成了。
    如果是尝试安装Magisk24的话,需要每次开机后手动启动一下magisk的服务,照着/init.rc里写的magisk服务一个一个启动。
    如果是尝试安装Magisk23的话,不要尝试了。
0条评论
0 / 1000
c****o
1文章数
0粉丝数
c****o
1 文章 | 0 粉丝