# OneApp Community - 社区模块文档 ## 模块概述 `oneapp_community` 是 OneApp 的社区模块,专注于社区发现和用户互动功能。该模块提供社区内容浏览、文章发现、动态时刻、用户主页等核心功能。 ### 基本信息 - **模块名称**: oneapp_community - **版本**: 0.0.3 - **类型**: Flutter Package ### 核心导出组件 基于真实项目代码的主要导出: ```dart library oneapp_community; // 社区发现模块 export 'src/app_modules/app_discover/pages/community_tab_page.dart'; export 'src/app_modules/app_discover/pages/discover_tab_page.dart'; export 'src/app_modules/app_discover/pages/community_tab_explore_page.dart'; export 'src/app_modules/app_discover/pages/discover_article_page.dart'; export 'src/app_modules/app_discover/pages/discovery_moment_page.dart'; // 用户模块 export 'src/app_modules/app_mine/pages/user_home_page.dart'; // 路由和模块配置 export 'src/community_route_dp.dart'; export 'src/community_route_export.dart'; export 'src/oneapp_community_module.dart'; // 数据模型 export '/src/app_modules/app_mine/models/ads_space_model.dart'; // 组件 export 'src/app_component/medium_component/sweep_video_bg.dart'; ``` ## 目录结构 基于实际项目结构: ``` oneapp_community/ ├── lib/ │ ├── oneapp_community.dart # 主导出文件 │ ├── generated/ # 生成的国际化文件 │ ├── l10n/ # 国际化资源文件 │ └── src/ # 源代码目录 │ ├── app_modules/ # 应用模块 │ │ ├── app_discover/ # 发现模块 │ │ │ └── pages/ # 发现页面 │ │ └── app_mine/ # 我的模块 │ │ ├── pages/ # 用户页面 │ │ └── models/ # 数据模型 │ ├── app_component/ # 应用组件 │ │ └── medium_component/ # 媒体组件 │ ├── community_route_dp.dart # 社区路由依赖 │ ├── community_route_export.dart # 社区路由导出 │ └── oneapp_community_module.dart # 社区模块定义 ├── assets/ # 静态资源 └── pubspec.yaml # 依赖配置 ``` ## 核心功能模块 ### 1. 社区发现功能 实际项目包含的发现页面: - **community_tab_page.dart**: 社区标签页面 - **discover_tab_page.dart**: 发现标签页面 - **community_tab_explore_page.dart**: 社区探索页面 - **discover_article_page.dart**: 发现文章页面 - **discovery_moment_page.dart**: 发现动态页面 ### 2. 用户相关功能 - **user_home_page.dart**: 用户主页页面 - **ads_space_model.dart**: 广告位数据模型 ### 3. 媒体组件功能 - **sweep_video_bg.dart**: 视频背景扫描组件 ## 技术架构 ### 模块化设计 基于OneApp的模块化架构: ```dart // 社区模块类(推测结构) class OneAppCommunityModule extends Module { @override List get binds => [ // 服务绑定 ]; @override List get routes => [ // 路由配置 ]; } ``` ### 路由管理 ```dart // 社区路由导出 class CommunityRouteExport { // 路由键定义 static const String keyCommunityTab = 'Key_Community_Tab'; static const String keyDiscoverTab = 'Key_Discover_Tab'; static const String keyUserHome = 'Key_User_Home'; // 其他路由相关配置 } ``` ## 使用指南 ### 1. 模块集成 ```dart // 在主应用中导入社区模块 import 'package:oneapp_community/oneapp_community.dart'; // 注册模块 class AppModule extends Module { @override List get imports => [ OneAppCommunityModule(), // 其他模块... ]; } ``` ### 2. 页面导航 ```dart // 导航到社区页面 Navigator.pushNamed(context, '/community_tab'); // 导航到发现页面 Navigator.pushNamed(context, '/discover_tab'); // 导航到用户主页 Navigator.pushNamed(context, '/user_home'); ``` ### 3. 组件使用 ```dart // 使用视频背景组件 SweepVideoBg( videoUrl: 'your_video_url', child: YourContentWidget(), ) ``` ## 依赖配置 ### pubspec.yaml 关键依赖 ```yaml dependencies: flutter: sdk: flutter # 基础模块依赖 basic_modular: path: ../oneapp_basic_utils/basic_modular # UI基础组件 ui_basic: path: ../oneapp_basic_uis/ui_basic # 国际化支持 flutter_localizations: sdk: flutter intl: ^0.17.0 dev_dependencies: # 国际化代码生成 intl_utils: ^2.8.0 ``` ## 最佳实践 ### 1. 性能优化 - 使用懒加载优化页面加载速度 - 合理缓存图片和视频资源 - 实现虚拟列表减少内存占用 ### 2. 用户体验 - 提供加载状态指示 - 实现下拉刷新和上拉加载 - 支持离线浏览缓存内容 ### 3. 代码组织 - 按功能模块组织代码结构 - 使用BLoC模式管理状态 - 实现完整的错误处理机制 ## 问题排查 ### 常见问题 1. **页面加载慢**: 检查网络请求和图片加载优化 2. **内存占用高**: 使用内存分析工具检查是否有内存泄漏 3. **导航异常**: 检查路由配置和模块注册 ### 调试技巧 - 使用Flutter Inspector检查组件树 - 启用性能监控查看帧率 - 使用网络抓包工具检查API调用