zoukankan      html  css  js  c++  java
  • github中Android程序导入AS

    github中Android程序导入AS

      这里首先附上两个网址:

        一篇不错的关于Gradle的简介

        大量Android开源项目

    一个实例:

      我从github上下载了一个开源程序,目录如下:

    	app(文件夹)
    	gradle(文件夹)
    	photoedit(文件夹)
    	.gitignore
    	build.gradle
    	gradle.properties
    	LICENSE
    	README
    	setting.gradle
    

      其中gradle文件夹起初并没有,是我后期添加上去的。

      第一步,我们首先对文件夹中每个module修改其build.gradle中的compilSdkVersion与buildToolsVersion。如这里两个文件夹:app与phototedit。

      app文件夹中的build.gradle

    apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 24           						//(1)
        buildToolsVersion "24.0.1"	   						//(2)
    
        defaultConfig {
            applicationId "silen.com.apppicturetrans"
            minSdkVersion 14
            targetSdkVersion 24
            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:24.1.0'   
        compile 'com.android.support:design:24.1.0'
    }
    

      
      phototedit文件夹中的build.gradle

    apply plugin: 'com.android.library'
    
    android {
        compileSdkVersion 24								//(1)
        buildToolsVersion "24.0.1"							//(2)
    
        defaultConfig {
            minSdkVersion 15
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
            ndk{
                moduleName "NativeFilter"
                abiFilters "armeabi", "armeabi-v7a", "x86"
            }
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
        sourceSets.main{
            jni.srcDirs = []
            jniLibs.srcDir "src/main/libs"
        }
    }
    
    dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        testCompile 'junit:junit:4.12'
        compile 'com.android.support:appcompat-v7:24.1.0'	
    }
    

      一定要将上述两个参数改为电脑中有的版本,否则会报错。比如:Failed to import new Gradle project: failed to find Build Tools revision '23.0.1'

        原因:电脑中Android SDK build tools没有'23.0.1'这一版本,查看方法:打开SDK Manager(界面上就有,或者Tools-Android-SDK Manager),如果没有可以下载或者改为已有的版本。

      对比两个build.gradle文件可以看出,app文件夹(即module)是app,而photoedit文件夹(module)是library:

        apply plugin:'com.android.library'->module is a lib;

        apply plugin:'com.android.application'->module is a app;

      第二步,打开gradle文件夹,检查 gradle-wrapper ,Google 有些时候要求不同的 AS 支持不同的 gradle 版本。比如 AS 1.0 的时候要求必须使用 gradle 1.x 的版本,等到 AS 2.0 的时候,Google 不支持 gradle1.x 的版本,这个时候你必须手动更新下 android gradle plugin 的版本,然后重新同步下,比如可以自动下载或把本地项目中的gradle文件夹中的复制过来,但可能本地版本并不满足项目的版本,报错:

      Error:Minimum supported Gradle version is 2.14.1. Current version is 2.10.

      原因:项目中gradle插件要求gradle版本至少为2.14.1见此处

      解决:把gradle/wrapper/gradle-wrapper.properties中的2.20改为2.14.1

      第三步,导入项目。

  • 相关阅读:
    BZOJ1527 : [POI2005]Pun-point
    2016-2017 ACM-ICPC Southwestern European Regional Programming Contest (SWERC 2016)
    2016-2017 ACM-ICPC Northwestern European Regional Programming Contest (NWERC 2016)
    NAIPC-2016
    BZOJ2498 : Xavier is Learning to Count
    ACM ICPC Vietnam National Second Round
    XVI Open Cup named after E.V. Pankratiev. GP of Ukraine
    XVI Open Cup named after E.V. Pankratiev. GP of Peterhof
    HDU5509 : Pattern String
    BZOJ4583 : 购物
  • 原文地址:https://www.cnblogs.com/silentteen/p/6568422.html
Copyright © 2011-2022 走看看