鸿蒙PC端二进制文件签名命令行使用指南(附实战测试)

鸿蒙PC端二进制文件签名命令行使用指南(附实战测试)

鸿蒙PC端执行自定义编译的ELF格式二进制文件需先完成签名操作,该流程无需复杂配置,只需完成系统升级与依赖工具安装,即可通过命令行快速实现签名并验证运行效果。

一、前置准备

1.1 设备要求

建议将鸿蒙PC设备升级至6.0.0.115及以上版本(本文测试设备为MateBook Pro,系统版本6.0.0.115),确保签名工具可正常运行。

1.2 环境依赖安装

需安装以下工具,均可通过华为应用市场直接下载:

二、核心签名命令说明

鸿蒙PC端提供binary-sign-tool命令行工具实现二进制文件自签名,核心语法如下:

复制代码
# 基础签名命令
binary-sign-tool sign -inFile "待签名文件路径/文件名" -outFile "签名后文件路径/文件名" -selfSign "1"

参数说明:

  • -inFile:指定待签名的ELF格式二进制文件(支持绝对路径/相对路径);

  • -outFile:指定签名后文件的输出路径/名称(若与原文件同名,会直接覆盖);

  • -selfSign "1":启用自签名模式(鸿蒙PC端测试场景推荐使用)。

三、实战测试示例

3.1 快速测试(tree命令)

若已编译好tree命令的ELF二进制文件,可直接执行以下命令完成自签名:

复制代码
# 对tree二进制文件自签名(覆盖原文件)
binary-sign-tool sign -inFile tree -outFile tree -selfSign "1"

签名完成后,赋予文件可执行权限即可运行:

复制代码
# 添加可执行权限
chmod +x tree
# 执行命令
./tree

3.2 完整测试(less命令行工具)

less是GNU开源的终端分页查看工具,以下为完整的签名+运行测试流程:

  1. 文件准备:将编译好的less ELF文件传输至鸿蒙PC(可通过华为分享、U盘等方式);

  2. 执行签名:打开鸿蒙终端,运行签名命令:

    复制代码
    binary-sign-tool sign -inFile less -outFile less -selfSign "1"
  3. 添加执行权限

    复制代码
    chmod +x less
  4. 验证运行效果

    复制代码
    ./less --version

    测试结果:签名后的less可正常运行,版本信息与功能均验证通过。

  1. 验证运行效果

四、关键注意事项

  1. 签名操作跨平台兼容:无论在Windows、Linux还是鸿蒙系统完成签名,生成的二进制文件均可在鸿蒙PC上运行;

  2. 权限与授权:首次执行签名后的二进制文件时,系统会弹出权限确认弹窗,确认后后续执行无需重复授权;

  3. 文件覆盖:若-outFile指定的文件名与原文件一致,会直接覆盖原文件,建议测试阶段先备份原文件。

总结

  1. 鸿蒙PC端二进制文件签名的核心命令为binary-sign-tool sign -inFile [源文件] -outFile [目标文件] -selfSign "1"

  2. 操作前需完成系统升级(6.0.0.115+)与BiShengJDK17-OH、DevBox的安装;

  3. 签名后需执行chmod +x赋予可执行权限,首次运行需确认系统权限弹窗。

相关推荐
2501_920931704 小时前
React Native鸿蒙跨平台采用ScrollView的horizontal属性实现横向滚动实现特色游戏轮播和分类导航
javascript·react native·react.js·游戏·ecmascript·harmonyos
摘星编程6 小时前
React Native鸿蒙版:Drawer抽屉导航实现
react native·react.js·harmonyos
lbb 小魔仙7 小时前
【Harmonyos】开源鸿蒙跨平台训练营DAY9:获取分类数据并渲染
flutter·华为·harmonyos
mocoding7 小时前
Flutter 3D 翻转动画flip_card三方库在鸿蒙版天气预报卡片中的实战教程
flutter·3d·harmonyos
2501_920931708 小时前
React Native鸿蒙跨平台实现推箱子游戏,完成玩家移动与箱子推动,当所有箱子都被推到目标位置时,玩家获胜
javascript·react native·react.js·游戏·ecmascript·harmonyos
C雨后彩虹9 小时前
计算疫情扩散时间
java·数据结构·算法·华为·面试
24zhgjx-lxq9 小时前
华为ensp:MSTP
网络·安全·华为·hcip·ensp
qq_1777673710 小时前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos
烬头882110 小时前
React Native鸿蒙跨平台应用实现了onCategoryPress等核心函数,用于处理用户交互和状态更新,通过计算已支出和剩余预算
前端·javascript·react native·react.js·ecmascript·交互·harmonyos
小雨青年11 小时前
鸿蒙 HarmonyOS 6 | 系统能力 (06) 构建现代化通知体系 从基础消息到实况
华为·harmonyos