1. 创建并进入源码目录(根据实际路径调整,示例为oh6.0_release)
mkdir -p /home/disk/xxxi/oh6.0_release cd /home/disk/xxx/oh6.0_release
2. repo初始化(使用Gitee镜像源,指定6.0稳定版分支)
repo init -u gitee.com/openharmony… -b OpenHarmony-6.0-Release --no-repo-verify
3. 同步源码(-c仅同步当前分支,-j8并行线程数,根据CPU核数调整)
repo sync -c -j8
4. 拉取LFS大文件(确保大文件完整下载)
repo forall -c 'git lfs pull'
5. 下载预编译依赖(--skip-ssl避免SSL校验问题,适配部分环境)
bash build/prebuilts_download.sh --skip-ssl
6. 执行编译(以rk3568为例,替换为你的产品名,如g6780v10等)
./build.sh --product-name rk3568 --ccache --patch --load-test-config=false
压缩images文件夹为images.zip
zip -r images.zip ./images #压缩多个文件 zip usb_update.zip usb_update.bin0 usb_update.bin1
调整新logo的尺寸为720x1280,覆盖原文件(或生成新文件)
convert logo.bmp -resize 720x1280! -depth 24 -type truecolor -compress none logo.bmp
将新logo转换为Windows 3.x格式的24位BMP
convert logo.bmp -define bmp:format=win3x -depth 24 -type truecolor -compress none logo.bmp
#查看文件参数 file logo.bmp logo.bak.bmp
#安装imagemagick工具(图片参数转换) sudo apt update sudo apt install imagemagick -y 转换格式(32 位→24 位无压缩 BMP):
转换单个文件(logo.bmp)
convert logo.bmp -depth 24 -type truecolor -compress none new_logo.bmp
转换logo_kernel.bmp
convert logo_kernel.bmp -depth 24 -type truecolor -compress none new_logo_kernel.bmp 验证格式: file new_logo.bmp # 应显示x24
#创建软链接 给文件创建软链接: bash 运行 ln -s /home/user/file.txt /home/user/link_file.txt (创建link_file.txt,指向file.txt) 给目录创建软链接: bash 运行 ln -s /home/user/docs /home/user/link_docs (创建link_docs目录链接,指向docs)
#查看文件大小 du -sh oh6.0
#文件夹挂载与文件替换 hdc target mount hdc file send C:\Users\lango\Desktop\exceptional_system_keys_config.json /system/etc/multimodalinput/exceptional_system_keys_config.json
hdc file send C:\Users\lango\Desktop\key.xml /vendor/etc/key.xml
hdc file send C:\Users\lango\power_mode_config.xml /vendor/etc/power_config/power_mode_config.xml
挂载文件夹使之可读写+++++++++++++++++++++++++++++++++++++++++++++++++++: mount -o rw,remount /odm cp /data/key_pad.xml /odm/atv/etc/key_pad.xml
#copilot账号 Lango-XT11
/system/etc/multimodalinput/exceptional_system_keys_config.json
#捞出文件/文件夹 hdc file recv /system/etc/multimodalinput/exceptional_system_keys_config.json hdc file recv /vendor/etc/key.xml hdc file recv /odm/atv/etc/key.xml hdc file recv /odm/atv/etc/key_pad.xml cat /vendor/etc/power_config/power_mode_config.xml cat /odm/atv/etc/key_pad.xml
测量电压值: cd /vendor/bin ./sample_lsadc 1
获取应用签名:
bm dump -n com.ohos.settings | grep "finger"
结果:"fingerprint": "EDB7C25F5EAF08A209EE049B6B28E7E6629A200AB1296C84AFC767D91C79E67B",
#泰康,修改电源管理适配 hdc file send C:\Users\lango\power_mode_config.xml /vendor/etc/power_config/power_mode_config.xml
cat /vendor/etc/power_config/power_mode_config.xml cat hilog -b D hilog -p off hilog -T DisplayPowerSvc & hilog -T PowerState & hilog -T PowerSvc & hilog -T HDF_LOG_TAG & hilog -T PowerSuspend & power-shell suspend power-shell wakeup
替换hap: /system/app/com.ohos.systemui/TVSystemUI.hap
/system/app/com.ohos.systemui/TVSystemUI-PairService.hap
/system/app/com.ohos.systemui/TVSystemUI-VolumePanel.hap
/system/app/com.ohos.systemui/TVSystemUI-SystemDialog.hap rm -rf /data/* sync reboot
检查文件大小: du -sh 文件名
修改pmoc.dtsi设备树文件后,需要删除对应分区镜像和编译中间产物: rm -rf dtbo.img rm -rf kernel.img rm -rf ramdisk.img rm -rf out/kernel 修改后编译烧录验证:
1. 进入设备 shell
hdc shell
2. 进入设备树节点目录
cd /sys/firmware/devicetree/base/mcu_custom@0
3. 查看 lsadc_low_value(以十六进制显示)
od -t x4 lsadc_low_value
期望输出(大端序):
0000000 00000000 00000000 00000000 00000000
表示值为 <0 0 0 0>
4. 查看 lsadc_high_value
od -t x4 lsadc_high_value
期望输出:
0000000 00000000 60000000 00000000 00000000
表示值为 <0 0x60 0 0>(注意:60000000 是大端序,实际值是 0x60)
hap文件代码提交:
1. 暂存所有修改的文件
git add .
2. 提交到本地仓库(替换提交说明为实际内容)
git commit -m "适配F12按键功能:短按熄屏/亮屏、长按关机、关机态短按开机"
3. 推送
git push origin OpenHarmony-5.1.0-Release
查看某一模块下文件修改历史: repo status device/soc/goke/taishan 查看某一具体文件修改前后对比: diff --git a/gk6780v100/config.json b/gk6780v100/config.json
全量编译(包含镜像和sdk) ./build.sh --product-name rk3568 --cache full sdk的单独编译: ./build.sh --product-name ohos-sdk --cache
亮度调节: cd /sys/devices/platform/drm_backlight_generic.0/backlight/drm-backlight-main echo 0 > brightness echo 255 > brightness
编译后查找生成的HAL库
find out/gk6780v100 -name "libdisplay_hal.z.so"
鸿蒙系统截屏和图片导出指令: hdc shell snapshot_display -f /data/local/tmp/screenshot.jpeg hdc file recv /data/local/tmp/screenshot.jpeg
#模型切换
使用Opus 4.1模型(适合复杂任务)
claude --model opus "优化这段鸿蒙驱动代码的性能"
使用Haiku 3.5模型(适合快速任务)
claude --model haiku "写一个简单的Python脚本读取Samba共享文件"