Android

Java安卓学习总结(一)

第一天的主要任务是完成了Android开发环境的搭建,并成功运行了HelloWorld实例。

一、开始之前

首先我要提前指出,我没有安装其它的Android模拟器。按照教程配置成功后,在eclipse内部的AVD(Android Virtual Device)上运行Android程序时,报了如下的错误

Errors running builder 'Android Package Builder' on project XXX
sun/misc/BASE64Encoder

上网查询之后发现是JDK的问题。JDK的版本首先不能低于1.8,然后很新的版本如JDK14也不能用。所以建议如果JDK版本过旧或过新的建议再配置一个JDK1.8。

如果你安装了多个JDK,需要对JDK进行重新配置。配置多个JDK/转换JDK的过程如下:

首先来到环境变量,建立三个JAVA_HOME;

qq screenshot 20200512120000

其中JAVA14_HOME和JAVA8_HOME是你多个JDK的路径(我用的是JDK14和JDK1.8)。JAVA_HOME是你需要使用的JDK,变量值为”%JAVA?_HOME%”,两个%之间是之前设置的变量名。

变量Path的变量值配置像以往一样。

如果你想使用其它的JDK时只需要将JAVA_HOME的变量值以上面的方式更改为你所需要的JDK的变量名就可以了。

二、Android SDK下载安装配置

Android开发环境搭建可以分为以下四步:

第一步、安装JDK;

第二步、安装Eclipse;

第三步、下载并安装AndroidSDK;

第四步、为Eclipse安装ADT插件

主要是参考这个

AVD的创建在这里

三、我遇到的问题与解决

按照上边的教程的指示来操作似乎并不能下载到extra文件夹中的Support Library,这个文件又是创建安卓应用所必需的,可以直接去官网下载

qq screenshot 20200512125438

链接教程中推荐我们都尽量下载最新的Android SDK Build-tools,实际上最新的可能会导致和SDK不兼容而导致AVD黑屏,报错如下:

Emulator: ERROR: resizing partition e2fsck failed with exit code 1

解决方法是在Android SDK Manager中下载较低版本的BUild-tools,并且在项目的project.properties文件中添加sdk.buildtools=你下载的版本号。

qq screenshot 20200512172635
qq screenshot 20200512172656

出现以下代码的问题时,大概率是SDK的path路径没有配置对。注意英文分号”;”的添加。

emulator: erroremulator:ERROR:This AVD's configuration is missing a kernel file
emulator: emulator: ERROR: ANDROID_SDK_ROOT is undefined

出现以下问题是可能是下载的API的System Image中的”kernel-qemu”文件有问题。例如原本×86的”kernel-qemu-64″实际上应该是”kernel-qemu”。只需要找到对应API的System Image文件夹,将后缀删除就可以了。

emulator: erroremulator:ERROR:This AVD's configuration is missing a kernel file
Please ensure the file "kernel-qemu" is in the same location as your system image.
emulator: emulator: ERROR: ANDROID_SDK_ROOT is undefined
qq screenshot 20200512173109

出现以下问题时,是因为hardware acceleration没有安装,这个东西是要我们手动安装的。安装程序应该是已经下载好了的,只需要去android-sdk-windows\extras\intel 目录,手动点击 intelhaxm-android.exe
安装即可。

emulator: ERROR: x86 emulation currently requires hardware acceleration!
qq screenshot 20200512173835

四、HelloWorld实例展示

wechat screenshot 2

五、疑问

为什么eclipse内部运行AVD速度如此缓慢?是否是因为我使用的API版本过低?

目前已经成功创建了Android开发环境。以后就可以正式开展学习了。

发表评论