Android 10年の軌跡と将来の展望
〜多様性の爆発を繰り返す10年⽬のドロイド〜
特定⾮営利活動法⼈ ⽇本Androidの会 理事⻑
嶋 是⼀
この資料内容の一部には、Googleが作成、提供しているコンテンツを複製したものが含まれておりクリエイティブ コモンズの表示 2.5 ライセンスに記載の条件に従って使用しています。
Selected by freepik
オープンデベロッパーズカンファレンス2017 Tokyo
2
⾃⼰紹介
嶋 是⼀ (しま よしかず)
⽇本Androidの会
特定⾮営利活動(NPO)法⼈ ⽇本Androidの会 理事⻑
コミュニティー運営委員
株式会社KDDIテクノロジー
開発四部 部⻑ モバイルに関する新規技術の開拓
MCPCモバイルシステム技術検定委員
MCPC : モバイルコンピューティング推進コーンソーシアム
MCPC技術検定委員 テキスト作成WG副主査
IPA 情報処理技術者試験委員
⼤学
⾮常勤講師 東京電機⼤学 ⽟川⼤学
執筆
「Google Android⼊⾨」 技術評論社より2008年4⽉23⽇出版 ほか
@shimay
多様性の爆発
Android
4
私は少年自体からロボットが大
好きだったんだ。いまでもずっと
好きだ。子供はみんなロボット
は好きだろう? だけどロボット
は人の形をしているとは限らな
い。より人に似せて人の形に近
いのがアンドロイドだ。それは
親しみがあり友達のようだし、ロ
ボットよりも楽しい気持ちになれ
るだろう? そうだ日本のアニメ
と同じだよ。そういう世界を持っ
ているんだ。より人に近いところ
にある、それがGoogle
Androidなんだ。
人の側に立つマシン
Andy Rubinさん
元Android開発の統括責任者
元Android社社長
2008/6/13 @IT 嶋是一によるインタビュー
「Androidは雇い主の分身として仕事をする
エージェント」
5
多様性
多様性混沌 進化
6
Androidの多様性爆発
つねに新しい技術とイノベーターを取り込み続ける
新しい技術は常に発⽣し、Android上の上で育つ
多様性ゆえのイノベーションのエコシステムの構築
原動力 : OSS
イノベーションの器
7
Androidの多様性爆発 なにが?
端末のバリエーション
マルチデバイス
開発者と技術
イイコトトワルイコト
Android 10年
9
2007年11月13日
AM 1:22
2007年11月13日
AM 1:22
2007年11月5日
Android発表
OHA結成
Android SDK 10年
Android 登場10年⽬
10
Android 登場10年⽬
2007 Android SDK発表 アプリケーションの開発環境提供
2008 Android 1st初端末発売 米独T-Mobile G1発売
2009 Android 1st初国内端末 国内HT-03A発売
2010
2011 Android タブレット発売
2012
2013
2014 Android wear / auto / tv 登場
2015
2016 Android Things登場
2017 予定( DayDream2.0 一体型Android VRゴーグル )
m3/m5
1.0
Capcake
Doun
Eclair
uts
Froyo
Honeycomb
Jelly Bean
KitKat
Lollipop
Marshmallow
Nougat
O (明後日発表)
Dounuts Eclair
Gingerbread
Ice Cream Sandwich
11
Android状況 全世界
12
Android状況 国内
Mobile/Tablet Operating System
Market Share in Japan(%)
Android
iOS
WindowsPhone
others
13
Androidの開発メリット
マルチデバイス
⾮公式にも
多様なデバイス
Androidのアプリ開発
Androidの登場の背景
スマホ急速普及はなぜ?
端末バリエーション多様性
15
10年周期イノベーションの歴史 技術の⺠主化
技術だけでは起きないイノベーション
⼀部の⼈たちに囲われていた既得権をひらく
市場創生
新世代創出
16
10年周期イノベーションの歴史
17
計算機の⺠主化
⼩型化
研究所
国家機関
パーソナルコンピュータはプログラム計算装置を人の手にパーソナルコンピュータはプログラム計算装置を人の手に
パソコンメーカ
18
10年周期イノベーションの歴史
19
ネットワークの⺠主化
固定電話網
電話会社
相互結合
IX
インターネットはネットワーク(電話回線)を誰にでもインターネットはネットワーク(電話回線)を誰にでも
インターネットサービスプロバイダー
インターネットはローカルな相互データ接続により、電話会社の
通信網を誰でも利⽤できるようにISPが解放した。
20
10年周期イノベーションの歴史
21
iモード、EZweb、J-SkyWebは携帯ブラウザによりコンテンツビ
ジネスを携帯電話会社から開いた。
■携帯ブラウザ以前のコンテンツ配信
■携帯ブラウザ以降のコンテンツ配信
インターネットゲートウェイ
独自
独自 標準方式
携帯電話会社
携帯電話画面の表示を誰でも携帯電話画面の表示を誰でも
モバイルコンテンツの⺠主化
コンテンツ
プロバイダー
22
ゲートウェイ
サーバ
公式サイト 公式サイト
一般サイトともいう
Webサーバ
インターネット網事業者網
Webブラウザ
HTTP
TCPなど(*1)
IPなど(*2)
通信ベアラ
(無線通信)
携帯電話内部の
ソフトウェア
変換
交換局でのベアラ変換
通信ベアラ
(無線通信)
Ethernetなど
変換
TCPなど(*1)
IPなど(*2)
Ethernetなど
TCP
IP
Ethernetなど
ゲートウェイでの
プロトコル変換
Webサーバ
HTTP
TCP
IP
Ethernetなど
Webサーバが動作する
ソフトウェア
送信要求
データ
●Web機能
この範囲はインターネット
プロトコルスイート
この範囲は事業者独⾃
プロトコル
標準化されて
いるWeb。
コンテンツの作り⼿
はWebサービスで
提供可能
ガラケー時代のネットワーク
今まで開発できなかった領域が慣れ親しんでいる開発⼿法でオープンになった
出展: MCPCモバイルシステム技術検定教科書
リックテレコム モバイルシステム技術テキスト
モバイルコンテンツの⺠主化
23
10年周期イノベーションの歴史
24
CPUの進化
ケータイクラス
PCクラス
CPU性能
200MHz
600MHz
2007 2008 2009 2010 20112006
1GHz
400MHz
2012 2013
ARM11 400MHz
ARM9 128MHz
90nm
ARM11 528MHz
ARM9 256MHz
65nm
Scorpion 1GHz
ARM9 266MHz
65nm
MP Now
082Q CS
084Q CS
A8 800MHz
45nm
OMAP3430改
OMAP3
A8 600MHz
65nm
OMAP3430
OMAP3
A9 800MHz×2
45nm→28nm
OMAP4
Phoenix
ARM11 330MHz
90nm
OMAP2430
OMAP2
A9 1GHz×2
45nm→28nm
OMAP4
Phoenix
8960
Krait 1.5GHz×2
28nm
8960
8660
89xx
Scorpion 1.5GHz×2
45nm
Krait 1.7GHz×2
28nmLPIA
Z510: 1.1GHz
Z540: 1.86GHz
45nm
MP ’08/Jun
2009-2010年向
け
45nm
Silver thorne
MOORESTOWN
Atom(Intel)
ケータイプロセッサ並みの低消費電力へ
Oak Trail Medfield
32nm
1.5GHz
性能
Tegra1
ARM11 MP600MHz
65nm
Xscale
624MHz
Mervell
PXA310
Tegra2
1GHz x 2
40nm
Tegra3
1.5GHz x 4
40nm
25
2007 2008 2009 2010 20112006
1.8Mbps
3.6Mbps
14.4Mbps
100Mbps
7.2Mbps
2.4Mbps
HSPA+
3.1Mbps
100kbps
10Mbps
100Mbps
1Mbps
最大電送速度(対数)
LTE
HSDPA
1xEV-DO
Rev.0
1xEV-DO
Rev.A
2012
LTE
9.3Mb
3GPP2
3GPP
ブロードバンド帯域の実現
モバイルのブロードバンド化
26
つまり…
ハードウェアとネットワークの進化で
「できる事がPCとケータイと同じ」
になった
「いいタイミング」
でAndroidが登場したということ。
iOSもね。
27
CPUの変化と開発環境の変化
フィーチャーフォンOS スマートフォンOS
引用: インプレス「スマホ白書2015」より
3‐1‐1 スマートフォンアプリの開発環境
(嶋是一)
10
iOS
iPhon
ハードはメーカ製 ハードは自由に選択(Snapdragonなど)
ハードもRTOSも
ミドルもはメーカ製
配信用アプリとネイティブアプリ(モバイルならでは)の開発環境が同じに!配信用アプリとネイティブアプリ(モバイルならでは)の開発環境が同じに!
28
携帯電話の開発をメーカの⼿から解放。
イノベーションが早いWebやPCの開発者の流⼊を実現。
■Android以前の携帯開発
■Android以降の携帯開発
Java SE
組込
独自開発
一般的な
開発
組込
独自開発
Androidは組み込みのプログラムを誰の手にもAndroidは組み込みのプログラムを誰の手にも
Android
モバイルデバイスの⺠主化
携帯電話メーカ
電話会社
Web開発者
PC開発者
イノベータ
29
Androidの⽬標
次にこじ開ける⺠主化はどこ?
既得権(と感じるものは)はどこに?
新しいイノベーションをモバイルの世界で加速させたい
第三次プラットフォーム
戦争
マルチデバイス多様性
31
統合統合
統合統合分裂分裂
Androidのバージョンの進化
F
H
G J K
L
I
32
L
Androidのバージョンの進化
M N O
スマホ
時計
TV
⾞
33
デバイスは違えど同じSDKで実現
• Android Studio(Android開発環境)のSDK
34
OSは単⼀の品⽬だけでなく、複数のデバイス上で動作するよ
う、適応範囲を広げる事で、勢⼒争いに勝とうとしている。
第⼀次戦争 第⼆次戦争 第三次戦争
MS Windows
Apple Mac
Google Android
Apple iOS ?
第三次OS戦争
35
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZENIVI
webOS
Brew
iOS
iOS
Chrome OS Firefox
ブラウザ
Mac X
マルチプラットフォームの争い2012〜
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
Win
FP
SP
TAB
時計
TV
⾞
PC
WP
in the car
36
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
マルチプラットフォームの争い 2014〜
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
PF爆発
37
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
AQUOS K
Moto360
Google Nexus Player
Android Auto
38
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
Panasonic VIERA
39
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
Gear Fit
SAMSUNG Z1
TIZEN TV
40
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
2015MWCにてプレス
LG Watch Urbane LTE
41
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
42
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
Android5.0
Wear
Android5.0
TV
Android5.0
auto
Chrome OS Firefox
ブラウザ
Mac OS X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win?
Windows
embedded
Compact
Apple Watch
43
マルチプラットフォームの争い 2014〜
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
AndroidWear
AndroidTV
Androidauto
Chrome OS Firefox
ブラウザ
Mac X
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win
Windows
embedded
Compact
IoT
44
マルチプラットフォームの争い 2017前後
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
AndroidWear
AndroidTV
Androidauto
Chrome OS Firefox
ブラウザ
Mac
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win
Windows
embedded
Compact
IoT Android
Things
Win
in the car
45
マルチプラットフォームの争い 2017前後
Android
Android
Android
FxOS
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
AndroidWear
AndroidTV
Androidauto
Chrome OS Firefox
ブラウザ
Mac
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
FP
SP
TAB
時計
TV
車
PC
FxOS
FxOS
FxOS?
TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win
Windows
embedded
Compact
IoT Android
Things
CHIRIMEN
(B2G)
Win
Win
in the car
https://chirimen.org/
CHIRIMEN Open Hardware
WebアプリでIoTを制御
IoTのWeb実行環境
WebGPIO/WebI2C等
46
マルチプラットフォームの争い 2017前後
Android
Android
Android
LiMo
TIZEN
TIZEN
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
AndroidWear
AndroidTV
Androidauto
Chrome OS Firefox
ブラウザ
Mac
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win
Windows
embedded
Compact
IoT Android
Things
CHIRIMEN
(B2G)
AGL Win
in the car
Automotive Grade Linux
47
マルチプラットフォームの争い 2017前後
Android
Android
Android
TIZEN
TIZEN IVI
webOS
Brew
iOS
iOS
AndroidWear
AndroidTV
Androidauto
Chrome OS Firefox
ブラウザ
Mac
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS TIZEN
webOS
webOS
webOS
Brew WatchOS
CarPlay
Win
Windows
embedded
Compact
IoT Android
Things
CHIRIMEN
(B2G)
AGL
tvOS
Win
in the car
第四世代 Apple TV (2015年)
48
マルチプラットフォームの争い 2017前後
Android
Android
Android
TIZEN
TIZEN IVI
webOS
iOS
iOS
AndroidWear
AndroidTV
Androidauto
Chrome OS Firefox
ブラウザ
Mac
•Google系 •モジラ系 •SAMSUN系 •Apple系•LG系 •Qualcomm系 •MS系
WP
Win
WP
in the car
Win
FP
SP
TAB
時計
TV
車
PC
FxOS TIZEN
webOS WatchOS
CarPlay
Win
Windows
embedded
Compact
IoT Android
Things
CHIRIMEN
(B2G)
AGL
tvOS
Win10
Win10
Win
in the car
Win10
WinCore
49
Androidの⽬標
Google無双、Apple無双
次にこじ開ける⺠主化はどこ?
こじ開けてみたが
まだまだ市場が
新しいイノベーションをモバイルの世界で加速させたい
爆発してみたら
多様化で爆発したもの
51
多様化は酸いも⽢いも
• 淘汰の原理
– エコシステムに任せる
– 乗っかったプラットフォームが普及しない
– メーカの淘汰
• フラグメントの発⽣
– 端末によるアプリの動作挙動の違い
– 「機種差分評価」というハードル
– CDD/CTSによるGMSで抑え込み
• 当初はフラグメントもエコシステムで抑え込む予定
多様化の爆発は良いことばかりでもなく
52
CDDを読む
• 「Android 7.1 Compatibility Definition」
53
CDDを読む
• 「Android 7.1 Compatibility Definition」
54
多様化は酸いも⽢いも
次世代のドロイド
開発の多様性
56
Androidの⽬標
• Androidの仕組み
新しいイノベーションをモバイルの世界で加速させたい
57
Androidの⽬標
• JavaVM
– Javaはサンマイクロソフトが1995年に公開
– JavaのVMはサンマイクロソフトから提供されフィーチャーフ
ォンにもJavaMEが搭載
• VMソフトウェア⾃体はサンマイクロソフトのソフトウェアのためオー
プンソースでない
– Java技術の標準化作業は、Java Community
Process (JCP) というプロセスで⾏われている
– 新しい取り組みはJSRという形で標準化され、それが
JavaVMに搭載されて初めて利⽤可能になる
• 新しい技術を利⽤できるまでのタイムラグが発⽣
新しいイノベーションをモバイルの世界で加速させたい
58
Androidの⽬標
• AndroidはDalvik VMを搭載
– サンマイクロソフトから提供されているJavaSEのインターフ
ェイスにもとづいた実⾏環境(JavaVM)を、⾃前で制作
– アプリ開発者はJavaSEのプログラム⾔語で開発。しかし
VMはGoogleが実装したDalvik VMという組⽴
– DVMもオープンソースで公開され、⾃由に拡張可能
• 多様性が広がったとともに、様々な混沌(フラグメメント)も広がる
• 現在GoogleはGMSでその混沌を収めようとしている
• 新技術を早急に搭載でき、実験でき、アプリ開発で
き、マッシュアップの⼟台に乗せることができる。
新しいイノベーションをモバイルの世界で加速させたい
59
Javaの争い
Google Oracle
VS
2010年8月
OracleはGoogleを訴える。
60
Javaの争い
API著作
フェアユース利用
API著作はOracleの勝利!
Androidのフェアユース利用についてGoogleが係争中。
争点は2つ!
61
Javaの争い
declaring code
implementing code
「実装したcode」(リテラル)については著作権がある。
しかし、構造である⾮リテラルSSOについては著作範囲?
プログラム
SSO
Structure
Sequence
Organization
API
ロジック
⾮リテラル
62
Javaの争い
訴訟の流れ訴訟の流れ
GoogleがAndroidにコピーしたと認定されたものGoogleがAndroidにコピーしたと認定されたもの
Implementing code
Declaring code
SSO
8つのJavaファイルの逆コンパイル
7千⾏
JavaSEの全般
控訴裁
控訴審
連邦最⾼裁合衆国連邦地裁
州裁判所
陪審員評決 判決
63
Javaの争い
2012年4⽉
2012年5⽉
2012年6⽉
サンフランシスコ連邦地裁の法廷開始
Googleの特許侵
害はないという
陪審評決
損害賠償⾦なし。
Java API(37件)
については著作権
の保護とならない。
Google Oracle
64
Javaの争い
2012年10⽉
2014年05⽉
2014年10⽉
2015年06⽉
2016年06⽉
2017年02⽉
「Java APIを著作権の対象と認めず」判決を不
服としOracle側が上訴
控訴裁は37APIの
SSOを著作権の対象だ
とする判断。
「フェアユース」にあたるか
どうかについては、審理
を地裁に差し戻し
Googleは⽶最⾼裁に、API著作判断について
上訴申し⽴て
⽶最⾼裁がグーグルの
上告を棄却
著作権の侵害にはコードのコピーはいらない
連邦地裁「フェアユース」
であるとの陪審員評決
オラクル控訴裁へ上訴 →未確定
確定
Google Oracle
65
著作物の使⽤がフェアユースかどうか判断するうえでは、次の4点を考慮しなければならない。
1. 利⽤の⽬的と性格(その使⽤が商⽤であるか、⾮営利の教育⽬的であるかを含む)
2. 著作物の性質
3. 原著作物全体に対する再使⽤された量と重要性
4. 著作物のもつ潜在的市場もしくは価値に対する影響
著作物の使⽤がフェアユースかどうか判断するうえでは、次の4点を考慮しなければならない。
1. 利⽤の⽬的と性格(その使⽤が商⽤であるか、⾮営利の教育⽬的であるかを含む)
2. 著作物の性質
3. 原著作物全体に対する再使⽤された量と重要性
4. 著作物のもつ潜在的市場もしくは価値に対する影響
Javaの争い
フェアユース
フェアユースの権利は、他者の著作権で守られた作品を使⽤するこ
とを、その著作者の承諾なく使⽤することを認めるもの
⼀般化された定義を⾏うことは不可能であり、それぞれの事例にお
いて各々の事実に基づく判断が⾏われる必要がある
アメリカの著作権法(Copyright Act)
66
フェアユースは未決
しかし技術は進化している
Javaの争い
本章参考文献
・判例⽂No. 14-410 http://computemagazine.com/wp-content/uploads/2015/05/Google-v-Oracle-Solicitor-General-Brief.pdf
・ yudai/Oracle v. Google https://gist.github.com/yudai/c5906ca61d4fe367180a6e079c8fc309
67
Android
進むランタイムの進化
ランタイムの進化ランタイムの進化
1.0 4.4 5.0 7.0 …
AOT仮
ART 仮
Dalvik
JIT
JIT
Just in time(実⾏時コンパイラ)
Javaバイトコードを実⾏時に実⾏可能形式へ
AOT
Ahead of time(事前コンパイラ)
Javaバイトコードをあらかじめ実⾏可能な形式へ
インストール
早い
ストレージ小 実行時早い CPU負荷小 省電力
中間言語コンパイル方式
JIT
AOT(最適化)
ART
AOT
68スマートフォン⽩書2016(インプレス) 嶋是⼀原稿より
進むランタイムの進化
アプリ
Core OS
iOS Android
Core Service
Media
Cocoa Touch
Linux
Liblary
Dalvik
VM
Framework
Java
バイト
コード
ART
Swift
ソース
ObjectC
ソース
バイナリーコード
プログラミング
⾔語
コンパイル
LLVM利⽤
Javaソース
バイナリ
コード
ARTの場合Dalvikの場合
JavaのVM(バー
チャルマシン)
アプリ実⾏環境
コンパイル
LLVM利⽤
RTOS
ミドルウェア
アプリケーション
実⾏環境
アプリケーション
フレームワーク
配信環境
LLVMの活⽤LLVMの活⽤
Javaバイト
コード
69
進むランタイムの進化
LLVMの活用LLVMの活用
LLVM
コンパイル時、リンク時、実⾏時などあらゆる時点で
プログラムを最適化するよう設計された、任意の
プログラミング⾔語に対応可能なコンパイラ基盤
フロントエンド
LLVM
clang
c/c++/Objective c
ソース解析
中間コード
最適化
実行ファイル
生成
•中間コード IR: Intermediate Representation
LLVM-IR
コンパイラー
Swift
compiler
Swift
etc
compiler
etc
多様な言語
70
進むランタイムの進化
アプリ
Android
プログラミング
⾔語
RTOS
ミドルウェア
アプリケーション
実⾏環境
アプリケーション
フレームワーク
配信環境
LLVMの活⽤LLVMの活⽤
様々な開発⾔語ソース
フロントエンド
LLVM利⽤
Kotlin
Linux
Liblary
Dalvik
VM
Framework
Java
バイト
コード
ART
Javaソース
バイナリ
コード
ARTの場合Dalvikの場合
コンパイル
LLVM利⽤
Javaバイト
コード
KotlinはJava
バイトコードで実⾏する
• 親和性Javaそのもの
• LLVM待たずに実⽤可
71
開発⾔語Kotlinサポート in Google I/O 2017
⼤熱狂!!
72
開発⾔語の多様性と 「混沌 vs 進化」
• 訴訟問題的にも準備しておくのが得策
– 多様性ゆえの対策(進化)
– 対策がゆえの多様性(混沌)
• もともとAndroidは複数の開発⾔語が利⽤可能
• 新しい(モダンな)開発⾔語への要望
– JavaSEが古くなってきていた
– iOSの開発⾔語がObjective-Cからswiftへ移⾏
Kotlinの正式サポートKotlinの正式サポート
Googleは開発者を熱狂させながらイノベーションを取り込む
イノベーションエコシステムの確保
将来の展望
74
混沌 vs 進化
• 多様性が本質であるAndroid
• 新しい⺠主化領域を探し続ける 新⼤陸/GoWest
• イノベーションとイノベーターを取り込み続ける
– イノベーターの開発を巻き込み、進化し続け、開発者を熱
狂させ続ける
• レガシーを良く⾒せる<技術者にうれしい提案によりファン増
• 技術の相互作⽤が基本であるので、さまざまに⾏わ
れている取り組みや、新技術を掘り出す⼒が重要。
Androidの多様性Androidの多様性
75
Daydream VRデバイス
Googleの進めるVR共通規格
2.0となりVR空間だけで操作可能
スタンドアロンVR : ケーブル、電話機、PC不必要
スマートフォンVRとスタンドアローンVR
76
Daydream VRデバイス
77
Daydream VRデバイス
78
•Android Things makes developing connected embedded devices easy by providing the same Android development
tools, best-in-class Android framework, and Google APIs that make developers successful on mobile.
•Things Support Library
•Peripheral I/O API
•The Peripheral I/O APIs let your apps communicate with sensors and actuators using industry standard
protocols and interfaces. The following interfaces are supported: GPIO, PWM, I2C, SPI, UART.
•See the Peripheral I/O API Guides for more information on how to use the APIs.
•User Driver API
•User drivers extend existing Android framework services and allow apps to inject hardware events into the
framework that other apps can access using the standard Android APIs.
•See the User Driver API Guides for more information on how to use the APIs.
⼩型マイコンボードなど組み込み向けのOS
79
「TensorFlow Lite」機械学習活⽤がAndroid
へ
日本Anroidの会
81
⽇本Androidの会とは
コミュニティー運営委員
97名
設⽴
2008年9⽉12⽇
前⾝はAndroid勉強会2008年5⽉
会員
22,011名
Androidに興味を持つ⼈が集まるユーザーコミュニティーです!
•Androidの普及を促進し、ビジネス系、技術系、デザイナー系の⼈たち
に対して、Androidの注⽬度を上げることを⽬的としています。
82
⽇本Androidの活動内容
•そのほか展示会多数
• Wireless Japanなど
•
Android
普及活動
•メーリングリスト
•部/WG活動支援
•セミナー講演活動
•書籍執筆活動
•イベント協賛
地方支部
•各地方での勉強会開催
•ハンズオンセッション(実習)
→各支部にお問い合わせ下さい
月例イベント
•毎月開催
•勉強会講演方式
•参加無料
•Android Bazaar and
Conference
•年二回開催(春・秋)
•基調講演セミナー等
•バザール(展示)
•前回2千人
•の動員数
•開催規模
•約100~200名
•ビジネスマッチング
•約100名規模
83
是非ご入会下さい
http://www.android-group.jp/
•個人、法人ともにGoogle-Groupsへ登録するだけです。会則並びに設立趣意に賛同していた
だく以外の作業や費用は、発生いたしません。
84
ご静聴頂きましてありがとうございます

Android 10年の軌跡と将来の展望 ~多様性の爆発を繰り返す10年目のドロイド~