カテゴリー: eclipse

何してたんだっけ…(´・ω・`)?

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


取り敢えず、eclipseに出戻る(・∀・)

今回はPleiades All in oneではなく、英語版のJava版を落として来て、
Pleiades.zipを解凍して「plugins」と「features」のフォルダと
「eclipse.exe -clean.cmd」をコピーする方法にした。

“-javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar”のみを
eclipse.iniに追加し、”-Xverify:none”を追加しなかった為にハマった(ノ∀`)


eclipseから直接gitoliteからプロジェクトを取ろうとしてハマる(ヽ’ω`)
上手く行かず、結局、git for windowsでcloneしてから、それをインポートした。
gitolite-adminを先にcloneしないと駄目ということなのだろうか(´・ω・`) ヨクワカラン

admobを使っているのでgoogle-play-serviceをインポートしてライブラリの
指定をし直す。

取り敢えず実機で起動させてみる。動いた(・∀・)


何処までやっていて、何をやらなきゃいけないのか忘れてしまった…(“・ω・゙)
最早他人と化した別れた妻のように余所余所しいソースコードを眺める…

眺める…

( ゚Д゚)ピコーンッ!
わかった、横方向にした時のコントローラの位置の調整だった。
あー、結構面倒くさいんだよな、これ…


ようやくプログラミングを再開する状態になった(`・ω・´)

事の起こりは…

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


レイアウト用のxmlでグラフィカルレイアウトが表示されないことだった…(ヽ’ω`)

Failed to load properties file for project 'MainActivity'

みたいなエラーが出てた。
 
ぐぐる。
プロジェクトを右クリックして[Android ツール]-[プロジェクト・プロパティーの修正]
をすると直るらしいようなことがあったので試したが直らない(´・ω・`)

しょうがないので取り敢えず放っておいて、警告の
“キーバインドの競合が発生しました。 通常のアクセラレーター操作を妨げる可能性があります。”
の方をぐぐる。これは[ウィンドウ]-[パースペクティブのリセット]で直った。


冒頭のエラーについて再びぐぐるがどうもよく分からない。
ADTプラグインを一旦削除して再インストールすると良いというようなことが書いてあったが
面倒くさいなぁと迷う。

そこで脈絡もなくSDKマネージャを起動して更新してみる。幾つかのアップデートがあった。
eclipseを再起動する。
 
 
 
 
 
 
エラーの嵐がΣ(゚∀゚;)

SDKのアップデート後は[ヘルプ]-[更新の確認]をしてねというメッセージがあったのを
思い出し、一縷の望みをかけて更新の確認を実行して再起動する(`・ω・´)
  
 
 
 
 
あかん、また再構築か…_| ̄|○


と思ったが、よくよく見るとエラーを吐いてるのは2つ。どちらもadmobを使っていて、
Rを解決出来ないエラーが沢山出ている。ソースも何も変えてないのにRを解決出来ない…?

取り敢えず

No resource found that matches the given name 
(at 'value' with value '@integer/  google_play_services_version').

でぐぐるとEclipse でgoogle_play_services_version が見つからないのが
原因であることがわかる。

何もしてないのにおかしくなったこれはバグですか(・∀・) ← 今回はアップデート以外本当

何もしてないのにRが解決出来ないエラー ← xml絡みでなんかある

xmlでgoogle_play_services_versionというリソースがないというエラー ← 入れてあるのに

エラーが出てるのはadmobを使っているもののみ、つまりgoogleplay servicesを使用

プロジェクトのライブラリー参照を見てみる
updateerror01
これか…(ヽ’ω`)

よくよく見たら、パッケージエクスプローラ上でもおかしい表示になってるな…
updateerror02

というわけでパッケージエクスプローラ上からgoogleplay servicesを一旦削除して
再びインポートしたらエラーが消えた(・∀・) ライブラリー参照は削除して設定し
直したかどうかは忘れた(ノ∀`)


マニフェストファイルに<meta-data>等で記述があるライブラリプロジェクトが
更新された場合にエラーが発生したら、同じようにすれば修正出来るということか。

