# 【开源鸿蒙跨平台训练营】学习笔记day3:使用dio库实现网络请求过程中的问题与解决方案
通过本次实践,我不仅掌握了在 OpenHarmony + Flutter 混合开发环境中使用 Dio 发起网络请求的基本流程,更重要的是学会了如何排查和解决两类典型问题:(1)Dart 导入路径错误:需结合项目结构和 pubspec.yaml 正确书写 import 语句;(2)SDK 版本不匹配:需同步 module.json5 与模拟器的 API 版本。
【开源鸿蒙跨平台训练营】学习笔记day3:使用dio库实现网络请求过程中的问题与解决方案
一、前言
在完成这次的学习任务时,我用到了两个IDE:
·Android Studio:用于创建和编写 Flutter 项目代码(因为 DevEco Studio 当前不支持直接创建 Flutter 模块);
DevEco Studio: 主要用于将项目部署到鸿蒙模拟器上运行和调试。
二、遇到的问题和解决方案
2.1、根据指引在dart文件中写入代码时报错(在Android Studio中创建文件时)
问题描述:
在 Android Studio 中复制示例代码后,Dart 文件中出现大量红色波浪线,提示语法或导入错误。
如:
核心原因:
问题出在 import ‘package:…’; 这一行。该语句用于导入第三方库(如 Dio)或本地自定义模块,但其路径必须严格匹配项目结构。若直接复制他人代码而未根据自身项目结构调整路径,就会导致解析失败。
其书写格式为:import ‘package:<文件名(及项目名)><需要导入的文件路径(根据左侧目录栏的文件实际路径作出修改)>’。
解决方案:
- 检查左侧项目目录结构,确认目标文件的实际路径;
- 修改 import 语句中的包名和路径,使其与当前项目一致。
例如: 若你的项目名为 my_harmony_app,且 Dio 已正确添加到 pubspec.yaml,则应使用:
**import 'package:dio/dio.dart';**
如果是导入本地工具类(如 network_utils.dart),则需写成:
**import 'package:my_harmony_app/utils/network_utils.dart';**
✅ 提示:确保 pubspec.yaml 中已正确声明依赖,并执行 flutter pub get 同步依赖项。
这是我修改后的:
2.2: SDK 版本或发布类型不匹配,导致无法启动模拟器
问题现象: 无法正常的启动模拟器。例如以下情况。
核心原因: 工程配置文件(module.json5)中设定的兼容 SDK 版本 (compatibleSdkVersion) 或发布类型 (releaseType) 与目标设备上运行的鸿蒙操作系统(HarmonyOS)的 API 版本不一致。
解决方案:
步骤1: 打开 Device Manager,选中当前要运行的目标设备,找到设备的 API 版本和 发布类型,确认设备信息。
步骤2: 双击shift(快速搜索),在信息框中输入compatibleSdkVersion或targetSdkVersion。
步骤3: 根据设备实际信息修改compatibleSdkVersion和targetSdkVersion。
如:

✅ 建议:开发阶段可使用最新稳定版模拟器,并确保项目 SDK 配置与之对齐,避免兼容性问题。
三、运行结果
1.主界面加载成功:
2.进入详情页,成功发起网络请求并展示数据:
3.下拉刷新后,数据更新正常:
四、总结
通过本次实践,我不仅掌握了在 OpenHarmony + Flutter 混合开发环境中使用 Dio 发起网络请求的基本流程,更重要的是学会了如何排查和解决两类典型问题:
(1)Dart 导入路径错误:需结合项目结构和 pubspec.yaml 正确书写 import 语句;
(2)SDK 版本不匹配:需同步 module.json5 与模拟器的 API 版本。
五、社区引导
最后,欢迎加入开源鸿蒙跨平台社区:链接:链接: link#https://openharmonycrossplatform.csdn.net
更多推荐




所有评论(0)