01 AS 首次编译执行项目过程中遇到的几个常见问题
问题01 as打开时出现The environment variable JAVA_HOME (with The value of C:\Java\jdk1.8.0_101\bin) does not point to a valid JVM installtion
提示环境变量JAVA_HOME的值为C:\Java\jdk1.8.0_101\bin,与虚拟机安装路径不一致
因为JAVA_HOME=C:\Java\jdk1.8.0_101\bin 所以jdk安装在C:\Java\jdk1.8.0_101下,把JAVA_HOME的值改为C:\Java\jdk1.8.0_101(JDK安装目录)即可
参考解决办法:
问题02 守护进程问题: Error:Unable to start the daemon process.解决
导入一个项目出现了以下错误:
Error:Unable to start the daemonprocess.
This problem might be caused by incorrect configuration of the daemon.
For example, an unrecognized jvm option is used.
解决步骤:
1、修改项目中gradle.properties文件,只要添加以下一行代码:
org.gradle.jvmargs=-Xmx512m
2、重启Android Studio
参考解决办法:
https://blog.51cto.com/shenshizhong/1842691
https://blog.csdn.net/jianghehe1/article/details/80507820
问题03:Failed to find Build Tools revision 27.0.3
错误信息:
11:44 Gradle sync failed: Failed to find Build Tools revision 27.0.3 Consult IDE log for more details (Help | Show Log) (1 m 17 s 505 ms)

在安装Android studio 导入项目的时候,发现出现Failed to find Build Tools revision 27.0.3,导致编译并不能成功。主要问题是Android Studio编译的apt工具与目标项目导入的工具不一致导致的,我的一下载下来是30.0.2(E:\Android\Sdk\build-tools\30.0.2)的编译工具,而目标Android工程使用的是27.0.3的工具,所以我们需要去下载一个这样的编译工具。
下载build tools 27.0.3
下载地址:
1、http://mirrors.neusoft.edu.cn/android/repository/
2、链接:https://pan.baidu.com/s/1gZoXpiGaFN2G_mSWH950zg 密码:aofj
选择版本:

下载后的"build-tools_r27.0.3-windows"结构如下:

解压并放到相对应路径的文件夹下:

注:
1、这里的30.0.2文件夹可以不用删除
2、一开始这个对应的路径下是没有"27.0.3"这个文件夹的,我们可以自己先创建一个27.0.3文件夹,之后把下载的"build-tools_r27.0.3-windows"中的内容拷贝到27.0.3文件夹下,拷贝复制后的内容:

这时候我们再次rebuild后,发现工程里面的编译小三角行可以用了


参考解决办法:
https://blog.csdn.net/xudailong_blog/article/details/84756945
https://blog.csdn.net/qq_31490071/article/details/82388653
问题04 连接手机编译执行时问题:Could not find any version that matches com.android.support:appcompat-v7:30.+.
Could not find any version that matches com.android.support:appcompat-v7:30.+.
Versions that do not match:
26.0.0-alpha1
25.3.1
25.3.0
25.2.0
25.1.1
+ 50 more
Searched in the following locations:
file:/E:/Android/Sdk/extras/m2repository/com/android/support/appcompat-v7/maven-metadata.xml
file:/E:/Android/Sdk/extras/m2repository/com/android/support/appcompat-v7/
file:/E:/Android/Sdk/extras/google/m2repository/com/android/support/appcompat-v7/maven-metadata.xml
file:/E:/Android/Sdk/extras/google/m2repository/com/android/support/appcompat-v7/
file:/E:/Android/Sdk/extras/android/m2repository/com/android/support/appcompat-v7/maven-metadata.xml
https://dl.google.com/dl/android/maven2/com/android/support/appcompat-v7/maven-metadata.xml
https://jcenter.bintray.com/com/android/support/appcompat-v7/maven-metadata.xml
https://jcenter.bintray.com/com/android/support/appcompat-v7/
Required by:
project :app
Please install the Android Support Repository from the Android SDK Manager.
Open Android SDK Manager
反正大概意思就是个版本问题,虽然不太清楚到底是哪个版本啥啥啥的,干脆直接在Module的build.gradle里这么改(改掉第三行的正则):
将如下的配置:
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:29.+' implementation 'com.android.support.constraint:constraint-layout:1.1.3' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' }
更改为:
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:+' implementation 'com.android.support.constraint:constraint-layout:1.1.3' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' }
参考解决办法:
https://blog.csdn.net/afireswallow/article/details/91129831
https://blog.csdn.net/m0_43421409/article/details/96491833
第一次编译执行app
连续遇到了上面4个坑,依次解决后,开始连接手机,编译执行app
问题05 AS如何连接手机真机编译执行app(以华为手机为例)
依次打开:
设置

关于手机:

连续多次单击版本号

直到出现"您处于开发者模式"的提示之后停止单击

再次连续单击,会提示"您已处于开发者模式,无需进行此操作"

再次进入设置,"系统和更新"

"开发人员选项":

看到"开发人员选项"已经开启

下拉"开发人员选项",开启"USB调试"


成功开启"USB调试"后,Android Studio就可以识别手机了。
启动运行app程序:

华为手机已经识别到并连接:

单击ok,开始启动执行程序

同步配置成功:

构建配置成功:

手机端开始确认安装程序:


至此,第一个测试app执行安装成功

编译成功执行后,AS中工程目录在Android模式下,文件结构才会清晰的分类为
配置(manifests)、Java源码(Java)、以及资源文件(res)

