【49】AndroidStudio构建其他人开发的Android项目

(1)做Android软件开发,通常会看一些其他人开发的项目源码,当将这些项目的源码通过git clone到本地之后,用AndroidStudio进行打开时,通常会遇到一些环境配置的问题。本文即用来记录在构建他人开发项目源代码这一过程中遇到的一些常见的问题,以及解决这些问题的方案。

AndroidStudio构建其他人开发的Android项目

文章目录

1.Gradle插件不一致的问题

1.1插件配置的位置

(1)一般会配置在整个项目的build.gradle文件当中

(2)不一致指的是与我们自己平时开发项目时所使用的gradle插件版本不一样

gradle 复制代码
    dependencies {
        //(1)是用来指定项目构建时使用的Gradle插件版本
        classpath 'com.android.tools.build:gradle:7.4.2'
    }

1.1解决方案

(1)自己的计算机上没有这个插件,可以交给AndroidStudio帮助我们下载,而AndroidStudio通常是从Maven中央仓库、jcenter()仓库、google()仓库或代理私服仓库中去寻找Gradle插件,因此我们可以在build.gradle文件中配置插件下载的仓库位置。

(2)通常我们需要在build.gradle的allprojects节点中去配置,因为这个节点是配置项目中所有模块(如第三方插件或库)使用的存储库和依赖项的地方。

gradle 复制代码
    repositories {
        //(1)阿里云私服仓库
        maven { url 'https://maven.aliyun.com/repository/public/' }
        maven { url 'https://maven.aliyun.com/repository/public/jcenter' }
        maven { url 'https://maven.aliyun.com/repository/google/google' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
        //(2)Maven中央仓库
        mavenCentral()
        //(3)google仓库
        google()
        //(4)jcenter仓库
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }

(3)关于项目代码中依赖的第三方库,可以在build.gradle的buildscript下的repositories节点中去配置。该节点通常用来配置项目的依赖库下载仓库的位置。

gradle 复制代码
    repositories {
        maven { url 'https://maven.aliyun.com/repository/public/' }
        maven { url 'https://maven.aliyun.com/repository/public/jcenter' }
        maven { url 'https://maven.aliyun.com/repository/google/google' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
        mavenCentral()
        jcenter()
        google()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }

2.源代码放在了有中文的文件夹下

(1)会遇到的问题是编译不成功,说项目源代码路径中含有中文字符

2.1解决办法

(1)在项目的gradle.properties文件中加上如下配置

android.overridePathCheck=true

相关推荐
ReyZhang5 小时前
flutter 安卓端打包
android·flutter
写代码的Eleven12 小时前
Rk3568 Andorid 11 新增adb检测,只有使用客户私钥的设备才能链接adb
android·adb
_可乐无糖12 小时前
深度解析 pytest 参数化与 --count 执行顺序的奥秘
android·python·ui·ios·appium·自动化·pytest
VX_CXsjNo112 小时前
免费送源码:Java+ssm+Android 基于Android系统的外卖APP的设计与实现 计算机毕业设计原创定制
android·java·css·spring boot·mysql·小程序·idea
超厂长12 小时前
从github上,下载的android项目,从0-1进行编译运行-踩坑精力,如何进行部署
android·github
ta叫我小白14 小时前
Android Room 报错:too many SQL variables (code 1 SQLITE_ERROR) 原因及解决方法
android·sql·sqlite·room
小趴菜822714 小时前
新版AndroidStudio通过系统快捷创建带BottomNavigationView的项目踩坑记录
android
Snow_Dragon_L14 小时前
【MySQL】索引(一)
android·数据库·后端·sql·mysql·ubuntu·database
阿岳31617 小时前
数据库增量备份和全量备份
android·数据库·adb
Yang-Never18 小时前
Shader -> BitmapShader贴图着色器详解
android·开发语言·kotlin·android studio·贴图·着色器