【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

相关推荐
素师良码6 小时前
第5篇:显示驱动必备调试工具浅析
android
维克兜率天6 小时前
【维克】配对交易的季节性:哪些品种适合长拿?
android·开发语言·笔记·python·算法·kotlin·量化
墨天梦7 小时前
B06_XML控件布局与ViewBinding
android·kotlin
晚风叙码7 小时前
MySQL 表的操作:从建表到删表,一篇讲清楚
android·mysql·oracle
事圆则缓9 小时前
Android 性能优化常见工具与使用场景:从症状到证据的排查指南
android·性能优化
avi91119 小时前
Unity 非后台,非自动构建,但统计报表 BuildReport ,构建自动化系统C#
android·webserver·ios打包·admin·c#后台·unity打包系统·unity自动构建
新鲜势力呀9 小时前
PHP 定时任务系统实战:从 Cron 混乱执行到任务调度中心 + Redis队列 + 失败重试
android·java·redis
YF021110 小时前
Android 16系统 如何修改 eth0 IP ?
android
其实防守也摸鱼10 小时前
渗透测试学习计划(全栈综合 · 零基础进阶)
android·数据库·学习·安全·oracle·自动化·学习方法
释厄62310 小时前
BSD 简单真理循环论——简单真理 × 复杂循环=大一统
android·开发语言·kotlin