基于Android Studio和Gradle 的小米便签配置和安装

基于Android Studio和Gradle 的小米便签配置和安装

 

  • 安装配置JAVA

小米便签的配置编译需要在JDK8上运行,而Sonarqube的运行需要在JDK12。

由于Sonarqube需要运行bat,会使用到默认的JAVA目录,所以只需要在配置Android Studio时候JDK目录改为JDK8的目录即可。

 

  • 安装配置Android Studio

参考 https://blog.csdn.net/siwuxie095/article/details/53431818

注意按照指引把SDK和gradle也安装好。由于前期大量工作中缺失各种文件,于是我把所有的插件都安装了,以避免错误。

 

gradle是第一个构建集成工具,与ant、maven、ivy有良好的相容相关性。

gradle适用于任何结构的工程,可以在同一个开发平台平行构建原工程和gradle工程。通常要求写相关测试,以保证开发的插件的相似性,这种迁移可以减少破坏性,尽可能的可靠。这也是重构的最佳实践。

 

类似的错误都是因为该引用的包没有下载,该安装的插件工具没有安装。

【AndroidStudio 报错:Could not find com.google:***】

【AndroidStudio 报错:Could not find com.android.tools.build:***】

  • 把note源代码import到Android Studio

打开界面后选择Import project,只有这样,才能让Gradle帮助自动解析重构工程。把该对应上的目录对应上。

   

然后通过填写Project Structure,自动生成相关配置文件。

 

 

问题一:

 

解决方案:

打开build.gradle, 更改本机对应的版本 注意是安卓的gradle版本不是本机的gradle版本不能通过cmd命令查看。
查看Gradle安装路径:

以上三个版本都是可以使用的。

 

问题二:

ERROR: Connection timed out: connect

加上两行google(),可以加速。

两处repositories的闭包中都声明了jcenter()这行配置,jcenter是一个代码托管仓库,配置之后我们能够轻松引用任何jcenter上的开源项目。classpath 声明了一个Gradle插件,要想使用它构建 Android 项目需要声明这个插件,最后面的部分是插件版本号。

 

第一行应用了一个插件,一般有两种值可选:com.android.application表示是一个应用程序模块,com.android.library表示是一个库模块。应用程序模块和库模块的最大区别在于,一个是可以直接运行,一个只能作为代码库依附于别的应用程序模块来运行。

小米便签是一个独立的软件,所以在build.gradle文件第一行会有

apply plugin: 'com.android.application'

 

这也会自动生成。

一开始我也会遇到这个问题,删掉或者注释掉就可以了,后来我发现去掉注释也可以运行。

 

 

 

 

 

最后Sync结果:

运行:

关于手机连接Android Studio,需要开发者模式,然后USB调试,由于现在的手机安全系数比较高,所以需要适当的放开权限才能连接。

下图是真机和虚拟机的运行界面。推荐使用真机,流畅度比较舒适。

下面是我的Gradle 相关配置文件:


 
 

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        maven {url "https://plugins.gradle.org/m2/"}
        google()
        jcenter()
    }
    dependencies {
        classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.2"
        classpath 'com.android.tools.build:gradle:3.4.1'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

 

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "29.0.2"

    defaultConfig {
        applicationId "net.micode.notes"
        minSdkVersion 14
        targetSdkVersion 14
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    compileOptions {
        targetCompatibility = '1.8'
        sourceCompatibility = '1.8'
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'

    }

}

dependencies {
    implementation fileTree(dir: 'D:\\httpcomponents-client-4.5.5\\lib', include: ['*.aar', '*.jar'], exclude: [])
}

 

感想:

挺麻烦的,因为涉及很多的组件,插件,各种包。不过通过大家的集思广益最终还是把程序给编译出来。

 

 

 

  • 6
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值