モバイルWebアプリケーションを複数端末で動かすために注意すること...

Preview:

DESCRIPTION

NTTレゾナントさんの「90分で身につくスマホウェブ制作術」で話した資料です。 http://atnd.org/events/42962

Citation preview

モバイルWebアプリを複数端末で動かすために

注意すること

2013.09.1290分で身につくスマホウェブ制作術

@dsuket

About me高岡大介Work

• 外資系SIベンダーを経て研究所へ。• Web技術研究開発・開発支援。• 記事書いたり、資料作ったり、講演したり• Japan Sencha User Group, AITC

twitter: @dsuketfacebook.com/dsuketslideshare.net/dsuket

Inkpod Web

Sencha Touchパーフェクトガイド

Webアプリ作ってますか?

Mobile Web Appイイところ

•IEがない!

•IEがない!•モダンHTML5機能が使える!•

•IEがない!•モダンHTML5機能が使える!•仕事で新しいデバイスが使える!

Mobile Web Appイヤなところ

•端末サイズバラバラ

•端末サイズバラバラ•細かい動きが全然ちがう•

•端末サイズバラバラ•細かい動きが全然ちがう•バッドノウハウの塊

本題

モバイルWebアプリコンテストに出してみた

事例ベースにノウハウと苦労話など

コンテンスト概要•ドコモゼミ Webアプリラボ•マルチプラットフォーム対応•子供向け学習アプリ

Mobile Webの注意点

Mobile Webの注意点

•画面小さい: MBA 13” の 0.12倍

Mobile Webの注意点

•画面小さい: MBA 13” の 0.12倍

•タッチUI: マウスとは異なる操作

Mobile Webの注意点

•画面小さい: MBA 13” の 0.12倍

•タッチUI: マウスとは異なる操作

•回線細い: 遅い、不安定

Mobile Webの注意点

•画面小さい: MBA 13” の 0.12倍

•タッチUI: マウスとは異なる操作

•回線細い: 遅い、不安定

今日のスコープ

気をつけたこと

気をつけたこと

1. ボタンは大きく押しやすく

気をつけたこと

1. ボタンは大きく押しやすく

2. 解像度に合わせた画像

気をつけたこと

1. ボタンは大きく押しやすく

2. 解像度に合わせた画像

3. かわいいフォントを使いたい

気をつけたこと

1. ボタンは大きく押しやすく

2. 解像度に合わせた画像

3. かわいいフォントを使いたい

4. アイコンもキレイに

1. ボタンは大きく押しやすく

1. ボタンは大きく押しやすく

•ずれているタッチポイント• 参考:タッチUXを実現する7つのポイント

1. ボタンは大きく押しやすく

•ずれているタッチポイント• 参考:タッチUXを実現する7つのポイント

•スマホは不安定• 片手で or 満員電車で or 歩きながら

1. ボタンは大きく押しやすく

•ずれているタッチポイント• 参考:タッチUXを実現する7つのポイント

•スマホは不安定• 片手で or 満員電車で or 歩きながら

•子供は加減を知らない• 目一杯押すのでドラッグになる

ボタンの当たりエリア

ボタンの当たりエリア

実際のサイズ

ボタンの当たりエリア

実際のサイズ

当たりエリア

tapイベント

tapイベント

tapイベント

• clickイベントは使わない

tapイベント

• clickイベントは使わない• dragの閾値

tapイベント

• clickイベントは使わない• dragの閾値• Hammer.js が便利

2. 解像度に合わせた画像

2. 解像度に合わせた画像

•Retina対応

2. 解像度に合わせた画像

•Retina対応•画面一杯に表示したい

2. 解像度に合わせた画像

•Retina対応•画面一杯に表示したい•ファイルサイズはできるだけ小さく

SVG (Scalable Vector Graphics)

•パスデータをXMLで定義•伸ばしても、Retinaでもキレイ!•シンプルな画像ならpngよりも軽い• gzipもできる•アニメーションもできる

同じSVG画像を使用

アニメーション

•ひらがなの書き順• Pathを伸ばしながら描画• SMILも使える

SVGの注意点

•やや重い(CPUを喰う)•複雑なパスはサイズが大きい• 軽量化が必要。パスの最適化など•ブラウザによって微妙な差異がある

IMGタグで使用した時の問題

IMGタグで使用した時の問題

IMGタグで使用した時の問題

一部のAndroidで、アスペクト比が狂う

SVGタグのサイズ指定が重要

<IMG SRC=”rama.svg”

width=”300” height=”300”>・・・

<svg

width=”600” height=”600”>・・・</svg>

rama.svg

index.html

viewboxsvg

img

3. かわいいフォントを使いたい

3. かわいいフォントを使いたい

•Android標準フォントはダサイ•Web Fontできれいなフォントを

3. かわいいフォントを使いたい

•Android標準フォントはダサイ•Web Fontできれいなフォントを

•SVGでオリジナルフォント作成

fontの作り方

fontの作り方

• SVGでフォントのアウトラインを作成

fontの作り方

• SVGでフォントのアウトラインを作成

• FontForgeで変換

fontの作り方

• SVGでフォントのアウトラインを作成

• FontForgeで変換

•日本語フォントは大変• ダイナミック・サブセッティング

4. アイコンもキレイに

4. アイコンもキレイに

•Web Font をアイコン代わりに• retinaにも対応

4. アイコンもキレイに

•Web Font をアイコン代わりに• retinaにも対応•色んなアイコンセット• Font Awesome• IcoMoon

4. アイコンもキレイに

•Web Font をアイコン代わりに• retinaにも対応•色んなアイコンセット• Font Awesome• IcoMoon

Web Fontアイコン 注意点

Web Fontアイコン 注意点

•色は変更可能グラデーションはかけられない

テスト

テスト•複数端末での確認が大変

テスト•複数端末での確認が大変•実機でしか出ない問題など

テスト•複数端末での確認が大変•実機でしか出ない問題など•特にAndroid

テスト•複数端末での確認が大変•実機でしか出ない問題など•特にAndroid

まとめ

まとめ

•タッチUI の特性を理解する

まとめ

•タッチUI の特性を理解する•SVGは使える子

まとめ

•タッチUI の特性を理解する•SVGは使える子•実機で確認が大事

まとめ

•タッチUI の特性を理解する•SVGは使える子•実機で確認が大事•Android爆発しろ!!

Recommended