【无标题】

2022年夏季《移动软件开发》实验报告

姓名: 学号:
姓名和学号?
本实验属于哪门课程?中国海洋大学22夏《移动软件开发》
实验名称?实验5:第一个安卓应用
博客地址?XXXXXXX
Github仓库地址?XXXXXXX

(备注:将实验报告发布在博客、代码公开至 github 是 加分项,不是必须做的)

一、实验目标

模仿微信“发现”页创建列表布局,学习使用Textview imageview、LinearLayout

二、实验步骤

列出实验的关键步骤、代码解析、截图。

列出程序的最终运行结果及截图。

首先我们了解了安卓的历史及架构,并且在准备的过程中搭建了安卓的开发环境。这里给出了两个资源下载的地址:

JAVA SE 环境下载 https://www.oracle.com/java/technologies/downloads/

Android Studio 下载 https://developer.android.google.cn/studio#downloads

环境搭建分为三个步骤: 1、电脑安装jdk 2、配置JAVA环境 3、安装Androidstudio(含SDK)

首先创建一个文件夹,将下载好的jdk保存在该目录下面。然后点击进入java SE的安装页面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DHqtrJfw-1661426383000)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825175327909.png)]

之后一般默认安装到一个路径,将这个路径记住,或者可以选择自己想要安装的文件夹,之后点击下一步。之后一直点击下一步。完成之后可以在默认地址或者自己所选择的文件夹中看到相应的jdk与jre文件。之后进行环境变量的配置。

鼠标右键我的电脑-属性-高级系统设置,选择环境变量,点击环境变量进行新建

添加配置: 变量名:Java_Home 变量值:jdk 的安装目录 ,可以点击浏览目录选择(这个就是刚才的安装路径),之后确定保存。同时还需要添加Path的配置,选择Path,点击编辑,有两种方式可以进行修改:

1.新建 两个环境变量 变量1:%Java_Home%\bin 变量2:%Java_Home%\jre\bin(将其上移并确定保存)

2.将以下配置复制粘贴放在最前面,再 确定 保存 配置:%Java_Home%\bin;%Java_Home%\jre\bin;

继续添加配置:变量名:CLASSPATH 变值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

现在java在windows环境下的环境配置就完成了。

可以检测是否配置成功:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hKJPlDjy-1661426383001)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825180529765.png)]

win+R出现面板,输入cmd回车

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mYxxqjWv-1661426383002)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825180618112.png)]

输入java回车:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wwdQRDE6-1661426383002)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825180646444.png)]

还可以输入 java -version查看Java版本等内容

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y6IALIUh-1661426383003)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825180844279.png)]

接下来进行android studio的安装

首次运行没有SDK所以系统会检测环境,选择cancel即可

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZHE43Tuk-1661426383003)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825181029699.png)]

之后Next、accpet、最后finish,最后安装完成会出现这样的界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XSlgVBZn-1661426383004)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825181142524.png)]

选择Empty Activity 创建空的页面app,在项目语言中修改为java,之后就是下载一些运行项目的库(在这里需要花费很长一段时间)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kjZ9wpyH-1661426383005)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825182439913.png)]

到这个界面算是下载完成。

到这里准备工作就做完了,接下来是第一个Android小程序的开发。这次试验要做的是一个仿微信“发现”页创建列表布局。重点在于Textview imageview 和LinearLayout 的使用。

首先是一些基础知识的了解,在这里就不赘述了。

页面中主要分为五个列表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HSUCInYj-1661426383005)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825182734252.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P7xmwCae-1661426383006)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825182741926.png)]

我们要做的就是1. 首先设计一个外部总垂直布局,包含所有的列表组 2. 写五个LinearLayout来构建这五个列表组 3. 每个列表组的单独构建 4. 列表组之间的间隔样式搭建。

代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#e5e5e5"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:background="#fff"
        android:orientation="horizontal">

        <ImageView
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="15dp"
            android:background="@mipmap/pengyou" />

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginLeft="15dp"
            android:layout_weight="1"
            android:gravity="center_vertical"
            android:text="朋友圈"
            android:textColor="#333"
            android:textSize="18dp"
            android:textStyle="bold" />

        <ImageView
            android:layout_width="41dp"
            android:layout_height="39dp"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="15dp"
            android:background="@mipmap/jiantou" />
    </LinearLayout>

    <TextView
        android:background="#f0f0f0"
        android:layout_width="wrap_content"
        android:layout_height="15dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:background="#fff"
        android:orientation="vertical">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="#fff"
            android:orientation="horizontal">

            <ImageView
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/sao" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:text="扫一扫"
                android:textColor="#333"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:layout_width="41dp"
                android:layout_height="39dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/jiantou" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="#fff"
            android:orientation="horizontal">

            <ImageView
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/yao" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:text="摇一摇"
                android:textColor="#333"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:layout_width="41dp"
                android:layout_height="39dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/jiantou" />
        </LinearLayout>


    </LinearLayout>

    <TextView
        android:background="#f0f0f0"
        android:layout_width="wrap_content"
        android:layout_height="15dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:background="#fff"
        android:orientation="vertical">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="#fff"
            android:orientation="horizontal">

            <ImageView
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/kan" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:text="看一看"
                android:textColor="#333"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:layout_width="41dp"
                android:layout_height="39dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/jiantou" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="#fff"
            android:orientation="horizontal">

            <ImageView
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/sou" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:text="搜一搜"
                android:textColor="#333"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:layout_width="41dp"
                android:layout_height="39dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/jiantou" />
        </LinearLayout>


    </LinearLayout>

    <TextView
        android:background="#f0f0f0"
        android:layout_width="wrap_content"
        android:layout_height="15dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:background="#fff"
        android:orientation="vertical">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="#fff"
            android:orientation="horizontal">

            <ImageView
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/gou" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:text="购物"
                android:textColor="#333"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:layout_width="41dp"
                android:layout_height="39dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/jiantou" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="#fff"
            android:orientation="horizontal">

            <ImageView
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/you" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_weight="1"
                android:gravity="center_vertical"
                android:text="游戏"
                android:textColor="#333"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:layout_width="41dp"
                android:layout_height="39dp"
                android:layout_gravity="center_vertical"
                android:layout_marginLeft="15dp"
                android:background="@mipmap/jiantou" />
        </LinearLayout>


    </LinearLayout>

    <TextView
        android:background="#f0f0f0"
        android:layout_width="wrap_content"
        android:layout_height="15dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:background="#fff"
        android:orientation="horizontal">

        <ImageView
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="15dp"
            android:background="@mipmap/chengxu" />

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginLeft="15dp"
            android:layout_weight="1"
            android:gravity="center_vertical"
            android:text="小程序"
            android:textColor="#333"
            android:textSize="18dp"
            android:textStyle="bold" />

        <ImageView
            android:layout_width="41dp"
            android:layout_height="39dp"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="15dp"
            android:background="@mipmap/jiantou" />
    </LinearLayout>

    </LinearLayout>

三、程序运行结果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8mXH792W-1661426383007)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20220825191814625.png)]

四、问题总结与体会

描述实验过程中所遇到的问题,以及是如何解决的。有哪些收获和体会,对于课程的安排有哪些建议。

在安装的过程中,没有选择默认路径,导致JDK与环境配置的路径出现错误,所以在安装studio的过程中出现无法安装的情况。这种情况选择了重开,删除原有的安装内容与环境配置。并在高级配置中寻找到相应的表。(其实可以选择更加方便的方式进行)

在下载的过程中出现下载过慢的情况,可以使用一些网页的插件,这样会大大提高下载的速率。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值