android studio 5.0 MD 开发实践,初识

前面

本博,将着重于,Android studio下5.0开发
Android studio目前在Android开发领域有多么火热,其实大家都感觉到了。无论是github上大神的demos,还是现如今,google官方给出的android 5.0 material design sample, 以及goole play,豌豆荚一栏,最新版的设计效果,可以预见:以Android studio 为开发平台,展开5.0以后开发,将是android 开发,Android应用的一个惊天巨响,业界也暗流涌动,一股android studio的5.0浪潮时刻会横空出世。

开始

1.安装Android studio
a. as version:1.4.1,
下载地址:https://dl.google.com/dl/android/studio/install/1.4.0.10/android-studio-bundle-141.2288178-windows.exe
此地址是一个代理过的地址,所以不用翻墙,一路很顺利的下载sdk,安装gradle
b.gradle version:2.3.1 此as自带

这里写图片描述

2.开始hello!
a.点击上图的
这里写图片描述

b.可以看到这里的项目是这样一个结构的as项目:

这里写图片描述
c.跑起来看看效果:
这里写图片描述
d.注意
在界面上,我们看到了5.0的一些新特性:
1.ToolBar,作为一种控件,取代了,5.0以前Actionbar作为导航
2.界面上出现了一个浮动FloatingActionButton,点击在浮动按钮下方会有一个,上浮的提示条:

 Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();

代码中:
在5.0以前,如果我们使用了v7的theme,MainAcivity继承自:

这里写图片描述

5.0以后,使用Material Design的Theme,MainAcivity继承自:

这里写图片描述

重点来了

  **a.as 项目结构**

这里写图片描述
我们看到根目录下,有四个子目录:
1.manifest
还是Eclipse中的请单位件
2.java
这里面有两个子目录,上面的是我们的项目代码,下面的是测试类。打开测试类,看到项目中其实是自带了,junit测试框架的;
3.res
我们看到这里基本上和eclips项目下没有什么区别,就是多出来一个mipmap,这个是什么东西?
官方给的说法是这样的:他们和drawable使用相同,只是在某些机型和分辨率下,会对图片的缩放有些优化

res/
   mipmap-mdpi/
      ic_launcher.png
   mipmap-hdpi/
      ic_launcher.png
   mipmap-xhdpi/
      ic_launcher.png  
   mipmap-xxhdpi/
      ic_launcher.png
   mipmap-xxxhdpi/   
      ic_launcher.png  # App icon used on

4.Gradle Scripts
文件如下
这里写图片描述
相关文档:http://www.open-open.com/lib/view/open1415793464648.html
相关文档(需要翻墙,so,把原文的一些类容粘了一下在下面):http://ask.android-studio.org/?/article/23
一堆资料说的很多名词,理解上还是云山雾罩的,做Android开发都能说上两句,“这几文件不就是完成项目构建的嘛,处理依赖jar包”
点开上面三个文件,我们来看看:
默认build.gradle脚本里面是空白(Project helloword)、但是如果项目中有依赖远程项目的,其脚本如下:

buildscript {
    repositories {
      //jcenter():声明使用 maven 仓库。在老版本中,此处为 mavenCentral()。
        mavenCentral()
    }
    dependencies {
    // 项目id
        classpath 'com.android.tools.build:gradle:1.2.3'
    }
}

build.gradle(Modle app),里groovy脚本如下:

apply plugin: 'com.android.application'//声明,这是一个Android程序,也可以是java,其他等

android {//整个项目的编译,运行环境
    compileSdkVersion 23  6.0下编译
    buildToolsVersion "23.0.2"//sdk tool level

    defaultConfig {//和manifest中某些类似
        applicationId "com.example.administrator.myapplication"
        minSdkVersion 21
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
/**
         * 混淆设置
         */
    buildTypes {
        release {

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

dependencies {
    //某个文件夹下面全部依赖
    compile fileTree(dir: 'libs', include: '*.jar')
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    //v7,design依赖
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:design:23.1.1'
}

资料:
- 默认的 module 目录下的 build.gradle 文件内容如上。 apply plugin:
‘com.android.application’: 表示使用 com.android.application 插件。也就是表示,这是一个
android application module 。 com.android.library 表示,这是一个 android
library module 。 android: 配置所有android构建过程需要的参数。 compileSdkVersion:
用于编译的 SDK 版本。 buildToolsVersion: 用于 Gradle 编译项目的工具版本。 defaultConfig:
Android 项目默认设置。 applicationId:应用程序包名。 minSdkVersion:最低支持 Android 版本。
targetSdkVersion:目标版本。实际上应为测试环境下测试机的 Android 版本。 versionCode:版本号。
5. versionName:版本名称。 buildTypes: 编译类型。默认有两个: release 和 debug 。我们可以在此处添加自己的 buildTypes ,可在 Build Variants 面板看到。 minifyEnabled:
是否使用混淆。在老版本中为 runProguard ,新版本之所换名称,是因为新版本支持去掉没使用到的资源文件,而 runProguard
这个名称已不合适了。
2. proguardFiles: 使用的混淆文件,可以使用多个混淆文件。此例中,使用了 SDK 中的 proguard-android.txt 文件以及当前 module 目录下的 proguard-rules.pro 文件。 dependencies: 用于配制引用的依赖。 compile fileTree(dir: ‘libs’, include: [‘*.jar’]): 引用当前 module 目录下的 libs
文件夹中的所有 .jar 文件。
- compile ‘com.android.support:appcompat-v7:21.0.3’
引用 21.0.3版本的 appcompat-v7 (也就是常用的 v7 library 项目)。
setting.gradle,里脚本如下:

如果你的一个 module 并不是 project 根目录下,你可以这么设置。

include ':app',只包含,app项目,没有作为libary的项目依赖

资料:
- 默认的 project 目录下的 settings.gradle 文件内容如上。可有可能默认情况下, project 目录下的
settings.gradle 文件不存在,你可以自己创建。 include ‘:app’:表示当前 project 下有一个名称为
app 的 module

更多关于gradle

gradle,groovy,点击下面网址:
.https://testerhome.com/topics/1867
真的应该认真学学下,对于gradle,下面的博主是这样说的:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值