书小宅之android——项目移植

导入项目

Close Project关闭打开的项目,进入如下界面:
在这里插入图片描述
选择Import project(Gradle,Eclipse ADT,etc)【非Open an existing Android Studio project】,打开指定项目。

检查/修改配置

1、检查File->Project Structure->SDK Location下JDK location版本和在系统控制台(cmd)中输入javac -version查询得到的jdk的版本是否一致,如若不一致则进行修改。

2、File->settings->Build,Execution,Deployment->Build Tools->Gradle->Service directory path指定到gradle的具体版本的详细目录。

3、Android studio运行的时候弹出edit configuration,然后Logcat里面提示SDK没有配置好:File–>project structure

4、项目目录下gradle->build.gradle

buildscript {
    repositories {
        ...
        google()//如果不添加将会导致某些官方依赖下载不了
    }
}

5、运行时出现Edit Configuration,填好name和当前项目对应的module后仍然有红叉,这是因为在app的build.gradle文件中没有配置签名文件信息。
应该为release编译配置签名信息,debug不需要配置是因为debug有默认签名信息,build.gradle加上这一段:

    signingConfigs {
        release {
            keyAlias 'test'
            keyPassword 'test'
            storeFile file('D:/keystores/test.jks')
            storePassword 'test'
        }
    }

    buildTypes {
        debug {
            applicationIdSuffix ".debug"
            minifyEnabled false
            zipAlignEnabled false
            shrinkResources false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        release {
            minifyEnabled true
            zipAlignEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
    }

常见错误

Error: AndroidManifest.xml doesn't exist or has incorrect root tag
Reason: 1、拷贝或移动工程文件夹导致Android Studio加载的路径不对。
        2、对跨语言、跨Module项目进行修改后,需要同步。
Solve:  1、file->settings->Menus and Toolbars->搜索Gradle->Syn project with gradle files
        (重新按照Gradle文件同步引用库,根据清单文件重新配置一次。)
        2、file->settings->Menus and Toolbars->搜索invalidate Caches/Restart
        3、File->Sync with File System:同步系统文件
        4、Androidmanifest.xml文件有问题。

android studio在gradle sync时下载wrapper的某个版本(即gradle-wrapper.properties里指定的distributionUrl),如若没有对应的目录则创建它,并生成gradle-5.4.1-all.zip.lck的空文件,并下载 gradle-5.4.1-all.zip.part,当下载完之后,会把.part文件更名为gralde-5.4.1-all.zip并解压成gradle-5.4.1文件夹,删除.part文件,生成gradle-5.4.1-all.zip.ok,告诉android studio工作完成,如若网络不通则会一直sync。

如若想要跳过android studio下载的过程,则可根据上述规则手动下载。

AndroidStudio gradle sync同步系统文件更新Gradle失败时,手动下载的方法:
在Project目录结构中,依次展开gradle -> wrapper,然后双击“gradle-wrapper.properties”文件,找到distributionUrl=https://services.gradle.org/distributions/gradle-5.4.1-all.zip。
其中https://services.gradle.org/distributions/是下载链接地址,gradle-5.4.1-all.zip是需要下载的版本。
下载对应的版本,解压替换C盘用户目录.gradle\wrapper\dists\gradle-5.4.1-all\3221gyojl5jsh0helicew7rwx下的.zip文件,重启android studio。
顺序:下载grable插件压缩包后,先修改gradle-wrapper.properties文件,再次sync,之后就会在dists文件夹下生成指定文件夹,然后将压缩包解压到该文件夹下,重新执行gradle sync。

Error: Logcat里面提示SDK没有配置好
Solve: File-->project structure->build tools version
Warning: Configuration 'androidTestCompile' is obsolete and has been replaced with 'androidTestImplementation'Reason: 新版AndroidStudio3.1.2以上编译的时候会检查 项目依赖第三方库是否是否使用了旧版的 依赖方法“compile” ,如果项目中存在大量“complie”依赖的第三方库,会导致编译失败。
Solve: 将complie改成 “implementation”。
Error: Plugin with id 'com.android.application' not found。
Reason: 环境太新了,而工程太老。
Solve:
buildscript {
    repositories {
        mavenCentral() // or jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'   //last version Jan 2016
    }
}
Error:Could not find method implementation() for arguments [directory 'libs'] on root project 'myphototest'.
Solve:build.gradle里面的implementation改成compile。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值