# lib_comm **Repository Path**: fairy_android/lib_comm ## Basic Information - **Project Name**: lib_comm - **Description**: 共用组件仓库 - **Primary Language**: Android - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2022-08-02 - **Last Updated**: 2024-08-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: Android, Kotlin ## README # lib_comm #### 介绍 共用组件仓库 ## lib_utils ```groovy dependencies { implementation 'com.gitee.fairyheart.lib_comm:lib_utils:master-SNAPSHOT' implementation libs.bundles.lib.utils } ``` ## lib_network ```groovy dependencies { implementation 'com.gitee.fairyheart.lib_comm:lib_network:master-SNAPSHOT' implementation libs.bundles.lib.network } ``` ## lib_mqtt ```groovy dependencies { implementation 'com.gitee.fairyheart.lib_comm:lib_mqtt:master-SNAPSHOT' implementation libs.bundles.lib.mqtt } ``` 1、_新建Service基础IMqttService_
2、_Manifest注册服务_
__
3、_添加权限_
_ _ ## lib_root ```groovy plugins { id 'kotlin-kapt' id 'kotlin-parcelize' //序列化 } android { defaultConfig { //Arouter kapt { arguments { arg("AROUTER_MODULE_NAME", project.getName()) } } } buildFeatures { dataBinding = true } } dependencies { implementation libs.constraintlayout implementation 'com.gitee.fairyheart.lib_comm:lib_root:master-SNAPSHOT' implementation libs.bundles.lib.root kapt libs.arouter.compiler } ``` #### 1、Arouter使用 ```kotlin 1、传递值 val paramVo = ParamVo("1111") val postcard = ARouter.getInstance().build(PathConst.RouterAct) postcard.withParcelable("param_vo", paramVo) postcard.withString("id", "id0001") postcard.navigation() 2、获取值 ARouter.getInstance().inject(this) //@JvmField必须,按java属性处理 @Autowired(name = "id") @JvmField var id: String? = null @Autowired(name = "param_vo") @JvmField var paramVo: ParamVo? = null 3、对象需要序列化 import android.os.Parcelable import kotlinx.parcelize.Parcelize @Parcelize data class ParamVo(val id: String) : Parcelable ```