Android Studio 安装配置教程 – Windows(详细版)

Android Studio 安装配置教程 – Windows(详细版)准备工作Java环境变量配置好,参考:Java环境变量配置然后首先是安装程序,这里默认不翻墙,使用国内的,:AndroidStudio下载地址,最新版本目前是3.5.2,由于我之前已经下载过了3.5.0了,所以我就不需要再下载3.5.2了,安装双击运行点击Next下一步点击Next下一步默认会给你转到C盘,这里我修改到了G盘(PS:这里一定要改路径,否则随着你开…

大家好,又见面了,我是你们的朋友全栈君。

准备工作

Java环境变量配置好,参考:Java环境变量配置

然后首先是安装程序,这里默认不翻墙,使用国内的,下载地址有两个,

一、安卓中文组下载

Android Studio下载地址-安卓中文组,最新版本目前是3.5.2
在这里插入图片描述
这个版本相对来说比较稳定,但不是最新版的

二、谷歌中国下载

Android Studio下载地址-谷歌中国,最新版本目前是Bumblebee | 2021.1.1 Patch 2,这个版本新增了很多牛逼的功能,但是手上有工作项目的不要去轻易尝试,BUG是肯定会有的,你放心,新手可以去下载安装尝试。
在这里插入图片描述

这个版本是目前最新的,但是从开发的角度来说,不建议马上更新到最新,因为吃螃蟹没有那么容易。

目前我自己已经从之前的3.5.2更新到了4.2.1版本,这个版本的AS还挺好的,当然对于新手来说建议先使用3.5.2的版本,熟悉后再升级AS,稳稳滴~
在这里插入图片描述

安装

双击运行
在这里插入图片描述
点击 Next 下一步

在这里插入图片描述
点击 Next 下一步

在这里插入图片描述
默认会给你转到C盘,这里我修改到了G盘(PS: 这里一定要改路径,否则随着你开发过程中,你的C盘空间会越来越小,这里我放的是G盘,只要不装在系统盘里,其他盘随意,不过也要有一定空间才行。),点击 Next 下一步
在这里插入图片描述
点击 Next 下一步(PS:这里没有其他骚操作,不要乱来)
在这里插入图片描述
等安装完成
在这里插入图片描述
点击 Next 下一步,
在这里插入图片描述
点击Finish进行第一次运行了,如果你不是第一安装了,那么就是覆盖安装,也是一步到位,没啥好讲的。现在我们运行一下:
在这里插入图片描述
如果你选择上面那个就会在你电脑安装默认的配置,这里不导入配置,直接OK即可,然后你就会看到AS的启动图片:
在这里插入图片描述
不得不说比之前的要好看一些:然后会弹出
在这里插入图片描述
就是让发送使用的信息给谷歌,发个锤子,决绝,点击“Don’t send”,

在这里插入图片描述
这个地方是说你没有SDK,让你设置代码,这里不设置,点击 Cancel
在这里插入图片描述
等待一会儿
在这里插入图片描述
这个图片是告诉你,Android能做的事情有手机,穿戴设备,TV,还有智能设备等,点击 Next 下一步
在这里插入图片描述
Android Studio 默认会把你的SDK下载放在C盘,到时候你的C盘就炸了,谷歌太坏了,很多新手都会直接下一步
在这里插入图片描述
我们选择Custom 自定义,然后点击 Next 下一步
在这里插入图片描述
白色的看久了,我觉得眼睛不舒服,所以我都是默认黑色的,看个人喜好,然后点击 Next 下一步,之前我们选择自定义SDK的路径
在这里插入图片描述
所以这个地方就是让你该路径的,改好之后就点击 Next 下一步
在这里插入图片描述
然后就会下载对应当前版本的SDK配置文件,点击Finish就会开始下载(PS: 请在网络良好是尝试)

在这里插入图片描述
很明显,我的这个网速就不这么样,这个时候你就可以泡一杯咖啡,说到咖啡你有没有想到Java的图标呢?
在这里插入图片描述
好了,点击finish
在这里插入图片描述
1.启动一个新的Android Studio项目
2.打开一个现有的Android Studio项目
这里只说前面一两条,既然是做教程,那我们创建一个新的项目(PS:创建一个新的和打开一个已有的项目有什么区别呢,创建一个新的就只有这样项目最基本的已经插件和依赖,以这个新的为准,而打开已有的就会以老项目的环境为准,这就是为什么你从网上下载别人的代码再打开之后要配置很久的原因,因为你的环境和别人不一定就一样,其次就是里面用到的SDK、API版本、依赖框架等一些内容不一样,所以用的时间很久,犹豫是在网络慢的时候更突出,相当煎熬,我咖啡都喝了两杯了,还没有下载完配置,心碎,辣鸡软件,毁我青春)。
在这里插入图片描述
这里默认是创建的一个空的Activity(活动),点击Next。下一步
在这里插入图片描述
点击finish 就会开始创建这个项目并下载一些配置文件
在这里插入图片描述
可以看到这个左下角就是在配置你的项目,鬼知道它要下多久,让我们端起之前泡好的咖啡,轻轻地吹一口,摸一下油光发亮的脑门,看着窗外开始思考今天晚上吃什么?话说程序员是一个需要耐心的职业,因为有Bug这种东西,然后程序员还有两个死对头,就是产品和测试,这两个人坏的很,都是等到下班的时候来提需求和Bug,这让我收键盘的手微微颤抖了起来,然后又要重启电脑,打开手机点外卖,最惨的还不是这个时候,是疫情期间,外卖我不放心,所以挨饿到晚上回家自己做饭,关键是回家之后又不饿了,但是还是得做饭,不然第二天中午吃啥,光鲜亮丽的背后都是狗血的人生啊,电视剧里的程序员都是扯淡,那也要程序员吗?脱离群众只是拍给那些没有入行的人看的,相当的扯淡,说到这里,我们来看一下进度怎么样了
在这里插入图片描述
。。。。。。我都找不到表情包来形容我此刻的心情了。安装过程中电脑的防火墙还会给你弹一下
在这里插入图片描述
允许访问就会继续下载:
在这里插入图片描述
然后就会发现这里报了一个错,我们点一下这个蓝色字体,继续下载,然后就报错了:
在这里插入图片描述
这是因为当前项目所需的gradle在当前离线模式下面没有。
需要联网进行下载。
找到File -Setting–Gradle
查看自己之前的gradle的配置是否正确,然后将offline work 离线模式关掉
在这里插入图片描述
然后Apply一下
在这里插入图片描述
try Again 点击再尝试一波,给个机会啊,
在这里插入图片描述
只要你点了这个try Again 它没有马上报错,你就有希望,虽然这个希望有时候很渺茫,但是做人嘛,梦想还是要有的,不然和咸鱼和什么区别(PS: 虽然咸鱼翻身还是咸鱼,但是起码能卖的贵一点,记得有一次我去超市买菜,鱼类区,鱼类区摆着两条鱼,一条普通鱼一条咸鱼,普通鱼35.5,咸鱼72.5,我问售货员,这个咸鱼怎么贵这么多,不就是多放了盐嘛?他说:这是有梦想的咸鱼,年轻人你有没有梦想啊?)跑题了,不知道下载好了没有
在这里插入图片描述
第一次,都这样,难免的 ,哎。可能会有很多人都卡在这里,因为网络原因,这里需要下载和当前AS版本所对应的gradle文件,默认的是访问国外的服务器地址,因此有时候你会发现,你会出现连接超时,网络异常、访问失败的现象,但是,不要慌,先切换自己的当前网络环境,比如说你现在电脑是连接的网线或者wifi,切换一下看能不能行,不行的话再切换为手机的网络,手机开热点,电脑去连接这个热点,然后再build,如果你的手机是双卡的,那么你可以两个卡的热点都开一下进行尝试,当切换网络环境不能解决这个问题的时候,就换访问地址,使用阿里的镜像地址去下载,主要是修改你的项目的build.gradle。

// Top-level build file where you can add configuration options common to all sub-projects/modules.
 
buildscript { 
   
    repositories { 
   
 
        // 添加阿里云 maven 地址 
        maven { 
    url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { 
    url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
 
        // jcenter()
        google()
    }
    dependencies { 
   
        classpath 'com.android.tools.build:gradle:3.2.1'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
 
allprojects { 
   
    repositories { 
   
 
        // 添加阿里云 maven 地址 
        maven { 
    url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { 
    url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
 
        // jcenter()
        google()
    }
}
 
task clean(type: Delete) { 
   
    delete rootProject.buildDir
}

就像代码中的那样,你只要注释掉jcenter(),然后使用

		maven { 
    url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { 
    url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }

再Try Agin进行下载。这种方式我自己没有尝试过,因为我通过切换网络环境就下载配置好了,如果这个方式你还是下载不了,那么我表示。。。

在这里插入图片描述

在这里插入图片描述
终于下完了,不容易啊,
现在来改动它的外观,先把页面的背景改一下,黑乎乎不好看

File → Settings

在这里插入图片描述
选择背景图片
在这里插入图片描述
改完背景之后再改字体
在这里插入图片描述
现在明显比之前要好看一些:
在这里插入图片描述
现在再去配置Git ,方便我们进行代码管理

Git下载地址
在这里插入图片描述
选择Windows,
在这里插入图片描述
然后选择对应你系统的安装成员,然后下载,又到了考验网速的时候了
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
安装Git除了改安装地址,后面一律Next
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
中间省略一些截图

在这里插入图片描述

在这里插入图片描述

安装已经完成了,这时候就可以在AS里面配置Git了
File → Settings
在这里插入图片描述

然后点一下Test,测试一下如果你的Git没有问题就会弹出你的Git版本,Git配置问了现在就需要一个Git的账号,各位自己去创建就可以了
在这里插入图片描述

登录成功之后你的邮箱会收到一个邮件,打开邮件

在这里插入图片描述
如果是第一次配置的话,如果你第一次提交代码的话,会需要你提供邮箱收到的验证码,验证身份。
现在我们的Git账户就登陆上去了
异常情况
有位朋友遇到这样的情况,所以这里加上去
提示:AS 登录 Github 时,一直提示密码错误,其实有可能是设备未授权,我就是这样。需要上 Github 官网,登录帐号,会有提示是否授权当前设备,并发一个授权码到你的邮箱。输入授权码完成授权,再回到 AS 就能登陆成功了。
在这里插入图片描述

然后再安装几个插件
1.GsonFormat

快速将json字符串转换成一个Java Bean,免去我们根据json字符串手写对应java Bean的过程。
在这里插入图片描述
2.Android ButterKnife Zelezny
配合ButterKnife实现注解,从此不用写findViewById,想着就爽啊。在Activity,Fragment,Adapter中选中布局xml的资源id自动生成butterknife注解。
在这里插入图片描述
安装完插件之后AS需要重启一下,
在这里插入图片描述

然后就是怎么使用这两个插件的问题了。
首先第一个
GsonFormat

JSON字符串

{ 
   
    "HeWeather6": [
        { 
   
            "basic": [
                { 
   
                    "cid": "CN101010100",
                    "location": "北京",
                    "parent_city": "北京",
                    "admin_area": "北京",
                    "cnty": "中国",
                    "lat": "39.90498734",
                    "lon": "116.4052887",
                    "tz": "+8.00",
                    "type": "city"
                }
            ],
            "status": "ok"
        }
    ]
}

这是一段JSON字符串,现在访问接口主流返回这种字符串,复制一下,

在这里插入图片描述

点击OK
在这里插入图片描述

然后这个实体类就写好了
在这里插入图片描述
然后是第二个插件,
在工程的build.gradle里面加上
在这里插入图片描述
build.gradle代码:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript { 
   
    repositories { 
   
        google()
        //新增
        mavenCentral()
        jcenter()
        
    }
    dependencies { 
   
        classpath 'com.android.tools.build:gradle:3.5.0'
        //新增
        classpath 'com.jakewharton:butterknife-gradle-plugin:10.1.0'
        
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects { 
   
    repositories { 
   
        //新增
        maven { 
    url "https://jitpack.io" }
        //新增
        mavenCentral()

        google()
        jcenter()
        
    }
}

task clean(type: Delete) { 
   
    delete rootProject.buildDir
}

然后在项目的build.gradle 里面的
android闭包中加入如下代码:

compileOptions { 
   
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

dependencies闭包里面加入如下依赖代码

	//butterknife
    implementation 'com.jakewharton:butterknife:10.1.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'

项目的build.gradle的代码:

apply plugin: 'com.android.application'

android { 
   
    compileSdkVersion 28
    buildToolsVersion "29.0.3"
    defaultConfig { 
   
        applicationId "com.llw.helloworld"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    compileOptions { 
   
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    buildTypes { 
   
        release { 
   
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies { 
   
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
    //butterknife
    implementation 'com.jakewharton:butterknife:10.1.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'

}

在这里插入图片描述

然后sync一下
然后修改一下布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/tv_test"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!" />
    
    <Button
        android:layout_marginTop="20dp"
        android:id="@+id/btn_test"
        android:text="测试"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    

</LinearLayout>

然后在MainActivity.java中
鼠标右键点击布局文件activity_main 选择Generate
在这里插入图片描述

在这里插入图片描述
现在就可以用这个插件,点击红色边框中的Generate ButterKnife Iniertions
在这里插入图片描述
然后confirm提交,这个时候我们再看MainActivity.java

package com.llw.helloworld;

import android.os.Bundle;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;

public class MainActivity extends AppCompatActivity { 
   

    @BindView(R.id.tv_test)
    TextView tvTest;
    @BindView(R.id.btn_test)
    Button btnTest;

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

    @OnClick(R.id.btn_test)
    public void onViewClicked() { 
   
        Toast.makeText(this,tvTest.getText().toString(),Toast.LENGTH_LONG).show();
    }
}

然后运行在手机上:
在这里插入图片描述

运行效果如下图
在这里插入图片描述

到这里就结束了,有什么问题,随时call我

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159540.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python turtle 表白_pythonturtle背景颜色

    python turtle 表白_pythonturtle背景颜色python中用turtle画爱心表白运行后的效果图:下面的代码是在python3.7写的,代码有点长,但却语法简单易懂代码如下:importturtlestr=input(‘请输入表白语:’)turtle.speed(10)#画笔速度turtle.setup(1800,700,70,70)turtle.color(‘black’,’pink’)#画笔颜色t…

  • Vue.js 入门教程[通俗易懂]

    Vue.js 入门教程[通俗易懂]Vue.js教程Vue.js(读音/vjuː/,类似于view)是一套构建用户界面的渐进式框架。Vue只关注视图层,采用自底向上增量开发的设计。Vue的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件。MVVM模式下图不仅概括了MVVM模式(Model-View-ViewModel),还描述了在Vue.js中ViewModel是如何和View以及Model进行交互…

  • Runnable 和Callable的实现与区别,应用场景

    Java提供了三种创建线程的方法1:通过实现Runnable接口2:通过继承Thread接口3:通过Callable和Future创建线程相同点都是接口都可以编写多线程程序都采用Thread.start()启动线程不同点(1)Callable规定的方法是call(),Runnable规定的方法是run()。其中Runnable可以提交给Thread来包装下,直接启动一个…

  • C#获取url中参数键值对的方法建议收藏

    方法如下://////遍历Url中的参数列表//////如:(?userName=keleyi&userType=1)publicstringGetUrlParam(){stri

    2021年12月20日
  • Android平台ROM的定制及精简教程

    Android平台ROM的定制及精简教程本教程主要内容有:Android系统文件夹结构解析、应用软件说明、定制精简、ROM签名把包等内容。本教程测试平台为HTCG2、G3这两个型号,其它机型可以借鉴,刷机有风险,出问题自负。其实这个教程一早就想写的,但由于时间及本人的懒惰,一直拖着。今晚终于静下心来写好本文,本文有部份内容来自于网络。 速度与华丽,你喜欢那个。是不是想要一个又够速度又华丽的ROM呢?我是一个追求新鲜的人,对于手机的

    2022年10月16日
  • 【vue引用原生高德地图并多点标注】

    【vue引用原生高德地图并多点标注】vue.js引用原生高德地图不是amap

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号