【安卓开发】【一】初识安卓

一、安卓系统架构(四层架构)

1.Linux内核层:为安卓设备的各种硬件提供底层的驱动

显示驱动、音频驱动、照相机驱动、蓝牙驱动、WIFI驱动、电源管理

2.系统运行库层

C/C++库提供提醒支持,SQLite库提供数据库支持,OpenGL|ES提供3D绘图支持,Webkit库提供浏览器内核支持

3.应用框架层

构建应用程序时可能用到的各种API,安卓自带的一些核心应用就是用的这个API

4.应用层

手机上的应用程序(.apk安装后)

二、四大组件

活动Activity、服务Service、广播接收器Broadcast Receiver、内容提供器Content Provider

三、安装安卓准备工具

1.安装JDK

下载网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


配置好jdk的环境变量后才能安装安装Android SDK

配置:https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html

2.安装Android SDK

下载网址:https://pan.baidu.com/s/1mq3f1n5A14l6VHRU1G6PeQ

3.安装Android Studio

下载网址:http://www.android-studio.org/


安装教程:https://blog.csdn.net/u014726937/article/details/52846502

四、创建你的第一个项目

教程:https://jingyan.baidu.com/article/90bc8fc84293b8f653640c8d.html

创建之后可能存在的一些报错:

1.Android SDK没有引用成功,提示SDK Manager的报错

菜单栏->Tools->Android->SDK Manager-> Appearance & Behavior,打开后:


定位好你的Android SDK位置即可

2.NDK没有引用成功

先安装好这两个工具


看教程:https://jingyan.baidu.com/album/7f41ecec231d16593d095c03.html

3.可能存在识别不了AppCompatActivity,找不到这个类

仔细看会发现是上方import Adroid.support.v7...报错,v7找不到

菜单栏->File->Project Structure...,打开后



接着添加新的依赖库:com.android.support:appcompat-v7这个开头的



参考博客:https://blog.csdn.net/a873282620/article/details/53068392

五、项目中的各种文件


参考文章:https://blog.csdn.net/qq_28377423/article/details/72991776

manifests:

         AndroidManifest.xml:APP的配置信息

java:主要为源代码和测试代码

res:主要是资源目录,存储所有的项目资源

        drawable:存储一些xml文件,-*dpi表示存储分辨率的图片,用于适配不同的屏幕。

                           -mdpi:320x480

                           -hdpi:480x800、480x854

                           -xhdpi:至少960x720

                           -xxhdpi:1280x720

        layout:存储布局文件

        mipmap:存储原声图片资源

        values:存储app引用的一些值

                     - colors.xml:  存储了一些color的样式

                     - dimens.xml:存储了一些公用的dp值                       

                     - strings.xml: 存储了引用的string值

                     - styles.xml:   存储了app需要用到的一些样式

         Gradle Scripts:build.gradle为项目的gradle配置文件

我们可以获取到res下的一些引用

<resources>

           <string name="app_name">MProject</string>

</resources>

(1)在代码中通过R.string.app_name可以获取该字符串的引用

(2)在XML中通过@string/app_name可以获得该字符串的引用

其中string可以替换成drawable,mipmap,layout等res下的资源


六、build.gradle文件

这个文件一共有两个,一个在外层,一个在app文件夹下

1.外层的build.gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'

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

allprojects {
    repositories {
        jcenter()
    }
}

repositories是仓库,jcenter()是一个代码托管仓库,我们可以在项目中轻松引用任何jcenter上的开源项目

dependencies是依赖,classpath是声明路径,后面的com.android.tools.build:gradle:2.2.0是一个Gradle插件,我们需要它来构建安卓项目

2.app文件夹下的build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.0"
    defaultConfig {
        applicationId "com.movieproject.yj.mproject"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:26.0.0-alpha1'
}

com.android.application表示这是一个应用程序模块,com.android.library表示这是一个库模块,区别在于,应用程序模块是可以直接运行的,而库模块是作为代码库依附于别的应用程序模块来运行

compileSdkVersion用于指定项目的编译版

buildToolsVersion用于指定项目构建工具的版本

 defaultConfig表示基础配置

applicationId表示项目的包名,之前已经指定过包名了,如果后面想修改包名,就是这里修改

minSdkVersion表示指定项目最低兼容的Adnroid系统版本

targetSdkVersion表示你在该目标版本上已经做过了充分的测试

versionCode表示指定项目的版本号 versionName 表示指定项目的版本名,两个属性在生成安装文件的时候非常重要

 buildTypes 用于指定生成安装文件的相关配置

dependencies表示依赖库,就是前面添加v7引用的依赖库,是同一个东西

七、使用Android的Log日志工具

先要引用andriod.util.Log

里面有5个方法:

1.Log.v() 打印最为琐碎的、意义最小的日志信息(verbose)

2.Log.d()打印一些调试信息(debug)

3.Log.i()打印一些比较重要的数据(info)

4.Log.w()打印一些警告信息(warn)

5.Log.e()打印一些程序上的错误(error)

日志方法有2个参数,第一个是tag,用于对打印信息的过滤

第二个是msg,表示想要打印的具体内容

tag值的小技巧:我们在OnCreate()方法外面输入logt,然后按下tab键,这时就会以当前的类名作为值自动生成一个TAG常量

观看日志通过logcat进行查看

logcat位于AndroidStudio下面的AndroidMonitor里


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值