当前位置: 首页 > article >正文

2024-1.2.12-Android-Studio配置

本地博客: https://k1t0111.github.io/
K1T0
最近在做一些app方向的移动技术开发学习,但是由于AS的配置问题,市面上找不到最新的2024版本的AS的相关配置。笔者也是踩了很多坑,因此想写一篇文章记录一下最新的AS 2024 1.2.12的对应java环境的一个配置。
在这里插入图片描述

下载

https://developer.android.com/studio?hl=zh-cn
直接下载安装程序

下载步骤

不多做赘述,直接next
image.png

记得保存在d盘,直接安装就好。

JAVA的SDK 默认已经安装好。SDK环境默认已经安装完毕。

Android SDK

初次进入会提示,如何安装,最好选择custom 安装。不然东西全在c盘,太占空间。
进入之后勾选android sdk只安装这一个就够了。然后等待安装。

项目

开始进入项目
image.png

可以看到有很多的项目准备,我们使用phone ,然后进入No activity 进入构建项目。因为不明白为什么最新版的跟以前的不同,如果我们选择Empty activity的话,我们无法选择Java语言,默认是kotlin。

image.png
我选择android 9(因为老师说比较适合我<–…–>) 使用gradle构建项目,名字自己写。进入之后一般都会有一个很头疼的事情。gradle的下载。

gradle

我建议是手动下载,一般来讲他都会报错说无法下载,然后你使用他下载的连接,下载一个gradle压缩包。需要的版本就是刚好对应的。重点来了,由于我们希望所有东西都能够保存在d盘。
**调整gradle默认保存位置
image.png

然后重新启动android studio 可以看到原本gradle里面多了很多文件

D:\Download\.gradle\wrapper\dists\gradle-8.7-bin\bhs2wmbdwecv87pi65oeuq5iu

在这个文件夹下面把我们下载好的gradle 复制到目录底下。同时解压缩zip文件。注意其实这个文件夹下面本来是有两个文件的。把lck后缀的文件保留,另外一个文件删除。同时再复制一份lck文件把后缀名从lck保存为ok。做完这些事情之后,我们可以重新启动AS等到AS对gradle的加载。可能到现在还有点懵,稍微介绍一下Gradle。

Gradle

Android Gradle 是一个自动化构建工具,用于管理 Android 项目的构建过程。它基于 Gradle 构建系统,允许开发者定义和管理构建任务,例如编译代码、打包 APK、运行测试等。通过 build.gradle 文件,开发者可以配置项目的构建选项、依赖关系和插件。Gradle 的灵活性使得 Android 项目可以轻松适应不同的构建需求和配置。 针对第三方库进行管理。对应相关版本。

虚拟机

注意他的加载时间真的慢,加载完毕之后创建一个虚拟机,最新版的device找了半天
image.png

进入之后加号 + 创建一个虚拟机。
image.png
选择你要的型号然后next,选择一个系统image镜像。之后finish就好了。
到目前为止,我们的所有配置几乎已经做好了。可以运行一个项目看看,但是此时我们由于选择的是Empty activity 所以我们无法直接运行,我们需要自己的我们的ui文件和java代码文件以及我们的activity

运行

这个里给出一个hello world 的测试项目

image.png
分别把这三个文件放到对应的位置。

***AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.myapplication">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication">
        <activity android:name=".MainActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

设置一个主活动。

***MainActivity.java

package com.example.myapplication;

import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private static final String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button btnHelloWorld = findViewById(R.id.btnHelloWorld);
        btnHelloWorld.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 打印日志到 Logcat
                Log.d(TAG, "Hello World");
            }
        });
    }
}

***activity_main.xml

<?xml version="1.0" encoding="utf-8"?>  
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent">  
  
    <Button        android:id="@+id/btnHelloWorld"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:text="Click me"  
        android:layout_centerInParent="true"/>  
</RelativeLayout>

这是ui文件。注意layout文件夹需要自己创建,新版本默认不自带。注意开启虚拟机。
点击run 进行项目构建运行。不出意外你会看到clickme
image.png


http://www.kler.cn/a/311519.html

相关文章:

  • 由播客转向个人定制的音频频道(1)平台搭建
  • 国标GB28181视频平台EasyCVR私有化部署视频平台对接监控录像机NVR时,录像机“资源不足”是什么原因?
  • C++数据结构算法学习
  • aws xray通过设置采样规则对请求进行过滤
  • 模型结构及对比
  • 安卓智能对讲终端|北斗有源终端|三防对讲机|单兵终端|单北斗
  • HttpMediaTypeNotAcceptableException: No acceptable representation问题解决方法
  • 解决使用nvm管理node版本时提示npm下载失败的问题
  • 选择排序
  • DPDK 简易应用开发之路 2:UDP数据包发送及实现
  • Day14:学生信息管理系统
  • 【Qt网络编程】Tcp多线程并发服务器和客户端通信
  • Laravel邮件发送:从配置到发邮件的指南!
  • 从零开始讲DDR(2)——DDR的核心技术
  • 软考架构-架构风格
  • 全网最适合入门的面向对象编程教程:50 Python函数方法与接口-接口和抽象基类
  • 2-95 基于matlab的模板定位
  • 阿里云容器服务Kubernetes部署新服务
  • springboot实战章节小结
  • SpringSecurity原理解析(七):权限校验流程
  • TypeScript异常处理
  • Spring IoC 配置类 总结
  • LabVIEW多语言支持优化
  • [数据集][目标检测]不同颜色的安全帽检测数据集VOC+YOLO格式7574张5类别
  • 版本控制之Git
  • U盘显示未被格式化:深入解析、恢复策略与预防之道