日本androidの会 中国支部 第32会勉強会(20130713)

48
2013.07.13 SUGARSPOT Androidにおける HTMLの使いどころ in 日本Androidの会 中国支部 第32回勉強会 13715日月曜日

Upload: shinya-sato

Post on 12-Nov-2014

548 views

Category:

Technology


4 download

DESCRIPTION

日本Androidの会 中国支部 第32会勉強会 2013.07.13 セッション4

TRANSCRIPT

Page 1: 日本Androidの会 中国支部 第32会勉強会(20130713)

2013.07.13 SUGARSPOT

AndroidにおけるHTMLの使いどころ

in 日本Androidの会 中国支部第32回勉強会

13年7月15日月曜日

Page 2: 日本Androidの会 中国支部 第32会勉強会(20130713)

自己紹介

佐藤 慎也

個人事業でAndroidアプリ開発を主とした活動してます

13年7月15日月曜日

Page 3: 日本Androidの会 中国支部 第32会勉強会(20130713)

日本Androidの会中国支部

自己紹介

GDG中国

13年7月15日月曜日

Page 4: 日本Androidの会 中国支部 第32会勉強会(20130713)

アプリ紹介Wepho BNBW きいてみるClippic

おるすばんLW おるすばんSC RapidMail Mapino TimeAjustment

マーケットで「SUGARSPOT」と検索!

Picton BW

13年7月15日月曜日

Page 5: 日本Androidの会 中国支部 第32会勉強会(20130713)

告知

8月18日(日)A8D:1

13年7月15日月曜日

Page 6: 日本Androidの会 中国支部 第32会勉強会(20130713)

昨年の様子

13年7月15日月曜日

Page 7: 日本Androidの会 中国支部 第32会勉強会(20130713)

HTMLの使いどころAndroidアプリにおける

13年7月15日月曜日

Page 8: 日本Androidの会 中国支部 第32会勉強会(20130713)

3つのパターンHTMLを使う

13年7月15日月曜日

Page 9: 日本Androidの会 中国支部 第32会勉強会(20130713)

標準ブラウザを呼び出すアプリ→ブラウザ→アプリ① 標準ブラウザを呼び出すアプリ→ブラウザ→アプリ①

WebView (HTMLをネット取得)②

WebView (HTMLを内包)③13年7月15日月曜日

Page 10: 日本Androidの会 中国支部 第32会勉強会(20130713)

標準ブラウザ呼び出し

パターン1

13年7月15日月曜日

Page 11: 日本Androidの会 中国支部 第32会勉強会(20130713)

アプリからブラウザをIntentで呼び出し

13年7月15日月曜日

Page 12: 日本Androidの会 中国支部 第32会勉強会(20130713)

アプリからブラウザをIntentで呼び出し

ブラウザをユーザーに操作させる

13年7月15日月曜日

Page 13: 日本Androidの会 中国支部 第32会勉強会(20130713)

アプリからブラウザをIntentで呼び出し

ブラウザをユーザーに操作させる

ブラウザからアプリに処理を戻す

13年7月15日月曜日

Page 14: 日本Androidの会 中国支部 第32会勉強会(20130713)

● Webシステムを流用する → 会員登録 → コンテンツの表示

● Webサービスの認証 など

どんな時につかう?

13年7月15日月曜日

Page 15: 日本Androidの会 中国支部 第32会勉強会(20130713)

intent-filterにブラウザからの呼び出しを受け取るよう記述

どうやってアプリに戻す?

<category android:name="android.intent.category.BROWSABLE"/>

13年7月15日月曜日

Page 16: 日本Androidの会 中国支部 第32会勉強会(20130713)

<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/>

<category android:name="android.intent.category.BROWSABLE"/>

    <data android:scheme="hoge"

android:host="registration"/></intent-filter>

<a href=”hoge://registration/12345”>

[HTML]

[AndroidManifest.xml]