また関係ないことで時間を潰してしまった…_| ̄|○
そう言えば冒頭のエラーもなくなってグラフィカルレイアウトが表示されるように
なっているな…あれは一体何だったんだ…(ヽ’ω`)

※2015/05/08追記
本質的な解決ではないのかもしれないがグラフィカルレイアウトを表示させることが出来た

今年度こそは本気出す(`・ω… ※続きを読むにはクリックして下さい

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


危うく去年の4/1のエントリと同じタイトルにするところだったぜ、ふぅ…(;´・ω・)

去年の宣言はエイプリルフールだったようで(ヽ’ω`)
USO800理論で考えると、今年は仕事を探さないと宣言すべきなのか
とか悠長なこと言ってられないな(ノ∀`)

ねこあつめの英訳みたいなことをしていてAndroidの翻訳の方を忘れてた(ノ∀`)

気がついてみたら一年の1/4が終わってるΣ(゚∀゚;)
しかもまだ音楽プレーヤー絡みではまってる……_| ̄|○


ActivityManagerという名前のクラスが元々存在することを知ってショックを受けたり、
ActivityGroupというクラスがあるのを知ったが、未だに手を出してなかったり。

複数のActivityから音楽再生をするサービスを使用しようと思いたったが、
その場合、bindService()だと何かと処理が煩雑になりそうなのでstartService()で
処理できないかとぐぐる。Google ブックスで引っかかった本の内容に音楽再生などの
場合はstartService()ではなくbindService()を使いましょうみたいなことが書いてあって
ちょっと悩んだが、startService()を使用した音楽プレーヤーのサンプルを実機で試したところ、
動作には問題がないようだったので、そちらの方に舵を切る。

試行錯誤の結果、サンプル通りにIntentを飛ばす形で再生出来ることは確認出来た。


ここに来て、コントローラをどうするかで悩む。サンプル通りにボタン配置にするか、
MediaControllerを使うか…いずれにしても各アクティビティ上に配置する必要はある。

取り敢えずMediaControllerにしてみた。しかしながら、なぜかBackButtonを拾えない。
色々と試してみたが駄目くさい。そもそもこいつが何物なのかがわからないw

そもそもなんでこいつインターフェイスでMediaController.MediaPlayerControlみたいな
形なんだよ、バーヤバーヤヽ(`Д´)ノとなる。

更にインターフェイスなら何とどうつながってるんだよバーヤバーヤヽ(`Д´)ノと思いつつ、
MediaControllerのソースを読み進んでいたら、確かに中に居たw なんでこれで
動くんだよバーヤバーヤヽ(`Д´)ノと怒りながらもそれを利用するコードを眺めてるうちに
ロジックはともかくそういう形なのだなということはわかったような気がしてくる。

更に、ネストしたインターフェイスでぐぐってヒットした、
【改訂版】Eclipseではじめるプログラミング(17):あなたの知らない、4つのマニアックなJava文法 (3/3)
【改訂版】Eclipseではじめるプログラミング(16):“ネスト”した型で始める軽量Javaプログラミング!? (3/3)
10-6. ネストしたクラス – マンガで分かる Java入門講座
辺りを軽く眺めてなんとなく理解したような気になる(`・ω・´)

それでまぁ色々と彷徨ううちに
how to create custom UI for android MediaController
Custom Android media controller | Brightec, Brighton, UK
に行き着き、これをちょこっと変えて流用してる最中…
media playerを内部で使ってるタイプのコードなので改変が大変…(ヽ’ω`)


関係ないがeclipseへのインポートでちょっとだけはまった。eclipse向けのファイル?が
ないとlaunchされるアクティビティの名前でインポートされるらしく、たまたま、前に
インポートしたプロジェクトもそういう感じでlaunchされるアクティビティがMainActivityという
名前だったが為に

Cannot import MainActivity because the project name is in use

というエラーが(´・ω・`) きちんと読めば、インポート出来ない理由はプロジェクト名の
重複ということはすぐわかるのだが、なんでMainActivityというのが出てくるのかわからず、
そっちの方に意識を集中してしまったが為に時間がかかった(ノ∀`)

ちゃんとした回避策がわからなかったので、一度解凍して、AndroidManifestファイル内の
launch指定されているActivityの名前を一時的に変えてインポートし、インポート後に元に
戻したw


これ早く終わらせないと…(ヽ’ω`)

eclipseでtab( > ←こいつ)を非表示にする(´・ω・`)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


なんとなくテーマを変えて背景を黒っぽいのにしようと思い立つ(`・ω・´)

変更する → tab(>)の表示にイラッと来る(#^ω^) → ぐぐる →
ヒットしたことを試す → なぜか消えない → むっきーヽ(`Д´)ノ

試したことは
「設定」ダイアログの[Java]-[コード・スタイル]-[フォーマッタ]-<編集>ボタン →
「~プロパティ」ダイアログの「インデント」タブの「一般設定」セクションの「タブ/ポリシー」を
“タブのみ”にして<適用>
みたいな操作手順。

でもうちのeclipseでは>が消えないヽ(`Д´)ノ


色々と設定を眺めた結果、[一般]-[JStyle]の「タブ」のチェックを外せば良いみたい。
JStyle

tab-display
     ↓
tab-nodisplay


なんでうちのeclipseでは消えなかったのか不明だが、何はともあれ良かった良かった(・∀・)