当前位置: 首页 > news >正文

鸿蒙系统(HarmonyOS)4.2 设备上实现无线安装 APK 并调试

在鸿蒙系统(HarmonyOS)4.2 设备上实现无线安装 APK 并调试的步骤与 Android 类似,但需注意鸿蒙系统的特殊设置。以下是详细操作指南:


鸿蒙系统特殊准备

  1. 开启开发者选项
       - 设置 > 关于手机 > 连续点击"HarmonyOS版本" 7次
       - 返回设置 > 系统和更新 > 开发人员选项

  2. 关键权限开启
       - ✅ USB调试
       - ✅ “仅充电"模式下允许ADB调试
       - ✅ 开启"HiDebug"调试模式(部分版本需要)
       - ✅ 关闭"监控ADB安装应用”(避免安装拦截)


无线调试步骤

1. 初始USB连接(首次必需)
# 连接USB线后验证设备
adb devices
# 应显示设备序列号(如 ABC123 device)# 开启TCP/IP端口
adb tcpip 5555
2. 获取鸿蒙设备IP
  • 设置 > WLAN > 当前连接的Wi-Fi > 查看IP地址(如 192.168.1.105
  • 或通过命令获取:
      bash   adb shell ip addr show wlan0 | grep "inet "  
3. 无线连接设备
adb connect 192.168.1.105:5555  # 替换为实际IP
  • 成功提示:connected to 192.168.1.105:5555
4. 断开USB线验证
adb devices
# 应显示:192.168.1.105:5555 device

Android Studio 操作

  1. 配置项目
       - 确保 build.gradletargetSdkVersion ≥ 24(兼容鸿蒙)
       - 关闭Instant Run:File > Settings > Build > 取消勾选"Enable Instant Run"

  2. 无线调试
       - 选择无线设备 > 点击 Run 按钮(▶️)
       - 或手动安装APK:
         bash      adb install app-debug.apk      


鸿蒙专属问题解决

问题1:adb connect 连接被拒绝
  • 原因:鸿蒙防火墙限制
  • 解决
      1. 手机开启"USB安装":设置 > 安全 > 更多安全设置 > 外部来源应用安装
      2. 电脑终端执行:
         bash      adb shell settings put global hdb_enable 1      
问题2:安装APK时提示"解析错误"
  • 原因:鸿蒙应用管控
  • 解决
      1. 关闭"纯净模式":设置 > 系统和更新 > 纯净模式 > 关闭
      2. 手动授权:设置 > 安全 > 应用管控中心 > 对目标应用点"允许"
问题3:Logcat不输出日志
# 鸿蒙需单独开启日志服务
adb shell hilog -r

永久无线连接方案(免USB)

  1. 安装鸿蒙ADB工具
       bash    adb install hdc_std  # 鸿蒙专用调试工具    

  2. 生成永久连接脚本
       bash    echo "adb connect 192.168.1.105:5555" > hmos_wifi_adb.sh    chmod +x hmos_wifi_adb.sh    

  3. 开机自启(需root)
       - 使用鸿蒙系统工具箱添加脚本到 /system/bin


操作流程图

USB连接
鸿蒙特殊设置
开启USB调试+HiDebug
关闭纯净模式
adb tcpip 5555
获取IP
adb connect IP
断开USB
Android Studio 部署

注意:鸿蒙4.2对非应用商店APK限制较严,若遇安装失败,请检查:

  1. 设置 > 应用管理 > 特殊访问权限 > 安装未知应用 → 开启对应权限
  2. 开发者选项中的"禁止权限监控"是否开启

通过以上步骤,即可在鸿蒙4.2设备上实现稳定的无线调试。首次设置后,后续只需执行 adb connect IP 即可直接无线连接。

http://www.dtcms.com/a/266651.html

相关文章:

  • Python-封装和解构-set及操作-字典及操作-解析式生成器-内建函数迭代器-学习笔记
  • React中的useState 和useEffect
  • 记一次Linux手动设置网卡的过程
  • Spark从入门到实战:安装与使用全攻略
  • EM储能网关ZWS智慧储能云应用(13) — 企业个性化配置
  • 【CTF-Web环境搭建】中国蚁剑antSword
  • 电商分拣的“效率密码”:艾立泰轻量化托盘引领自动化流水线革新
  • ORACLE 日常查询
  • Linux三剑客:grep、sed、awk 详解以及find区别
  • RT‑DETR 系列发展时间顺序
  • 判断文件是否有硬链接
  • PyTorch实战(14)——条件生成对抗网络(conditional GAN,cGAN)
  • 基于PHP+MySQL实现(Web)英语学习与测试平台
  • 【Git】git命令合集
  • vue 常用搭配使用工具
  • 影楼精修-智能修图Agent
  • 2025.06.27-14.44 C语言开发:Onvif(二)
  • 批量PDF转换工具,一键转换Word Excel
  • Spring Boot多环境开发-Profiles
  • [netty5: HttpObject]-源码解析
  • OpenShift AI - 使用 NVIDIA Triton Runtime 运行模型
  • ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
  • 跨境电商ERP怎么选?有没有适合新手起步免费版的ERP系统?
  • Zabbix Web检测报错“Could not resolve host: blog.cn; Unknown error”
  • ABP VNext + RediSearch:微服务级全文检索
  • Java项目:基于SSM框架实现的在线投稿管理系统【ssm+B/S架构+源码+数据库+毕业论文】
  • 供应链管理:指标评估方式分类与详解
  • JVM 简介与作用
  • Unity HDRP + Azure IoT 的 Python 后端实现与集成方案
  • git教程-pycharm使用tag打标签