13年7月15日月曜日

Page 17: 日本Androidの会 中国支部 第32会勉強会(20130713)

<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/>

<category android:name="android.intent.category.BROWSABLE"/>

    <data android:scheme="hoge"

android:host="registration"/></intent-filter>

<a href=”hoge://registration/12345”>

[HTML]

[AndroidManifest.xml]

13年7月15日月曜日

Page 18: 日本Androidの会 中国支部 第32会勉強会(20130713)

<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/>

<category android:name="android.intent.category.BROWSABLE"/>

    <data android:scheme="hoge"

android:host="registration"/></intent-filter>

<a href=”hoge://registration/12345”>

[HTML]

[AndroidManifest.xml]

13年7月15日月曜日

Page 19: 日本Androidの会 中国支部 第32会勉強会(20130713)

<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/>

<category android:name="android.intent.category.BROWSABLE"/>

    <data android:scheme="hoge"

android:host="registration"/></intent-filter>

<a href=”hoge://registration/12345”>

[HTML]

[AndroidManifest.xml]

プログラムで値を取得

13年7月15日月曜日

Page 20: 日本Androidの会 中国支部 第32会勉強会(20130713)

● 資産が流用できるメリット

デメリット● エラーの際などアプリに  戻らないこともあるかも●標準ブラウザへPOSTできない●オフラインで利用できない

13年7月15日月曜日

Page 21: 日本Androidの会 中国支部 第32会勉強会(20130713)

WebView(ネットからHTMLを取得)

パターン2

13年7月15日月曜日

Page 22: 日本Androidの会 中国支部 第32会勉強会(20130713)

WebView?

13年7月15日月曜日

Page 23: 日本Androidの会 中国支部 第32会勉強会(20130713)

WebView

アプリに組み込んで使える簡易ブラウザ=

13年7月15日月曜日

Page 24: 日本Androidの会 中国支部 第32会勉強会(20130713)

OSのバージョンによって違いがあります

2.1

2.2境界

OSバージョンを判別して

HTMLを切替

13年7月15日月曜日

Page 25: 日本Androidの会 中国支部 第32会勉強会(20130713)

基本的には、普通のブラウザと同じような事ができます

できること

setPluginsEnabled

setJavaScriptEnabled

setBuiltInControls

setSaveFormData

setSavePassword

プラグインの有効・無効

JavaScriptの有効・無効

ズームの有効・無効

フォームデータ保存の有効・無効

パスワード保存の有効・無効

設定で出来ること制限する(以下、一部だけ)

13年7月15日月曜日

Page 26: 日本Androidの会 中国支部 第32会勉強会(20130713)

● 簡単に使える● 出来ることを制御可能● HTMLの部分は分業しやすい● 豊富なJSライブラリが利用可● CSSで見た目を操作しやすい● POSTができる

メリット

13年7月15日月曜日

Page 27: 日本Androidの会 中国支部 第32会勉強会(20130713)

●アプリのバージョンアップを せず見た目や機能を変更可●HTMLなので拡大・縮小表示も 簡単

メリット

13年7月15日月曜日

Page 28: 日本Androidの会 中国支部 第32会勉強会(20130713)

デメリット●反応が遅い(ネイティブと比較して)

●JavaScriptを有効にしてると セキュリティ的に不安あり●OSバージョンで動きが違うかも

●URLが見えない状態だと少し 怖いよね OAuth認証の場合とか、ショッピングサイトとか  本当に正しいサイトにアクセスしてる?・・・不安

13年7月15日月曜日

Page 29: 日本Androidの会 中国支部 第32会勉強会(20130713)

デメリット

●オフラインでは使えない

13年7月15日月曜日

Page 30: 日本Androidの会 中国支部 第32会勉強会(20130713)

