Top Banner
日本Andの会 2011年11月定例会 Ice Cream Sandwich 2011.11.14 山内 洋典@youten_redo ようてん
19

20111114 Ice Cream Sandwich ホットトピック

May 31, 2015

Download

Technology

日本Androidの会2011年11月定例会
Ice Cream Sandwich ホットトピック(前半)

ICSおさらい、EmulatorとAPI Demos他サンプルコード、Random Music PlayerとGridLayoutについて。
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 20111114 Ice Cream Sandwich ホットトピック

日本Androidの会 2011年11月定例会

Ice Cream Sandwich ホットトピック

2011.11.14

山内 洋典(@youten_redo ようてん)

Page 2: 20111114 Ice Cream Sandwich ホットトピック

2

Ice Cream Sandwich

�Android 4.0 Ice Cream Sandwich�2011.10.19 SDK r14リリース

�API Level 14

• 2011.10.28 SDK r15リリース (bugfix)

• 2011.11.11 NDK r7リリース (for OpenMAX AL)

�GALAXY NEXUS�Android 4.0 搭載 Samsung製

�4.65インチ (1280x720) 液晶

�SC-04Cとして日本国内でもNTTドコモから

�2011.11月発売予定

Page 3: 20111114 Ice Cream Sandwich ホットトピック

3

History

Q4Q3Q2Q4Q3 Q1

2011

Q3Q2Q4Q3 Q1

2010

Q1

2008

Q3 Q2Q4Q2Q4 Q1

2009

Q2

2007

iPhone iPhone 3G iPhone 3GS iPad iPhone 4 iPad 2 iPhone 4S

OHA A0SP

SDK 1.0 Cupcake Eclair Froyo Gingerbread Honeycomb ICS

G1

HT-03A

Nexus One

Xperia

X06HT

IS01

IS03

Galaxy S

GALAXY NEXUSNexus S XOOM

Donut

DROID

Page 4: 20111114 Ice Cream Sandwich ホットトピック

4

New Developer Feature

統合UI

Social API

Calendar API

VisualVoicemail API

Android Beam

Low Lv. StreamingOpenMAX AL

新CameraFeature

ロック画面MusicPlayer

新しいメディアとコンテナ

Wi-Fi DirectBluetooth HDP

GridView・TextureView2D描画HW accel.

スタイラス用HoverイベントTextService for spellcheck

Accessibility API新TTSエンジン IF

通信量APIfor 従量課金

新セキュア通信APIASLR

VPN client APIデバイスポリシーCamera対応

WebKit, Media effect,New Sensor,

VM Compaction対応,Property対応Animator,

Page 5: 20111114 Ice Cream Sandwich ホットトピック

5

Emulator

Page 6: 20111114 Ice Cream Sandwich ホットトピック

6

Emulator

�1280x800, density160 (mdpi)でTabletモード

Page 7: 20111114 Ice Cream Sandwich ホットトピック

7

Emulator

Page 8: 20111114 Ice Cream Sandwich ホットトピック

8

API Demos

�API Level 13 (3.2) から削除�.telephony.NetworkDetector

�API Level 14 (4.0) から追加�.app.FragmentCustomAnimations�.app.RemoteService$BindingOptions�.app.ActionBarActionProviderActivity�.content.ResourcesLayoutReference�.content.InstallApk�.view.GridLayout0�.view.GridLayout1�.view.SearchViewAlwaysVisible�.view.Hover�.view.OverscanActivity�.view.Switches

Page 9: 20111114 Ice Cream Sandwich ホットトピック

9

samples android-14

� SDKのsamplesまたはWebを参照�http://developer.android.com/resources/browser.html?tag=sample

� update!�API Demos

�Honeycomb Gallery

�Random Music Player

�SampleSyncAdapter

� new!�Action Bar Compatibility

�Android Beam Demo

�Spell Checker Service

�Spell Checker Client

�Voicemail Provider

�Wi-Fi Direct Demo

�Text To Speech Engine

Page 10: 20111114 Ice Cream Sandwich ホットトピック

10

Random Music Player

�ランダムで曲を選択する音楽プレーヤのサンプル

�Remote control clientに対応

�ロック画面での再生制御が可能に。

Page 11: 20111114 Ice Cream Sandwich ホットトピック

11

Random Music Player

�Random Music Player自体はAPI Level 13で追加�13→14の主な差分

�RemoteControlClientCompat.javaの追加�RemoteControlHeloper.javaの追加

RemoteControlClientクラスが見つかればコンパチクラスに実機能を提供、それ以外は空実装

きれいなリフレクションのサンプル

public static Class getActualRemoteControlClientClass(ClassLoader classLoader) throws ClassNotFoundException {

return classLoader.loadClass("android.media.RemoteControlClient");}

Page 12: 20111114 Ice Cream Sandwich ホットトピック

12

GridLayout

�グリッド状のガイドラインにあわせて、UI要素を配置するためのLayout。

�TableLayoutとはちょっと違う模様。

�Android Developers Blogで紹介されたので詳細はそちらを…。

�API Demos:Views>Layouts>GridLayout

Java(コードによる生成)とlayout XML版があるので比較するとわかりやすい

Page 13: 20111114 Ice Cream Sandwich ホットトピック

13

GridLayout

�グリッドの中に、サイズや論理座標を指定して配置

Page 14: 20111114 Ice Cream Sandwich ホットトピック

14

GridLayout

�グリッドの中に、サイズや論理座標を指定して配置

TextView layout_gravity="center"

TextView layout_gravity="right"

TextView

TextView

EditText ems="10"

EditText ems="8" Button

Button

Spacerow

Span="3"

Page 15: 20111114 Ice Cream Sandwich ホットトピック

15

GridLayout

�GridLayout内の要素�座標(row, column)属性を指定しなければ、自動的に並ぶ。

�layout_width, layout_heightは不要。

�縦横何ブロックをまたがるかはrowSpan, columnSpanで指定。

�サイズ、配置(Align)、マージンは他のLayoutと同様に可能。

�要素の配置位置と"広がり"をlayout_gravity属性で指定。•top, center_vertical, bottom, left, center_horizontal, rightを指定可。

•上記に加えて、GridLayout専用属性が指定可能。– fill 指定グリッド内で上下左右いっぱいに広げる

– fill_horizontal 左右方向のみ広げる

– fill_vertical 上下方向のみ広げる

Page 16: 20111114 Ice Cream Sandwich ホットトピック

16

GridLayout

http://bit.ly/ICSGridTest

�ちょっと触ってみた

Page 17: 20111114 Ice Cream Sandwich ホットトピック

17

GridLayout

�動的にspanを変えたい!

�が、setLayoutParamsすると例外で落ちる

� removeView+addViewはできた�メモリ的には微妙

�1行/1列に2つ以上fillがある際の動作がよくわからない

�そもそもAPI DemosもportraitではButtonが消えてしまう

可能性は感じる、早く実機とソースコードを

Page 18: 20111114 Ice Cream Sandwich ホットトピック

まとめ

Page 19: 20111114 Ice Cream Sandwich ホットトピック

携帯電話・タブレット・テレビさらにその先へ!