专栏首页Android干货园Android Studio导入github项目详解

Android Studio导入github项目详解

版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/48789705

最近在群里发现总有人问一些关于Android Studio的问题,Android Studio是Google新出的一款IDE工具,它是基于Intellij IDEA开发的,AS开发Android很方便,那么今天就说一下怎么将Github的项目导入Android Studio中而不报错,完美运行。Github上的项目大部分是基于Gradle编译的,而gradle在线下载是下不了的,除非你访问外国网站,买了自己的V**,就不需要以下的操作了,可以直接忽略过,直接导入github项目,然后Fix Project坐等就ok。如果你没有V**,没有访问外国网站,那么下面请看好我是怎么导入一个github项目的。

首先我在github上下载一个项目,就以RippleEffect

为例吧,首先我先下载这个压缩包,或者你也可以直接在AS中checkout该项目。

然后我们打开AS,新建一个默认的Android module

看一下我们的两个项目的结构目录

我们可以看到github上下载的项目中是有library的,我们自己新建的是没有,这个library是和eclipse中的library一样的,依赖库。

然后我们要改几个文件,重点来了:

第一个文件:

根目录下的build.gradle,看看我们新建的项目中

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

build:gradle:1.3.0而我们下载的项目的版本是1.2.3

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {

    if (hasProperty("VERSION_NAME")) {
        version = VERSION_NAME
        group = GROUP
    }
    repositories {
        jcenter()
    }
}

把下载的github的项目中的build.gradle改成我们的版本

第二个文件:

gradle文件夹下的gradle-wrapper.properties文件

下载的项目是

#Mon Dec 01 21:42:38 CET 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip

项目的gradle版本是2.2.1,而我们的本地gradle版本是2.4,改成我们本地的

第三个文件:app目录下的build.gradle文件

本地的sdk编译版本是23,buildtools版本是23.0.1

最小sdk版本是15,app版本是1---------

第三方依赖库是v7-23.0.1,junit-4.12

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "com.example.hankkin.myapplication"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.0.1'
}

这个第三方依赖库可以倒进项目之后再更改

然后我们把library中build.gradle中的最后一行

    apply from: 'https://raw.github.com/chrisbanes/gradle-mvn-push/master/gradle-mvn-push.gradle'

注释掉,compilesdkversion,buildtoolsversion也改成我们本地用的,当然在AS中改也是可以的

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        minSdkVersion 9
        targetSdkVersion 22
        versionCode 9
        versionName "1.3"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    lintOptions {
        abortOnError false
    }
}

好了下面我们开始导项目

打开AS,选择import project,找导下载的RippleEffect,坐等gradle编译

编译成功我们打开项目看一下

打开project structure修改版本和依赖包

运行一下:

完美运行,是不是很简单?因为AS刚出来没多久,现在大部分人还都再用eclipse,而google到年底就不再支持eclipse的adt了,也有好多小伙伴正在转AS,但是AS上的gradle编译有很多错误,但是没关系,一个一个问题解决就ok了,其实也没多难,要是大家还遇到别的错误的时候可以给我留言,我每天都会看的,会主动帮助大家解决问题的。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Android 轻松实现百度地图定位

    版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/49...

    Hankkin
  • Android Studio 运行项目遇到的错误

    版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/47...

    Hankkin
  • popwindow 被魅族虚拟键挡住

    版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/45...

    Hankkin
  • android Gradle的几个基本概念

    什么是Gradle? Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Gr...

    xiangzhihong
  • Android Studio 2.3 升级 gradle 报错

    今天升级 2.2 到 2.3 后打开一个项目提示升级 gradle,就同意了,结果报了上面的错误。

    他叫自己MR.张
  • gradle -version Permission denied - in mac terminal

    jingbindeMac-mini:~ jingbin$ gradle -version -bash: /Applications/Android Studio...

    Jingbin
  • 用aliyun的Maven仓库下载Android Studio内依赖包

    从GitHub导入新项目时,总是在gradle运行中卡壳,各种依赖包无法从jcenter或者Maven仓库下载下来,公司网也差……一上午就这么废了。 如果你也...

    爱因斯坦福
  • gradle构建工具的使用前言:一、gradle简介:二、gradle的安装:三、eclipse中配置gradle:四、使用gradle构建项目:总结:

    gradle是构建工具,类似于ant和maven,也许目前maven还是主流,但是gradle却是综合了ant和maven的优点,发展速度很快,所以很有必要了解...

    贪挽懒月
  • Android gradle 命令行打包

    Jingbin
  • Android gradle 命令行打包

    Jingbin

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动