案件例●課金&ライセンス確認 → 起動時にライセンスサーバーへ  ・ライセンスがない場合の課金はWEBで

 → ライセンスOKでアプリを利用可  ・ブラウザから戻ってきたら再度ライセンス確認

  ・スキームだけで判断は呼び出し元が保証できない

13年7月15日月曜日

Page 31: 日本Androidの会 中国支部 第32会勉強会(20130713)

案件例●お店のメニューアプリ → メニューはWEBサイト  ・アクセス制御

 → 一定時間操作がないとスクリーン セーバーで広告を表示  ・画面操作の判定

  ・スクリーンセーバーでの広告表示

13年7月15日月曜日

Page 32: 日本Androidの会 中国支部 第32会勉強会(20130713)

WebView(HTMLを内包)

パターン3

13年7月15日月曜日

Page 33: 日本Androidの会 中国支部 第32会勉強会(20130713)

HTML

css

JS

HTMLHTML

JS

css

アプリに含める

13年7月15日月曜日

Page 34: 日本Androidの会 中国支部 第32会勉強会(20130713)

● オフラインでも使える● HTMLなどのダウンロードが 発生しないので少し早い●テンプレートエンジン使うと 動的HTMLも作りやすい

メリット

13年7月15日月曜日

Page 35: 日本Androidの会 中国支部 第32会勉強会(20130713)

デメリット

WebViewのデメリットは同じそのほかに、●アプリサイズが大きくなる●デザインを変更するためには アプリのバージョンアップ

13年7月15日月曜日

Page 36: 日本Androidの会 中国支部 第32会勉強会(20130713)

案件例●グラフの表示 → 色々なパターンのグラフが可能 → 折れ線グラフ、棒グラフの併用 → つかったグラフのライブラリ  ・jQueryのプラグイン「jqPlot」

  ・http://www.jqplot.com/

13年7月15日月曜日

Page 37: 日本Androidの会 中国支部 第32会勉強会(20130713)

実際の動作デモ実機+USB+AndroidScreenMonitor

アプリ「パチ帳スロ帳」

13年7月15日月曜日

Page 38: 日本Androidの会 中国支部 第32会勉強会(20130713)

jqPlot使ってみよう

13年7月15日月曜日

Page 39: 日本Androidの会 中国支部 第32会勉強会(20130713)

サンプルを見てみるアルファシス – alphasis.info -http://alphasis.info/jquery-plugins/jqplot/

13年7月15日月曜日

Page 40: 日本Androidの会 中国支部 第32会勉強会(20130713)

 HTMLの   使いどころ

まとめ

13年7月15日月曜日

Page 41: 日本Androidの会 中国支部 第32会勉強会(20130713)

発注元や利用者にとって

「何で作られてるか」は重要ではない

13年7月15日月曜日

Page 42: 日本Androidの会 中国支部 第32会勉強会(20130713)

「満足度」

13年7月15日月曜日

Page 43: 日本Androidの会 中国支部 第32会勉強会(20130713)

どこで満足度が得られるかそこは人それぞれ

13年7月15日月曜日

Page 44: 日本Androidの会 中国支部 第32会勉強会(20130713)

満足度を得られるポイントに注力するために

楽できる所は楽しよう!

13年7月15日月曜日

Page 45: 日本Androidの会 中国支部 第32会勉強会(20130713)

ネイティブで作ると面倒なとき・作業時間の問題

・費用の問題

・メンテナンスの問題

 使いどころ

13年7月15日月曜日

Page 46: 日本Androidの会 中国支部 第32会勉強会(20130713)

あたりまえのはなしでしたが

まとめは以上。

13年7月15日月曜日

Page 47: 日本Androidの会 中国支部 第32会勉強会(20130713)

気になることは、個別に聞いてください

聞かなきゃ損

13年7月15日月曜日

Page 48: 日本Androidの会 中国支部 第32会勉強会(20130713)

ありがとうございました

マーケットで「SUGARSPOT」と検索!

13年7月15日月曜日