2012.6.9 第5回名古屋Android勉強会 ActionBarハンズオン

第5回名古屋Android勉強会 ActionBarハンズオン
2012/06/09 13:00-17:00
愛知工業大学・大学院 経営情報科学研究科本山キャンパス
講師:ざきさん
http://www.zusaar.com/event/283004


開発環境を整えて望んだつもりが、ビルド後の実行でいきなりトラブル。

ビルドはエラー無し、実行すると
your project contains error please fix them before running your application

eclipse -clean で起動しても状況かわらず。

色々調べたところ、デバッグ用のdebug.keystoreファイルの有効期限切れだった模様で、以下で解決。

debug.keystoreファイルを削除。
ファイルの場所はEclipseの[ウィンドウ]→[設定]→[Android]→[ビルド]の「Default debug keystore」で確認。
再度eclipseの[プロジェクト]→[クリーン]
debug.keystoreが自動生成される


これでかなり出遅れて、
「用意されていた2.x対応のAPKをDIGNOに入れて実行し、
 ActionBarというものがどんなものかを実際に触ってみた」
がメインの成果というちょっと残念な結果に。

ActionBarは自力で使おうとするとかなり難しそう、という印象。
勉強会の資料はサンプルをベースにステップを踏んで丁寧に解説されていて
今後、取り組む際には参考になりそう(今は挫折状態ですが..)

2012.6.23 東海GTUG Google App Engineハンズオン #3

東海GTUG Google App Engineハンズオン #3
2012/06/23 13:00 - 18:00
http://www.zusaar.com/event/302102

#1,#2の続きで
「作れば分かる!Google App Engineプログラミング」の第四章をもくもくと作る

◆書籍情報の補足
・タイトル画面の画像はとってきてフォルダに置く
・WakeupTaskServlet.javaのメール送信処理、setSenderのアドレスをアプリIDに合わせる

◆エラー対応
・ほとんどはスペルミスや記述漏れ
・Deployしたのにサーバエラー(EncodingFilter.javaがない)
 →仕上げ作業の後でビルドしていなかった

◆ログのみかた
https://appengine.google.comでアプリを開き、
左のメニューから「Logs」を選択。
画面右上のTimezoneをAsia/Tokyoに設定。


コードのボリュームが多くて時間ギリギリになったものの、
つまずいたところで少し助けてもらって、なんとか最後まで完成。
ほとんど丸写しで理解できたとは言い難いが
GAEでこんなことができる、というのを実際に動かして見ることができたのは収穫。

今回は、「東海GTUG」の名称での最後の勉強会。
このシリーズの勉強会は一旦区切りで、しばらくの充電期間のあと
リニューアルして再開予定とのこと。

懇親会はゲーム談義で盛り上がりました。

東海GTUG Google App Engineハンズオン #2 (行ったつもり)

東海GTUG Google App Engineハンズオン #2
2012/05/27 13:00 - 18:00
http://www.zusaar.com/event/278004

行けなかったので自習。

◆準備
◇環境設定
Eclipseを3.5(GALILEO)から3.7(INDIGO)へアップデートしたので、1章に従って
環境の再設定から。
日本語にしていないので、英語版の操作をメモ。

・Pluginのインストール
Help - Install new software..
http://dl.google.com/eclipse/plugin/3.7
Google Plugin for Eclipse
SDKs - Google App Engine Java SDK 1.6.6

・設定の確認
 Window - Preference
 Java - Compiler
   Compiler compliance level: 1.6 (変更なし)

ファイルのencoding:
XML,CSSUTF-8になっている。
windows - Preference - General - workspaceでtext encodingをotherのutf-8に設定

参考:http://suntanw.blogspot.jp/2011/09/eclipseindigo.html

◇wwwwgameを実行してみるがエラー
致命的: Received exception processing C:\(略)\wwwwgame\war\WEB-INF/appengine-web.xml
com.google.apphosting.utils.config.AppEngineConfigException: appengine-web.xml does not contain a element.

appengine-web.xmlタグがない、と。
1.6.5リリース以降からエラーになるようになったらしい。
war/WEB-INF/appengine-web.xmlでコメントになっていたtrueを生かすと、開発サーバが無事起動。

新しくプロジェクトを作った時には、appengine-web.xmlのひな形ははじめから上記が有効になっている。

参考:http://d.hatena.ne.jp/t-horikiri/20120508/1336476962


◆第3章に挑戦
XMPP(eXtensible Messaging and Presence Protocol)を使ったIMの送受信アプリ。

開発コンソールでメッセージを送るところまで進むもエラー。
コンソールに"No file found for: /_ah/xmpp/message/chat/"と出ている。
twitterでつぶやいたところ、中垣先生より天の声が。
「web.xmlの設定がされていないか、サーバープロセスが多重起動している可能性があります」
翌日、あらためて試すとあっさりOK。

2章と同じ要領でDeployして、GTalkでえりちゃんに俳句読んでもらいました。

GAEってこんなことも出来るのか〜すごい。

Eclipseアップデート 3.5(GALILEO)から3.7(INDIGO)へ

ADTをr18にアップデートしようと、Eclipse
Help -> Check for Updates
を実行すると
以下のエラーメッセージが出てアップデートが完了しないという問題に遭遇。
The software items you selected may not be valid with your current installation.Do you want to open the wizard anyway to review the selections ?

色々調べるとEclipseが古いのが原因かもしれないようなので、今までGalileoで粘っていたが、アップデートすることにした。

インストール手順:
http://www.eclipse.org/downloads/ からEclipse Classic 3.7.2 をDL。
古いバージョンはeclipse-oldというフォルダ名に変更し、DLしたファイルを解凍してeclipseフォルダにCopy。

