依赖小本本

真机测试:
        android:requestLegacyExternalStorage="true"
        android:usesCleartextTraffic="true"

===============================
所有权限:
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
    <uses-permission android:name="android.permission.READ_SMS"></uses-permission>
    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_CALL_LOG"/>
    <uses-permission android:name="android.permission.READ_CALL_LOG"/>

===========================================


        maven { url 'https://maven.aliyun.com/repository/central' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
//===========================================
   
        maven { url 'https://maven.aliyun.com/repository/central' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
        maven { url "https://jitpack.io"}

===========================================

//报错
org.gradle.jvmargs=-Xmx4096m 

android.enableJetifier=true
org.gradle.parallel=true
org.gradel.daemon=true
org.gradel.configureondemand=true


===========================================
//plugins { 

apply plugin: 'com.android.application'
apply plugin: 'org.jetbrains.kotlin.android'
apply plugin: 'kotlin-kapt'
//apply plugin: 'com.google.dagger.hilt.android'

id 'com.google.dagger.hilt.android'
    id 'kotlin-kapt'

===========================================

视图绑定

viewBinding {
        enabled = true
    }
    dataBinding{
        enabled = true
    }
--------------------------------------------
buildFeatures {
        viewBinding true
        dataBinding true
    }

    dexOptions {
        dexInProcess true
        preDexLibraries true
        javaMaxHeapSize "6g"
    }

=============================================
sourceSets {
        main {
            if (isModuleApp) {
                manifest.srcFile "src/main/app/AndroidManifest.xml"//app模式
            } else {
                manifest.srcFile "src/main/AndroidManifest.xml"//library模式
            }
        }
    }
===========================================

id 'com.google.dagger.hilt.android' version "2.44" apply false

===========================================


//依赖
    implementation 'com.github.bumptech.glide:glide:4.11.0'//Glide图片:

    //Gson converter gson解析
    implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
    //implementation 'com.google.code.gson:gson:2.8.2'//(2)Gson解析:

    //Hilt
    //implementation "com.google.dagger:hilt-android:2.44"
    //kapt "com.google.dagger:hilt-compiler:2.44"

    //viewModel
    implementation"androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1"

    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2'//协程依赖

    //page3
    implementation 'androidx.paging:paging-runtime-ktx:3.0.0-beta03'

    //Navigation
    def nav_version = "2.5.3"
    implementation("androidx.navigation:navigation-fragment-ktx:$nav_version")
    implementation("androidx.navigation:navigation-ui-ktx:$nav_version")

    // Activity中使用viewmodels
    implementation "androidx.activity:activity-ktx:1.4.0"

    // 在fragment中使用viewmodels
    implementation "androidx.fragment:fragment-ktx:1.5.5"

    //flow协程
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2'

    // TextBanner
    implementation 'com.haowen:textbanner:1.0.4'

    //渐变字体
    implementation 'com.williamyang:gradienttext:1.0.1'

    // banner依赖
    implementation 'com.youth.banner:banner:1.4.10'
    //implementation 'io.github.youth5201314:banner:2.2.2 '

    //万能适配器
    implementation 'com.android.support:recyclerview-v7:30.0.0'//recyclerview
    implementation'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.0'//万能适配器

    implementation 'com.github.wildma:PictureSelector:2.1.0' //相机图库

    //选择器
    implementation 'com.github.gzu-liyujiang.AndroidPicker:WheelPicker:4.0.1'
    implementation 'com.github.gzu-liyujiang.AndroidPicker:AddressPicker:4.0.1'

    //flycotablayout
    implementation 'com.flyco.tablayout:FlycoTabLayout_Lib:2.0.2@aar'


    implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'// log拦截器依赖

    //RxJava依赖:主要用于消息传递
    implementation 'io.reactivex.rxjava2:rxjava:2.2.8'
    implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'

    //Retrofit依赖
    implementation 'com.squareup.retrofit2:retrofit:2.9.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava2:2.5.0'

    //RxJava2 Adapter
    implementation "com.squareup.retrofit2:adapter-rxjava2:2.3.0"

    //okhttp
    implementation 'com.squareup.okhttp3:okhttp:3.4.1'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.9.1'

    //通用的工具类
    implementation 'com.blankj:utilcodex:1.30.6'

    //MMKV存储工具
    implementation 'com.tencent:mmkv:1.3.1'
    //分包加载
    //implementation 'com.android.support:multidex:1.0.3'

    implementation 'com.shuyu:GSYVideoPlayer:7.1.2' //GSY视频播放

    //环信
    implementation 'io.hyphenate:hyphenate-chat:3.9.4'
    implementation 'io.hyphenate:ease-im-kit:3.9.4'

    //二维码
    implementation 'cn.yipianfengye.android:zxing-library:2.2'

    //GSY视频播放
    implementation 'com.shuyu:GSYVideoPlayer:7.1.2'

    //MultiDex
    implementation "androidx.multidex:multidex:2.0.1"//依赖

    implementation 'com.github.ctiao:DanmakuFlameMaster:0.9.25'//烈焰弹幕.

    implementation 'io.agora.rtc:full-sdk:4.3.1'//声网

    implementation 'org.greenrobot:eventbus:3.2.0'//eventbus

//debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.14'

    //下拉刷新和加载更多
    implementation 'io.github.scwang90:refresh-layout-kernel:2.0.5'      //核心必须依赖
    implementation 'io.github.scwang90:refresh-header-classics:2.0.5'    //经典刷新头
    implementation 'io.github.scwang90:refresh-footer-classics:2.0.5'    //经典加载

-------------------------------------------------

    implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'// log拦截器依赖
    implementation 'com.lzy.net:okgo:3.0.4'//okgo
    
    implementation 'com.github.kaisengao:KsgLikeView:1.2.2'//点赞

    //implementation ('com.alibaba:arouter-api:1.5.2') //ARouter依赖   //版本要改成最新版本
    //annotationProcessor 'com.alibaba:arouter-compiler:1.5.2' //ARouter依赖
  //arouter
    implementation ('com.alibaba:arouter-api:1.5.2')
    kapt 'com.alibaba:arouter-compiler:1.5.2'

    //Room数据库
    def room_version = "2.5.0"
    implementation "androidx.room:room-runtime:$room_version"
    kapt "androidx.room:room-compiler:$room_version"  //kapt 这种依赖的都是一个注解
    implementation "androidx.room:room-rxjava2:$room_version"

//flycotablayout
'com.flyco.tablayout:FlycoTabLayout_Lib:2.0.2@aar'


//腾讯云
    implementation'com.tencent.liteav:LiteAVSDK_Professional:latest.release'

    //滚轮依赖
    implementation 'com.github.gzu-liyujiang.AndroidPicker:WheelPicker:4.0.1'
    implementation 'com.github.gzu-liyujiang.AndroidPicker:AddressPicker:4.0.1'

//ARouter依赖
annotationProcessor 'com.alibaba:arouter-compiler:1.5.2' 

//选择器
    implementation 'com.github.gzu-liyujiang.AndroidPicker:WheelPicker:4.0.1'
    implementation 'com.github.gzu-liyujiang.AndroidPicker:AddressPicker:4.0.1'

===========================================

//AROUTER

javaCompileOptions {
            annotationProcessorOptions {
                arguments = [AROUTER_MODULE_NAME: project.getName()]
            }
        }
-----------------------------------------------------------

ARouter.openDebug();
        ARouter.openLog();
        ARouter.init(this);//注意!!!init放在后面

==============================
//环信
//appkey
1149231208160391#app

### Maven 使用教程与核心概念 #### 什么是 Maven? Maven 是 Apache 基金会的一个开源项目,它是一个基于 Java 开发的自动化构建工具,主要用于管理和构建软件项目。它的名字来源于英文单词 “Maven”,意思是专家或内行[^1]。 #### Maven 的核心功能 Maven 不仅能够帮助开发者完成项目的构建过程,还能有效地管理项目的依赖关系。通过定义标准化的工作流程和目录结构,Maven 提供了一种高效的方式来处理复杂的多模块项目[^2]。 #### Maven 的核心概念 以下是 Maven 中的一些重要核心概念: 1. **POM (Project Object Model)** POM 文件是 Maven 构建的核心配置文件,通常命名为 `pom.xml`。它是 Maven 对待项目的方式,描述了项目的元数据以及如何构建该项目。POM 还负责管理项目的依赖项和其他构建参数[^5]。 2. **生命周期 (Lifecycle)** Maven 定义了一系列标准的构建生命周期阶段,这些阶段按顺序执行以完成特定的任务。例如: - `clean`: 清理旧版本的目标文件夹。 - `compile`: 编译源代码。 - `test`: 执行单元测试。 - `package`: 将编译后的代码打包成 JAR、WAR 等形式。 - `install`: 将包安装到本地仓库以便其他项目使用。 - `deploy`: 部署到远程仓库供团队共享[^4]。 3. **插件 (Plugins)** Maven 的灵活性主要来自于其丰富的插件体系。几乎所有的构建任务都是由插件实现的。例如,在清理阶段使用的 `maven-clean-plugin` 和在编译阶段使用的 `maven-compiler-plugin`。 4. **依赖管理 (Dependency Management)** Maven 能够自动下载并解析项目所需的库文件(即依赖)。这大大简化了手动管理第三方库的过程。依赖声明位于 `pom.xml` 文件中的 `<dependencies>` 部分。 #### Maven 的优势 Maven 提供了许多内置的功能来提高开发效率,比如高度可重复利用的标准构建规则、强大的依赖管理系统以及统一的项目结构设计。因此,只需编写少量的构建脚本即可快速启动新项目[^3]。 --- ### 示例:创建一个简单的 Maven 项目 以下是如何使用 Maven 创建一个基本的 Java 控制台应用程序的示例。 1. 初始化一个新的 Maven 项目: ```bash mvn archetype:generate \ -DgroupId=com.example \ -DartifactId=my-app \ -DarchetypeArtifactId=maven-archetype-quickstart \ -DinteractiveMode=false ``` 2. 查看生成的 `pom.xml` 文件内容: ```xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>my-app</artifactId> <version>1.0-SNAPSHOT</version> <!-- 添加必要的依赖 --> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency> </dependencies> </project> ``` 3. 构建项目: ```bash mvn clean package ``` 此命令将清除之前的构建产物 (`target` 目录),重新编译代码,并将其打包为 JAR 文件存储在目标路径下。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值