android 音声 twitter システム voitwi の開発
DESCRIPTION
12月4日(土) 横浜ストリームアドバンスト講座 【F】Androidアプリ開発講座 2日目 - 3/4TRANSCRIPT
![Page 1: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/1.jpg)
Android 音声TwitterシステムVoiTwiの開発
慶應義塾大学大学院 政策・メディア研究科 博士課程1年
上野大樹 @wilfue
2010年12月4日土曜日
![Page 2: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/2.jpg)
自己紹介名前:上野大樹所属:慶應義塾大学大学院 政策・メディア研究科 博士課程1年Twitter:@wilfue
ソーシャルメディアやユーザインタフェースの研究をしています最近は、Android開発などもやっています
2010年12月4日土曜日
![Page 3: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/3.jpg)
VoiTwiとは?• Androidケータイ用音声Twitterクライアント
• 音声で閲覧(TLを音声でしゃべる)
• 音声で投稿
• 音声を文字起こしして投稿
• 音声を録音して投稿
• ジェスチャー操作も可能2010年12月4日土曜日
![Page 4: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/4.jpg)
なぜこれを作ったか• TLを見るのが面倒になってきた
最初は勉強のため作りはじめた
• 街中でケータイに打ち込むのは面倒
ケータイが勝手にしゃべってくれればいい
電話みたいにしゃべるのが最速
2010年12月4日土曜日
![Page 5: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/5.jpg)
なぜAndroidか?• iPhoneアプリかAndroidか
• Androidの方が開発しやすかった
• 今後、Androidアプリはますます流行ると予想
スマートフォンからのTwitter利用は、大きく伸びていくでしょう!
2010年12月4日土曜日
![Page 6: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/6.jpg)
iPhoneアプリ開発とAndroidアプリ開発の比較
iPhone Android
開発環境構築実機での開発は申請が面倒
実機で即開発可能
開発環境 xCode Eclipse
プログラミング Objective-CCocoa
JavaAndroidライブラリ
インタフェースキレイなUIを実現しやすい
キレイなUIを実現しくい
公開 審査が厳しめ 審査なし
PhoneGap、App Inventorなどを利用する手もある
→◯
→☓
→△→◯→◯
→☓
→◯
→◯
→◯→☓
2010年12月4日土曜日
![Page 7: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/7.jpg)
今回の開発環境• 一般的なAndroid開発環境
• Eclipse+Java
• 最初はエミュレーターで開発
• 慣れてきたら、実機のみで動作確認
• USBで接続して、一瞬で動作確認可能(エミュレーターは不要)
2010年12月4日土曜日
![Page 8: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/8.jpg)
どうやって勉強・開発したか• Android本で基本を勉強
• Androidでできる基本機能一覧
• Activity、Intent、サービス、etc
• Web上のサンプルソースを利用
• Androidの公式リファレンスを利用http://developer.android.com/reference/packages.html
• Androidの外部ライブラリを利用
2010年12月4日土曜日
![Page 9: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/9.jpg)
デモ
2010年12月4日土曜日
![Page 10: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/10.jpg)
仕組み
TwitterAPI
Android
TL取得・投稿
音声録音データ
TLと音声データをURLで紐付け
Webサーバー
•音声合成でTLを再生(日本語の音声合成には、外部ライブラリを利用)•音声認識で発声を文字に変換
音声データ保存・配信
開発中
2010年12月4日土曜日
![Page 11: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/11.jpg)
機能一覧• Twitterクライアント
• 基本的な機能
• 音声投稿(文字おこし)
• 音声投稿(録音)
• 音声読み上げ
• ジェスチャー操作機能
• その他2010年12月4日土曜日
![Page 12: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/12.jpg)
Twitterクライアント• Androidプログラミングバイブルのソースコードをコピったら一瞬で完成
• OAuth対策だけ少し面倒だった
※ただし、機能を追加していくには、Androidプログラミングの理解が必要
2010年12月4日土曜日
![Page 13: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/13.jpg)
基本的な機能• ボタン:Android本で一瞬
• メニュー:Android本で一瞬
• 画面の文字表示:Android本(略
2010年12月4日土曜日
![Page 14: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/14.jpg)
音声投稿(文字おこし)• Androidの公式リファレンスを利用
• Android本をコピって終了
2010年12月4日土曜日
![Page 15: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/15.jpg)
音声投稿(録音)• 録音機能はAndroid本をコピって終了
• 音声ファイルの再生もAndroid本をコピ(略
2010年12月4日土曜日
![Page 16: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/16.jpg)
音声投稿(録音)つづき• 録音ファイルのサーバへのアップロードサーバサイドのPHPファイルで保存
• サーバへアップロードした録音ファイルのダウンロードWeb上のサンプルコードを参考に
• この辺りは基本的にHTTP通信でファイルをやりとり
2010年12月4日土曜日
![Page 17: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/17.jpg)
音声読み上げ
• Androidの公式リファレンスは英語のみ対応
• そのため外部ライブラリを利用
• Android JaTTS
• ドキュメントトーカ for Android
適当にググって下さい
2010年12月4日土曜日
![Page 18: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/18.jpg)
ジェスチャー操作
• Androidの加速度センサーを利用
• 横方向(X軸)の加速度を取ってレコメンド
• 縦方向(Z軸)と回転の加速度を取って、録音して投稿画面へ
2010年12月4日土曜日
![Page 19: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/19.jpg)
その他• リスト機能
Twitter list apiを利用
• メニューの画像デフォルトで利用出来るアイコンのまとめサイトを利用
• 画面遷移などIntentを利用
2010年12月4日土曜日
![Page 20: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/20.jpg)
Android開発における注意点
• AndroidManifest.xmlに気をつけろ!!
• Activity、Intentを理解することが肝
• Javaの高度な知識は不要
• extends(継承)、 implements(実装)の理解は重要
2010年12月4日土曜日
![Page 21: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/21.jpg)
今後の予定• 録音音声配信機能改良
• リプライ機能など?
• インタフェースの改良
• 細かいバグチェック
• Androidマーケットに公開
2010年12月4日土曜日
![Page 22: Android 音声 Twitter システム VoiTwi の開発](https://reader034.vdocuments.site/reader034/viewer/2022050801/54829a98b4af9f640d8b480e/html5/thumbnails/22.jpg)
まとめ• Android音声Twitterクライアントを開発
• Android開発はAndroid本さえ(略
• Androidの公式リファレンスを使えるようになれば、非常に強力!
• AndroidManifest.xmlに気をつけましょう
何かあれば@wilfueまで2010年12月4日土曜日