eclipseを立ち上げると、スプラッシュに「INDIGO」と出て無事起動。
Workspaceに今まで使ってたところを設定すると、過去につくったプロジェクトもPackage Explorerに出ている。

続いて、ADTをインストール。
Help -> Install New Software -> [Add]
NameにAndroid Plugin、Locationにhttps://dl-ssl.google.com/android/eclipse/を入力Developer Toolsをチェックして[Next]
あっさりインストール成功。

Windows-Android SDK Managerを確認すると、SDKも新しいのが入っている様子。
但し、GAEのはなさそうなのであとで確認する。


ここを参考にしました↓
http://yandroidon.wordpress.com/2012/01/05/eclipseのアップデート/

ドロンくん改造(バック対応)

@Go_711さんの資料を参考に、ドロンくんの回路を拡張。
http://www.slideshare.net/HajimeGoto1/delonkun2

Hブリッジ内蔵のドライバーTA7291Pを2つ使って左右のモータを制御(正転、逆転、停止)するのがポイント。

追加部品はすべて秋月で購入可能。1000円ちょっとで揃う。
 ドライバ TA7291P @150x2
 昇圧型DCDC StepUpDIPVer.2 5/0.2A @500x1
 電解コンデンサ 47μF/35V @10x1
 ブレッドボード EIC-501 @250x1
配線用コードは前に美濃太田のパーフィルで買ったものを使用。

電源ON時にモーターが回ったり回らなかったりするので接触がわるいと思い、勢いでポケットテスタまで買って調べた結果、配線には問題なさそう
→DTMFダイアラーで直接トーンを発生させてみるとあっさり動いた。
電源ON時のモータの動きは、直前の設定を覚えているようだ。

IS03では動いたが、DIGNOでは動いていない。トーンの音量が小さいのが原因な気がするが、大きくする設定がわからないので要調査。
(2012.5.3追記)
「ボリュームコントロールプラス」というアプリで「システム」の音量を上げると上手くいきました。

ドロンくんをプログラム通りに踊らせるアプリ、FreeStyle4Delonも試してみた。
ノーマル(Workshopのキットを組み立てた状態)とバック付きの拡張回路の両方に対応。
https://play.google.com/store/apps/details?id=com.ges_jp.android.freestyle4delon

あとは公式コースにあわせてアプリのチューニングを。

2012.4.15 東海GTUG Google App Engineハンズオン

東海GTUG Google App Engineハンズオン
日時:2012.4.15 13:00-17:30
場所:株式会社ニューキャスト セミナールーム
講師:中垣 健志

http://www.zusaar.com/event/234051

「作れば分かる!Google App Engineプログラミング」の2章をもくもくと写経

◆環境設定
◇Pluginインストール
Eclipseは入っているので(Galileo)、1章に従って
Google Plugin for Eclipse 3.5
Google App Engine Java SDK
をインストール

◇デフォルト文字コードの設定
Galileoには本に書いてある「Web」メニューがない。
CSSXML、HTMLはそれぞれ探してUTF-8に設定。
JSPはTextで拡張子.jspを指定して設定。

Javaのランタイム設定
Android用の環境の「jre1.6」だと2章の文字生成のあたりでエラーになる。
Window-Preference Installed JREs
Addで既に入っているC:\Program Files\Java\jdk... を選んで追加する

◆エラー対応
◇ほとんどはスペルミスや記述漏れ
スタイルシート
 style.cssにスペルミスがあってもエラーにならないが、
 スタイルが反映されない。
 Chromeデベロッパーツールでフォントサイズなどを確認できる。

◆デプロイ
◇登録
認証の過程で、メールが以下のアドレスから届くので
ケータイメールのフィルタを解除しておくのを忘れずに
noreply@google.com

◇デプロイ失敗
web.xmlに日本語コメントが入っているとアップロード時にエラーとなった。
空コメントでもNG。コメント行ごと削除すると成功。


◆その他(今まで知らなかったジョーシキ的知識)
Google Chromeデベロッパーツール
 [F12]またはCtrl + Shift + I
虫眼鏡Clickしてからパーツ上にカーソル持っていく

eclipseでファイル名変更
ファイルを右クリック - Refactor - Rename


本の説明が親切なので、もくもく方式でも手順を追えた。
つまづいたところを質問しながら、デプロイまで体験できて満足。
本には、他にも面白そうなアプリサンプルが載っているのであとでいろいろ試そう。

AIDEを試す

◇DelonKunアプリを端末に取り込めるかお試し

(準備)
1.プロジェクトのファイルをGithubに上げる
 ※日本語はUTF-8にしないと化けるので注意!
  (コメントだけなら化けたままでも良いですが、
   認識単語が日本語の場合は致命的なので対応が必要)
2.端末のGithub viewerでソース一式をDL
 Unzipまでしてくれるので便利!

(AIDE)
3.AIDEを起動
4.メニュー - Files で2でDLしたフォルダを選択
 Open this App Project をタッチするとプロジェクトが開く
5.メニュー - Run
 ビルドが終わるとアプリが起動する

→動いた!簡単!

あとは、ソースを開いて編集→Run

ドロンくんアプリぐらいの小さいプロジェクトで
チョロ替えの結果を試すのに便利そう


Note:
Githubの文字化け対応(Eclipseの場合)
  Window -> Preferences -> General -> Conent Types
Text - Java Source Files
Default endoding : UTF-8 と入れて[Update]
  SJIS部分が化けるので別に開いたエディタからコピペ

・ビルドエラー
 Gitにリソースのbakファイルも入れてしまっていたので重複エラーが出た。
 .bakファイルを削除すればOK