【OHOS】常用命令整理

1、编译

1.1 正常编译

  1. repo sync -c -j16 同步代码(synch同步)
同步代码报错时:
1.快速找到第一个报错: repo sync -c -j16 -j1 --fail-fast

2.云端与本地不兼容报错需要强制更新一下某个文件(报错会提示强制同步对应文件):
repo sync --force-sync base/security/deviceauth
  1. 同步代码大面积失败时,环境重置
1.安装依赖包: 
unix_time=`date '+%s'`;for one_tools in `curl -s -k https://gitee.com/landwind/openharmony_oneclick_env_init/raw/master/apt_install.list`;do echo "apt-get install -y ${one_tools}">>/tmp/openharmony_deps_${unix_time}.sh; done;sudo apt-get update;sudo bash -x /tmp/openharmony_deps_${unix_time}.sh

2.删除out:  rm -rf out

3.重置工作区,删除所有修改(记得备份你改的代码): 
repo forall -c "pwd;git reset --hard; git clean -fd"

4.更新最新代码: 
repo sync -c -j8; repo forall -c "pwd;git lfs install;git lfs pull"

5.执行prebuilts下载脚本:    bash build/prebuilts_download.sh
  1. 环境重置失败时,全部重置
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
(注:manifest清单,里面的.xml文件记录了所有文件的路径)

repo sync -c -j16

-----------一次性操作

repo forall -c 'git lfs pull'

bash build/prebuilts_download.sh
(注:代码同步后编译报错插件问题,说明插件有更新,执行一次更新插件)

./build/prebuilts_download.sh --no-check-certificatie -skip-ssl
  1. 同步代码成功时,编译【在master目录下】
一般情况下用这个命令就够了:
./build.sh --product-name rk3568 --ccache

更多功能使用:
./build.sh --export-para PYCACHE_ENABLE:true --product-name rk3568 --ccache --build-target make_all --build-target make_test
(注:其中 --build-target make_test 打印测试日志,目前阶段可以不加)

64位编译:
./build.sh --product-name rk3568 --ccache --build-target make_all --build-target make_test --target-cpu arm64 --gn-args enable_notice_collection=false

注:有时编译的时候三方库会出现未识别的标识符,直接删掉该目录或注释对应问题行,重新同步代码
  1. 编译失败时,使用三板斧
1.删除out, rm -rf out
2.更新工具链:./build/prebuilts_download.sh
3.更新二进制:repo forall -c "git lfs pull"

1.2 编译指定目录

./build.sh --product-name rk3568 --export-para BUILD_AOSP:false --export-para PYCACHE_ENABLE:true --build-target ability_runtime_test
(注:这里指定的目录是ability_runtime_test)

2、hdc工具

2.1 安装hdc工具

1.hdc的版本和设备版本保持一致,可自己编译最新hdc工具:
./build.sh --product-name ohos-sdk --ccache

2.源码根目录执行生成的hdc工具直接copy到本地路径(可将hdc_std.exe改为hdc.exe方便点),加入环境变量

在这里插入图片描述

  • 冷知识:
    win中到对应目录下的路径框输入cmd,cmd会直接进入当前路径

2.2 烧写部分文件

部分文件指修改后重新编译的那部分:

1.进入cmd:win+r

2.给hdc权限(经常会没有权限):hdc shell mount -o remount,rw /

3.修改完编译好,推对应的so包:hdc file send XXX\libabilityms.z.so /system/lib/
例:把libabilityms.z.so放到D盘下面,XXX就是D:\hdc_file,注意win中是\,linux中是/

4.设备重启

注:有时编译通过,但是刷机会卡在开机界面,这个时候需用编译失败三板斧重新编译

2.3 全部重新烧写

1.更新镜像config文件

2.更改镜像其他配置文件,把路径换了

3、打印日志

1.源文件添加日志,可用HILOG_ERROR()等    --    格式符%{public}s 其中public可见,s表示string

2.源文件修改完编译好,推这个so包就行了,cmd推送命令
hdc file send XXX/libabilityms.z.so /system/lib/

3.收集hilog日志
hdc shell              进入设备(注:hdc在win中,不在shell中)  
hilog -w start         启动日志落盘(把log保存成文件)
ls /data/log/hilog     查看日志
exit                   退出

4.退出shell后,把设备中文件/data/log/hilog/* 拷贝到D盘下面,注意必须全名
hdc file recv /data/log/hilog/*001.gz D:\

5.使用notepad++打开进行查看

4、shell中一些常用命令

4.1 git

什么是git? 文件版本管理工具
什么是repo? git们的管家,执行repo就是执行了N个不同的git命令

git status            查看上次的状态(status)【必须进入到对应的小目录下】

本地同步时保留修改:
git stash                将本地的修改存放(stash)到栈 【进入到对应的小目录】
repo sync -c -j16        同步代码到本地
git stash pop            将栈的保存替换到本地,并清空栈

4.2 其他搜索命令

find -name *.hap | grep -E setting  搜索所有hap包中带setting的文件

history | grep -E ./build.sh        查看历史命令中带./build.sh的命令

4.3 配置bash快捷命令

vim ~/.bash_aliases

//把下面这些复制,保存(可根据自己需要进行配置)
alias 0='cd ~/OpenHarmony/master'
alias 1='cd ~/OpenHarmony/master/foundation/ability/ability_runtime'
alias 10='repo sync -c -j16'
alias 11='./build.sh --product-name rk3568 --ccache'
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias ......='cd ../../../../..'

//执行生效
source ~/.bash_aliases

5、IDE相关

5.1 本地IDE新增接口(OHOS还未更新接口的定义)

1、找到新增接口:码云->OpenHarmony->interface_sdk-js,点击Pull Requests->文件,可以看到里面【对应文件】新增的接口及其内容,注意本地IDE的SDK路径要与【对应文件】的路径保持一致!!!

2、找到对应API路径:C:\Users\xuzheheng\AppData\Local\OpenHarmony\Sdk\ets\3.2.2.5\api

路径 = 本地IDE的SDK路径 + 开发语言 + 开发版本

  • IDE点击Tools->SDK Manager查看SDK路径

  • 查看开发语言和版本 - 在External Libraries下能看到eTs-3.2.2.5。

3、在上述路径新建同名的文件夹,将新增接口的内容填充进去,生成对应的HAP包

4、关于接口的使用参考:

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-application-applicationContext.md

其中import时要注意去掉./这些。

6、应用开发工具使用

  • 卸载文件:
hdc shell     进入shell

bm dump -a      显示所有文件

bm uninstall -n com.example.amsstageapplication  卸载对应文件“com.example.amsstageapplication”
  • 安装文件:
hdc file send .\sign-normal.hap /data/  把对应的hap包发送到板子/data/中

hdc shell     进入shell

cd /data  进入hap目录

bm install -p sign-normal.hap 在hap包所在的目录中安装

  • 通过签名工具安装文件(推荐):

    1、install–basic.bat使用用notepad++打开后,-inputFile后面改成生成的hap包地址(本地绝对地址)

    2、配置好脚本后执行,给编译好的hap包签名并推包进入板子

    3、然后点击install–basic.bat执行
    其中.hap包就是编译成功的包。注意在build-default-outputs-default目录下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值