记录Android Studio编译APP时遇到的问题及解决
文章目录
- 一、R文件
- 二、gradle version和 android plugin version
- 1、Gradle
- 2、Android Plugin for Gradle
- 3、Gradle 和 Android Plugin for Gradle 的关系
一、R文件
代码中R标红;build文件存在,但是找不到r文件夹及其下的R文件。
了解R文件:
当Android APP编译时会自动生成一个R类,public final class R,不能被继承和重写。其中包含了所有res/目录下的ID,如布局文件,资源文件,图片(values下所有文件)的ID等。在写java代码需要这些资源的时候,可以使用R类,通过子类+资源名或者直接使用资源ID来访问资源。
R文件标红绝大可能是XML文件有错误,导致R文件不能自动生成,就找不到R文件。根据显示的错误信息去修改相应的XML。在XML文件的右侧显示有黄色的小横线就表明相应的语句有问题,可以根据提示进行修改。
通常路径:(Project结构下)app>build>generated>source>r>R
但是我的R文件目录为:app>build>generated>not_namespaced_r_class_sources>debug>processDebugResources>r>…>R
我查询了很久没有找到解释。
二、gradle version和 android plugin version
查看gradle version 和 android plugin version 版本:
File>Project Structure>Project
Gradle笔记 https://www.imooc.com/article/30818
参考文章 https://blog.csdn.net/xinzhou201/article/details/80408039
1、Gradle
Gradle是一个基于Apache Ant和Apache Maven概念的开源的项目自动化构建工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目配置,抛弃了基于XML的各种繁琐配置。
简单来说,Gradle 是一种构建工具,它可以帮你管理项目中的差异、依赖、编译、打包、部署 …,你可以定义满足自己需要的构建逻辑,写入到 build.gradle 中供日后复用。
2、Android Plugin for Gradle
Gradle 是一个构建工具,但它需要特定的插件来工作。Android Plugin for Gradle 即是 Gradle 的 Android 插件。
Android Studio 构建系统基于 Gradle,Gradle 的 Android 插件添加了特定于构建 Android 应用程序的几项功能。虽然 Android 插件通常以 Android Studio 的锁定步骤更新,但插件(以及其余的 Gradle 系统)可以独立于 Android Studio 运行,并单独更新。
3、Gradle 和 Android Plugin for Gradle 的关系
Gradle 的每个 Android 插件版本(Android Plugin for Gradle)需要与特定的 Gradle 版本相匹配才能编译成功。为了获得最佳性能,应该使用最新版本的 Gradle 和 Android 插件。
谷歌官方文档描述
后续更新
- 天天记录 - 编译Android 4.1.2源码遇到问题解决
- Android Studio使用中遇到问题解决记录
- 今天进行最后编译了,遇到了不少问题,现已解决,将问题和解决方法都记录下来;
- 记录编译vnc-4_1_3-unixsrc的时候遇到的问题与解决办法
- [28]_编译海思osdrv出现的问题并解决,记录一下,希望对遇到同样问题的朋友有所帮助和启发
- 记录编译GCC 5.2.0时遇到的问题和解决方法,以备日后查询。
- 编译openGL遇到的问题记录和解决20170524-1
- android studio 编译时遇到的各种问题(持续记录)
- 问题解决Android studio遇到 java.lang.OutOfMemoryError: GC app:transformClassesWithDexForDebug解决方法 以及gradle优化
- [工作随笔]记录一个App项目所遇到的问题及解决
- 编译安装PHP 遇到问题解决方法
- qextserialport-1.2win-alpha在Win7下Qt 5.0.2 MinGW编译遇到的问题及解决方法
- chromedriver源码编译过程中遇到的问题记录
- 解决编译时遇到的/usr/bin/ld: cannot find -lpthreads问题
- 解决问题:编译Latex遇到File ended while scanning use of \@writefile
- 解决android使用gson解析json字符串,并使用混淆编译方式打包apk遇到的问题
- 微信H5安卓客户端app支付中遇到的问题处理: 商家参数格式有误,请联系商家解决
- 安装Android Studio 可能遇到的问题及解决办法
- 把工作中遇到的问题和解决方法记录下来!
- 解决Android Studio Gradle 'app'project refresh failed 报错 Could not read cache value问题