android开发 之 新技术(精华版)

本文的思维导图(这里使用的是MindNode)

android-new-techs_01.png

Android version history

Code Name Version number Release Date API level Features
Ice Cream Sandwich 4.0 - 4.0.4 October 2011 14 - 15 统一手机平板电视 / 虚拟按键
Jelly Bean 4.1 - 4.3.1 July 2012 16 - 18 增强通知栏 / UI优化
KitKat 4.4 - 4.4.4 October 2013 19 - 20 引入ART
Lollipop 5.0 - 5.1.1 November 2014 21 - 22 强制ART / Material design
Marshmallow 6.0 - 6.0.1 October 2015 23 Android Pay / Fingerprint Support
Nougat 7.0 August 2016 24 分屏多任务 / Java 8语言支持

更多参考Android version history

What’s New in Android Studio 2.0

Instant Run: Faster Build & Deploy

  • Flow chart of a typical build cycle
android-new-techs_01.png
  • The goals of Instant Run

Remove as many of these steps as possible, and make whatever remains as fast as possible

  • Hot, Warm, and Cold Swaps
android-new-techs_02.png
android-new-techs_03.png

详细参考构建和运行您的应用

  • App Server

当你在Android Studio点击Run按钮时, 首先会检测在你的App里是否有一个开启Socket端口的Server在运行, 来确定Instant Run是否可用

当你在开发过程中, Android Studio会监控哪些文件已经被改变, 运行一个自定义的Gradle Task为那些改变的class文件创建一个.dex文件

这个新的.dex文件会被Android Studio部署到我们运行的App Server里面, App Server接收到之后就会加载和部署被更新的classes, 使用之前注入到我们原始类, 委托方法来调用我们刚才加载覆盖的新classes里的方法

详细参考Instant Run原理解析

  • Instant Run Tips and Tricks

(1) The availability of ART in Android 21 means you’ll get the most out of Instant Run by setting your minSdkVersion to 21 or higher

(2) Remember that changes to the manifest will trigger a full build and deploy cycle

详细参考Instant Run: How Does it Work?!

Next-Generation Emulator

即使如此, Android Emulator仍然慢于Genymotion

What’s New in Android Studio 2.1

Support for Java 8 language features

首先下载并安装JDK1.8

然后配置build.gradle文件如下

android {
    defaultConfig {
        ...
        // 开启jack编译
        jackOptions {
            enabled true
        }
    }
   ...
   // 将编译选项设置为Java1.8
    compileOptions {
        targetCompatibility 1.8
        sourceCompatibility 1.8
    }
}

更多参考30分钟入门Java8之lambda表达式

What’s New in Android Studio 2.2

New UI Designer & Constraint Layout

详细参考官方教程

What’s New in Java8

lambda + Functional Programming

optional

详细参考可选类型Optional对比-java8,guava,kotlin,swift

CompletableFuture

详细参考Package java.util.concurrent

Protocol Buffers

What are protocol buffers?

Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler

优点

  • 性能好/效率高

  • 代码生成机制, 维护成本低(.proto描述文件)

Objective-C和Swift的Protocol Buffers实现详见protobuf.io

对比

WebP

A new image format for the Web

WebP is a modern image format that provides superior lossless and lossy compression for images on the web

WebP lossless images are 26% smaller in size compared to PNGs. WebP lossy images are 25-34% smaller than comparable JPEG images at equivalent SSIM quality index

Lossless WebP supports transparency (also known as alpha channel) at a cost of just 22% additional bytes

更多参考webp

优点

对比

对于下面的.png图片, 文件大小为38kb

android-new-techs_01.png

使用WebP转换工具转换成.webp文件后, 文件大小只有8kb

android-new-techs_01.png

注意: 这里的后缀名虽然为.png, 但是其实是webp文件, 因为简书不支持.webp后缀的图片

更多文章, 请支持我的个人博客

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342

推荐阅读更多精彩内容