孤独的猫

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

目前学习用Android Studio进行android手机开发,出现了各种问题,出现问题后,搜索百度,有的一个问题,各种答案,通过多次试错排查,终于总结出了一套可以完全使用的方法了。具体的步骤如下:

1. 首先下载最新安装版Android Studio Arctic Fox,安装好后,会下载SDK,由于"墙"的存在,致使容易出现下载缓慢或者根本无法下载的问题,这时就需要进行设置了,看百度上多是设置proxy,但是这种方法,也不太可靠,我试了很多代理服务器都失效了,最后才找到一种目前看来较为稳妥的方法,就是使用http://ping.chinaz.com/ ,来ping谷歌服务器,看其中最短时间的网址,并加入hosts文件中,hosts文件地址:C:\WINDOWS\System32\drivers\etc\hosts,如

 2. 在Android Studio中,新建hello world工程

 3. 修改配置文件

修改gradle-wrapper.properties文件,android studio采用gradle来编译,而gradle从外围难以访问,所以可以从https://services.gradle.org/distributions/中下载gradle-7.1-all.zip到本地如C:/Users/Administrator/.gradle/wrapper/dists/gradle-7.1-all/9ccjyfn4kvk7v1w1wbmf8rhqp/gradle-7.1-all.zip,

其中9ccjyfn4kvk7v1w1wbmf8rhqp是系统自动生成的

并且在setting的Build Tools下的Gradle设置为下图所示:

 

  distriutionUrl项改为

distributionUrl=file:///C:/Users/Administrator/.gradle/wrapper/dists/gradle-7.1-all/9ccjyfn4kvk7v1w1wbmf8rhqp/gradle-7.1-all.zip

4.build.grale模块级的设置为
plugins {
    id 'com.android.application'
}

android {
    compileSdk 30

    defaultConfig {
        applicationId "com.example.test1"
        minSdk 21
        targetSdk 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
//    compileOptions {
//        sourceCompatibility JavaVersion.VERSION_1_8
//        targetCompatibility JavaVersion.VERSION_1_8
//    }
}

dependencies {

    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'com.google.android.material:material:1.3.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    testImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}

其中的compileOptions一定要去掉,因为compileSdk设置为30,所以在SDK中也应下载API为30版本的,并且要制定SDK的路径,如:

5. build.gradle工程级的设置为:

使用阿里云

buildscript {
    repositories {
        google()
        //mavenCentral()
        maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/'}
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.2.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        //mavenCentral()
        maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/'}
    }
}

6.在settings.gradle(Project Settings)中去掉前面的设置,改为

//dependencyResolutionManagement {
//    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
//    repositories {
//        google()
//        mavenCentral()
//        jcenter() // Warning: this repository is going to shut down soon
//    }
//}
rootProject.name = "Test1"
include ':app'

7.所有这设置后,就应该可以编译和调试android程序了

如果使用模拟器调试,需要BIOS打开VT-X支持,并在SDK TOOL中下载HAXM,然后调试。

笔者参照网上的例子。activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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="300dp"
    android:background="#00aaff"
    android:orientation="vertical"
    android:padding="5dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="20dp"
        android:background="#ffff99"
        android:padding="60dp">

        <View
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#ff0000" />
    </LinearLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

运行后,手机模拟器效果:

 

 

 



posted on 2021-12-10 23:54  孤独的猫  阅读(811)  评论(0编辑  收藏  举报