反之,在没有成功编译执行前,Android模式下的代码结构几乎和project模式下一致

01 AS 首次编译执行项目过程中遇到的几个常见问题的更多相关文章
- 跟我extjs5(03--在项目过程中加载文件)
跟我extjs5(03--在项目过程中加载文件) 上一节中用sencha工具自己主动创建了一个项目.而且能够在浏览器中查看. 如今我们来看看js类载入过程. 例如以下图所看到的: watermark/ ...
- Bug,项目过程中的重要数据
作者|孙敏 为什么要做Bug分析? Bug是项目过程中的一个有价值的虫子,它不只是给开发的,而是开给整个项目组的. 通过Bug我们能获得什么? 积累测试方法,增强QA的测试能力,提升产品质量 发现项目 ...
- 编译recovery及过程中的部分错误解决
你必须使用32位或64位Ubuntu系统,关于如何建立编译环境和同步源码的指导,请自己查找有关指导的文章. 1, 安装所需要的包 2, 建立编译的环境,并同步CWM所需的源码,CyanogenMod源 ...
- SAP HANA项目过程中优化分析以及可行性验证
在项目开发过程中,经常会遇到HANA模型运行效率的问题: 以我们项目为例,HANA平台要求模型运行时间不能超过10秒,但是在大数量和计算逻辑复杂的情况下(例如:ERP中的BKPF和BSEG量表的年数据 ...
- 将Eclipse项目转换成AndroidStudio项目过程中遇到的问题以及解决方法
将Eclipse项目转换成AndroidStudio项目也不是第一次了,昨天转的时候遇到几个问题: 首先将项目导入androidstudio,导完后报错: 问题一: Error:java.util.c ...
- djang小项目过程中的小问题 01(django中的configrarion配置、django自带命名规范)
不知道为什么,明明照着做,但是我就会遇到一些错误问题,但是我觉着自己生下来就是解决问题的. ##1. 第一个是在django运行时,没有配置configration, 这个时候我添加一个django ...
- webpack 创建vue项目过程中遇到的问题和解决方法
目录 1 webpack简介 2 webpack实现多个输入输出多个html 3 webpack 中的module下rules 下的use和loader选项 4 webpack 文件更新,如何使页面 ...
- 学校项目过程中知识点 Java 2015/9/15 晚
##命令行运行Java程序1.文件Java的源代码存放在扩展名为“.java”的文件中:Java源文件编译后,得到“.class”的文件2.方法命令行下编译java源代码的方法:javac 文件名. ...
- 使用protobuf编译onnx.proto过程中的一些问题总结
使用git clone下载protobuf的源代码,然后git checkout到branch2.7.0: 编译protobuf,先在代码顶层目录执行./configure,然后执行make,成功后执 ...
随机推荐
- 【Go语言入门系列】(八)Go语言是不是面向对象语言?
[Go语言入门系列]前面的文章: [Go语言入门系列](五)指针和结构体的使用 [Go语言入门系列](六)再探函数 [Go语言入门系列](七)如何使用Go的方法? 1. Go是面向对象的语言吗? 在[ ...
- Unity使用可空类型(Nullable Types)
译林军 范春彦|2014-04-09 09:46|5407次浏览|Unity(375)0 你怎么确定一个Vector3,int,或float变量是否被分配了一个值?一个方便的方式就是使用可空类型! 有 ...
- ShaderLab 枚举常量
public enum ZTest { Always = 0, Less = 2, Equal = 3, LEqual ...
- 开发者的福音,LR.NET模块化代码生成器
代码生成器,是快速开发平台的核心功能之一,是一种用来帮助缺乏经验或者时间的开发者快速生成规范代码的工具,可以在极大程度上提升开发者的工作效率, 能有效避免重复工作.但稍有经验的开发者都明白,代码生成器 ...
- 12_进程,线程,协程,IO多路复用的区别
1.进程 1.进程可以使用计算机多核 2.进程是资源分配的单位 3.进程的创建要比线程消耗更多的资源效率很低 4.进程空间独立,数据安全性跟好操作有专门的进程间通信方式 5.一个进程可以包含多个线程, ...
- Nginx升级加固SSL/TLS协议信息泄露漏洞(CVE-2016-2183)
Nginx升级加固SSL/TLS协议信息泄露漏洞(CVE-2016-2183) 漏洞说明 // 基于Nginx的https网站被扫描出SSL/TLS协议信息泄露漏洞(CVE-2016-2183),该漏 ...
- pytest测试框架 -- setup和teardown等
一.用例运行级别 1.函数级别(setup.teardown 或 setup_function.teardown_function): 仅对处于同作用域的测试函数有效(该函数定义不在类中,则对非类中测 ...
- oracle之三手工不完全恢复
手工不完全恢复 4.1 不完全恢复的特点: 1)让整个database 回到过去某个时间点,不能避免数据丢失. 2)想跳过坏日志而继续恢复所有其他工作是不可能的,前滚没有这个功能(考点). 3)必须以 ...
- python文件的读写权限以及相关应用read、write和文件指针
f=open('ceshi.txt','a',encoding='utf-8')r=open('ceshi.txt','r',encoding='utf-8')上面的2种写法可以用with来写:wit ...
- ftp被动模式下 ftp_put 上传文件
参考地址:https://blog.csdn.net/liuhelong12/article/details/50218311