zoukankan      html  css  js  c++  java
  • 2018-2019-2 20175213实验四 《Android开发基础》实验报告

    一、实验报告封面

    课程:Java程序设计 班级:1752班 姓名:吕正宏 学号:20175213

    指导教师:娄嘉鹏 实验日期:2019年5月14日

    实验时间:13:45 - 21:00 实验序号:实验四

    实验名称:Android开发基础

    实验内容:

    1、Android Studio
    2、相关工具

    实验要求:
    1、完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。

    2、严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。

    3.参考Android开发简易教程

    4.完成云班课中的检查点,也可以先完成实验报告,直接提交。注意不能只有截图,要有知识点,原理,遇到的问题和解决过程等说明。实验报告中一个检查点要有多张截图。

    5.发表实验报告博客,标题“学期(如2018-2019-2) 学号(如20175300) 实验四《Android开发基础》实验报告”

    二、实验内容与步骤

    (一)Android Studio的下载安装

    1.Android Studio的介绍:

    Android 开发因为涉及到代码编辑、UI 布局、打包等工序,有一款好用的IDE非常重要。Google 最早提供了基于 Eclipse 的 ADT 作为开发工具,后来在2013年 Google I/O 大会发布基于 IntelliJ IDEA 开发工具Android Studio。宣布不再持续支持 ADT。

    目前, Android Studio已经逐渐取代Eclipse成为主流的Android开发环境。对于Android Studio与Eclipse之间的比较,你可以阅读知乎上的《Android Studio 比 Eclipse 好用在哪里?》。

    由于Google无法进入中国,Android开发者下载开发工具都十分不方便,以前可以在Android Studio中文社区下载Android Studio,现在好了,2016年12月,Google 开通了Google Developers 中国网站,下载Android Studio就方便多了。

    2.到指定网站上下载Studio,下载完成后,点击安装并点击安装虚拟机

    3.随后会出现缺少SDK的窗口,第一次运行可能会要求配置Android SDK(安装过程中要知道自己的SDK安装到什么地方了)

    4.然后在配置SDK的过程中,我被反复提醒安装SDK却无法勾选安装包,随后我就循环卸载安装包重新安装这个步骤,终于在后来的尝试中进入了配置SDK的窗口。配置SDK这一过程需要的时间可能需要点时间。

    5.此时你可以看到Android Studio的欢迎页已经出来了,就像下面这样:

    PS: 然后是这些选项的用途和意思:

    左侧的Recent Projects将会显示你在这里编辑做的最近项目。右侧的Quick Start则是快速开始选项。

    红色方框选中的Start a new Android Studio project选项通常是我们课程里最常使用的,用于创建一个新的Android项目。

    在此介绍一下其他的选项:

    • 1.Open an existing Android Studio Project:打开已有的Android Studio项目。在经历一段时间的学习后,如果你想继续编辑之前的项目,或者打开一个从网上下载的例子,你可以点击此选项。

    • 2.Check out project from Version Control:从版本控制库中获取项目。对于团队开发来说,版本控制是必不可少的工具。此选项允许你从GitHubGoogle Cloud以及TortoiseSVN等处同步项目。事实上,Android Studio对于这些版本控制工具的支持也是很好的,你可以在设置中进行设定。

    • 3.Import project(Eclipse ADT, Gradle, etc.):导入其他开发环境中的项目。通过该选项你可以将在Eclipse等处生成的项目迁移到Android Studio的开发环境中。

    • 4.Import an Android code sample:导入Android代码样例。该功能将从Google及其合作伙伴那里读取示例的列表,你可以下载并查看一些优秀的项目并继续编辑它们。

    (二)新建项目

    1.进入界面后,点击第一行指令,然后项目模板选Empty Activity

    2.项目名填Hello World,Package name直接保持自动生成的名字就好,Language选择JavaMinimum API level保持原样。然后进入主界面。

    (三)配置和启动模拟器

    1.启动虚拟机,在Android Studio的主界面上方的工具栏中,你可以看到一个名为AVD Manager的按钮,点击它你就能打开Android虚拟设备管理器(AVD: Android Virtual Device)。
    此时并没有任何的虚拟设备,我们需要点击中央的Create a virtual device按钮来创建一台模拟器。

    2.创建模拟器的第一步是选择硬件。你可以通过选择现有的设备模板来定义一台模拟器。左侧的Category分类中可以选择是创建哪种类型的设备,通常我们是开发手机上的应用,所以选择Phone就可以了。右侧则显示了所有Google官方的设备模板,比如历年来发布的Nexus系列以及Google Phone系列。

    3.然后进入系统镜像的选择。先挑选型号,下一步挑选系统版本。(我挑选的是Nougat版本)

    4.下一步可以设置模拟器的名称。建议在名称中注明使用了哪一个版本的系统镜像

    (四)项目的编译和运行

    1.Hello World系统自带

    2.运行虚拟机,看是否能正常运行。

    (五)蓝墨云测试

    Android Stuidio的安装测试

    1.要求:完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号,自己学号前后一名同学的学号, 学习Android Stuidio调试应用程序

    2.解决路径:在xml文件中找到android:text=这一语句,按要求修改后面内容为Hello World 20175213 20175212 20175214

    3.截图:

    4.代码:

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World! 20175213 20175212 20175214"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
    
    </android.support.constraint.ConstraintLayout>
    

    Activity测试

    1.要求:构建项目,运行教材相关代码。创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity

    2.解决方案:

    • 在activity_main.xml里新建一段代码

    • MainActivity.java中创建intent对象

    • 新建活动SecondActivityDemo,会发现多出SecondActivityDemo.classactivity_second_Demo

    • AndroidMainfest.xml注册

    • 效果展示

    UI测试

    1.要求:修改代码让Toast消息中显示自己的学号信息

    2.解决方案:

    • MainActivity.java中操作,引入代码

    事件处理测试

    1.要求:参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十八章, 构建项目,运行教材相关代码

    2.解决方案:

    • 改写MainActivity下的代码如下:
    package com.example.helloworld;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.app.Activity;
    import android.graphics.Color;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.View;
    import android.widget.AnalogClock;
    import android.app.Activity;
    import android.graphics.Color;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.View;
    import android.widget.AnalogClock;
    
    import com.example.helloworld.R;
    
    public class MainActivity extends Activity {
        int counter = 0;
        int[] colors = { Color.BLACK, Color.BLUE, Color.CYAN,
                Color.DKGRAY, Color.GRAY, Color.GREEN, Color.LTGRAY,
                Color.MAGENTA, Color.RED, Color.WHITE, Color.YELLOW };
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it
    // is present.
            getMenuInflater().inflate(R.menu.menu_main, menu);
            return true;
        }
        public void changeColor(View view) {
            if (counter == colors.length) {
                counter = 0;
            }
            view.setBackgroundColor(colors[counter++]);
        }
    }
    
    • 改写activity_main下的代码如下:
    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="10dp"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:paddingTop="10dp"
        tools:context=".MainActivity">
        <AnalogClock
            android:id="@+id/analogClock1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="90dp"
            android:onClick="changeColor"
            />
    </RelativeLayout>
    

    3.效果展示:

    (六)问题与解决方案

    问题1:在安装好虚拟机后,运行时出现如下错误emulator: ERROR: x86 emulation currently requires hardware acceleration!,一直卡在这。

    问题1解决方案:

    在博客园中查询博客(https://blog.csdn.net/shareye1992/article/details/81777387)得,SDK Tools中的Intel x86 Emulator Accelerator(HAXM installer)未安装。到sdkextrasintelHardware_Accelerated_Execution_Manager文件夹双击安装一下intelhaxm-android.exe。 安装成功后,重新启动模拟机即可

    (七)感悟和收获

    1.第一次接触到Android虚拟机,很新鲜也有很多收获。

    2.安装过程很复杂,让人很是头疼,但也是我自己在操作上有点问题,以后在此类问题上会多加注意。

  • 相关阅读:
    Jmeter错误解析-明明写对了,确报404,原因是接口里多了个空格
    Jmeter+ant+svn+jenkins一键部署(四)--机器人发报告
    Django
    Linux下压缩解压文件夹+下载+删除命令
    VUE-安装
    Hadoop核心-MapReduce
    Pulsar 社区周报|2021-06-14~2021-06-20
    ApacheCon Asia 2021: Apache Pulsar 技术议题一览
    Pulsar 社区周报|2021-06-07~2021-06-13
    直播回顾|TGIP-CN 032:Apache Pulsar 快速上手实战
  • 原文地址:https://www.cnblogs.com/LZHNB/p/10863279.html
Copyright © 2011-2022 走看看