# cin **Repository Path**: leicg/cin ## Basic Information - **Project Name**: cin - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-11 - **Last Updated**: 2026-08-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 新型建材指南(android_ycjy) 新型建材指南是一款面向建材行业的 Android 客户端,用于浏览企业、项目、产品、资讯和课程,并提供消息通知、收藏、关注、企业资料维护及第三方登录等能力。 ## 功能概览 - 首页:查看行业内容和推荐信息。 - 分类:按产品、项目、行业等维度检索和浏览。 - 课程:浏览课程、查看课程详情并参与课程,支持阿里云视频播放。 - 消息:查看会议、项目、产品、课程和系统消息,支持未读数和已读处理。 - 我的:维护个人或企业资料、查看收藏和关注、管理项目与课程、修改密码及注销账号。 - 登录:支持手机号验证码、账号密码、微信和 QQ 登录;支持注册、找回及重置密码。 - 地图与定位:通过独立的 `location` 模块提供高德地图定位、地点搜索和逆地理编码能力。 ## 技术栈 - Kotlin、Java、AndroidX、Data Binding、View Binding - Android Gradle Plugin 7.0.4、Gradle Wrapper 7.5、Kotlin 1.5.31 - `compileSdk 31`、`targetSdk 31`、`minSdk 23` - OkHttp/网络请求基础能力(封装在 `base` 模块) - 高德 2D 地图、定位与搜索 SDK - 阿里云播放器 SDK 5.4.7.1 - 极光推送与 JShare(微信、QQ 分享/授权) - 腾讯 Tinker 热修复 - 华为 HMS Push(可按实际渠道配置启用) ## 模块说明 | 模块 | 说明 | | --- | --- | | `app` | 主应用,包含页面、业务模型、网络接口和资源 | | `base` | 通用基础组件、网络封装、基类、工具类和更新能力 | | `image` | 图片选择、拍照、裁剪和预览 | | `location` | 高德地图、定位、地点搜索和地址选择示例模块 | | `jiguang` | 极光推送及 JShare 相关依赖和资源 | | `AliyunVideoCommon` | 阿里云播放器公共组件 | | `AliyunPlayerBase` | 阿里云播放器基础 UI、网络和数据模型 | | `Aliyunplayer:AlivcPlayerTools` | 阿里云播放器扩展控件和播放逻辑 | | `Aliyunplayer:player_demo` | 播放器示例模块 | ## 运行前配置 ### 服务地址 主应用的 API 地址在 `app/build.gradle` 的 `BuildConfig.BASE_URL` 中配置,当前值为: ```text https://ycjy-api.lcg.de5.net ``` 开发、测试和生产环境建议通过构建变体或 Gradle 属性注入地址,不要把环境地址散落在业务代码中。 ### 第三方平台 以下配置需要在对应平台申请并按发布包名配置: 1. **高德地图**:在 `location/src/main/AndroidManifest.xml` 配置 `com.amap.api.v2.apikey` 的 Key,并为签名证书包名建立白名单。 2. **极光推送/JShare**:在 `app/build.gradle` 的 `manifestPlaceholders` 中配置 AppKey、渠道和微信/QQ 等平台参数。 3. **华为 HMS**:如果启用华为推送,请将平台提供的 `agconnect-services.json` 放到 `app/` 目录,并确认 `com.huawei.agconnect` 插件配置有效。 4. **阿里云播放器**:播放器证书文件 `AliVideoCert.crt` 和 Manifest 中的授权信息需要使用项目所属账号的有效配置。 ### 签名 Release 使用 `lei.chuguang.jks` 签名配置。该文件及密码属于发布凭据,打包机上应单独安全存放;如本地没有签名文件,请在 `app/build.gradle` 中改用本地签名配置或仅构建 Debug 版本。 ## 测试账号 | 账号标识 | 登录手机号 | 角色 | | --- | --- | --- | | `test_enterprise` | `13800000001` | 企业 | | `test_designer` | `13800000002` | 个人设计师 | | `test_company_designer` | `13800000003` | 企业设计师 | | `test_buyer` | `13800000004` | 采购 | | `test_installer` | `13800000005` | 施工安装 | | `test_expert` | `13800000006` | 专家 | | `test_supervisor` | `13800000007` | 监管 | | `test_property` | `13800000008` | 物业 | ## 目录结构 ```text app/ 主应用及业务代码 base/ 基础库和公共能力 image/ 图片相关组件 location/ 高德地图定位组件 jiguang/ 极光推送与分享组件 AliyunVideoCommon/ 阿里云播放器公共组件 AliyunPlayerBase/ 阿里云播放器基础组件 Aliyunplayer/ 播放器扩展和示例 thirdparty-lib/ 三方依赖版本集中配置 bakApk/ Tinker 基线 APK、mapping 和 R 文件 ``` ## 热修复(Tinker) 项目默认启用 Tinker。生成补丁前,需要准备与当前配置匹配的基线 APK、mapping 文件和 `R.txt`,并通过 Gradle 属性指定路径。 ## 许可与第三方声明 本项目依赖高德、阿里云、极光、华为 HMS、腾讯 Tinker 等第三方 SDK。 ## 维护者 雷楚光