Cat Dev It!

develop apps

ドラコイ楽しいよ!

SEGAのやつチェンクロ、ドラコイやってるんだけど、後発のチェンクロはパズドラをパク・・・参考に儲かってるモデルで設計してるからストアランキングも上位だしゲームもよいのでいいんだけど、ドラコイは酷い。それはもうとにかく。
コイン落としという定番でいってるのにあまり伸びない。なぜか。
問題が色々あるから。ここ最近で急な改善がされたんだけどやっとマシになったレベル。

以前までの仕組み

ガチャなどに使うコインが
\配られない/

どうにか貯めたコインでガチャをしても
\SRが出ない/

課金してガチャをしても
\SRが出ない/

キタ――(゚∀゚)――!!SR!!!
\ホモ 海パン/

最近始めた人には理解できないでしょうが、事実です・・・
マジカルガチャというやばいのがきて、一気に集金モードに入り、ああサービス終わるんだとガチで思ってました。
マジカルで海パンを回しまくってしまったのだ・・・
それが9月末で半期終わり、体制が変わったのか現在のように。

以前、評価できたのは死ぬほど面倒だが確実なSR+がもらえるG+ドラ必須イベかな。
サクラノミコ終了間際に始めたのだが、それ以降は大体参加している。
コウリュウさんは糞ステだがオウゴンチョウが出たので大活躍!
コウリュウさんのときの玄武とかR+のステも高いので有用です。そこがピーク!

今はランキングで時間がギリギリ。
アニバーサリーとか人が多くなったのか酷すぎた。直前の気合薬パックもあったからだろうが、信じられない勢いだったわ。もうそろそろだめぽ・・・
ただ、以前と比べれば大分改善が見られるからもうちょっと辛抱・・・か?

ソシャゲ三昧

あんまりがっつりとゲームって難しくてねえ
PS3とかWii Uとかほこり被ってる・・・

電車でもさらっとできるのだとソシャゲに落ち着いてしまった。とはいってもモバゲGREE全盛期のものとは違ってちゃんとゲームしてるからね。
以前はクソゲーの極み。クリックゲー過ぎて作ってたとき萎えてたわ。
ユーザ側を考えてとか開発時言われても、受注しないのがユーザにとって幸せなんですけど(;・∀・)とか口が裂けても言えないわ・・・w

今ではパズドラ筆頭にちゃんとしたものになってよかったよかった。

というわけで今やってる主なもの

  • パズル&ドラゴンズ(パズドラ) ランク262
  • チェインクロニクル(チェンクロ) ランク54
  • ドラゴンコインズ(ドラコイ) ランク75

平均以上にはやっているという・・・
時間ねえとか嘘じゃん!みたいに見えるわ。でも通勤片道2時間だからね。ひどいね。

パズドラは石ガンガン配るスタンスで人気出たんだよね多分。ゲーム部分もしっかりしてるし、カード全盛では考えられなかった仕様。
ちゃんと課金する人は課金してくれるという、この業界の大発見かねえ。


まあゲームいろいろ書いていきます。

おひさ

いやはや放置して1年近くなってしまった・・・w
開発のモチベーションが下がる会社にいるからつらいわー
法律を常に盾にして行動するのってイライラしかせんわ

もうやだわあ



あとでVolleyとかいじってみよう。
通信のキャッシュとかいろいろ苦労したからなあ(;・∀・)

あとはゲームばっかしてるからそういうのも書いておこう。
開発系ブログとかネタないと無理だったわ・・・w

オープンで露出狂なAndroid

なんだか久しぶりに更新。
Android開発において重要なことは元のソースコードをみること。オープンソースで見放題なので何かしら出くわしたらすぐに見る癖をつける!重要です(`・ω・´)シャキーン
例えば、アンドロでHTMLのWYSIWYG作るのって簡単そうでしょ?WebView+Javascriptライブラリ使用で3秒でできちゃうレベル!でもそれだけじゃね(´・ω:;.:...
ちょっと調べるとEditText+Html.fromHtmlでできる!簡単そう!!!
色とかフォントとかボタンでぽちぽち変えられるようにして、はい完成!
HTML読み書きもちょちょいのちょい。HTMLが簡単に作れるよ!パーペキじゃん!
と、罠が待ってます\(^o^)/オワタ
これで書き出したHTMLを再度読み込んでよく見てみましょう。きっと保存にはHtml.toHtmlを使用した実装でしょう?なにかおかしいことが起きるはず。気づかなければテストが足りないですね。ケータイ小説ばりの妙な改行連打をしてみましょう。

今日は

いい


天気



だ

みたいな感じです。改行がバッサバッサとやっつけられてしまうはずです。
と、ここでやっと本題。Androidのソースコードを見ましょう。Html.javaです。
Html.javaのtoHtmlからwithinなんちゃらみたいなメソッドを追っていくと改行コードをbrタグに変換する処理にぶち当たります。そして、そこでは連続している改行の数によって生成するタグの数が可変しています。
1個のときと3個のときが同じじゃねえかヽ(`Д´)ノウワァァァン!!
2個のときbrタグが消えてるじゃねえかゴ━━━━(# ゚Д゚)━━━━ルァ!!ってなります。
つまり連続する改行の数が

1個のとき=brタグ1個
2個のとき=brタグ0個
3個のとき=brタグ1個
n個のとき=brタグn-2個

( ゚д゚)ハッ!改行が2個以上なら改行コードを2個水増しすればいいんじゃね?
というやっつけ仕事に近いような解決策を見出すのです(本当か?w
Html.toHtmlの前にEditTextから取得したテキストに対して連続する改行を調べ、2個以上なら¥n¥nを追加する・・・
解決がこれで正しいかは分かりません。でもサポートライブラリの錬金術を考慮すれば割とスマートな解決なんですよ。僕の中では。
Android大好きなので頑張ってください(´;ω;`)ブワッ

本気出した

明日から本気出すをどれだけ続けていたことか。
仕事がいけないんだー(ノ`Д´)ノ彡┻━┻
アプリをマーケットに出そう!という目的で頑張る。
ちゃんとTODOにいつまでに設計・実装を登録して実施中。
(すでにタスク期限切れてるんですけどね・・・)

話かわって、Androidってかなり流れが速いですね。すごく痛感します。
DefaultHttpClientはもうそろそろHttpURLConnectionに変えたらいいよ!
RadioButtonにandroid:button="@null"とかぬるぽで落ちる端末あったよ!
Fragmentsとかうちじゃ使われてないよ!!!(考えが古くてついていけてない

不可解な機種依存が多いよ。けど情報がないよ。時代が追いついてない。
シェアが多そうなGalaxy系はいいんだけど、その他機種が本当にない。あっても大体会社のノウハウで出てないんだろうな・・・
そういうわけでエラー報告機能は実装必須だよ。
工数がうんぬんかんぬんとか言われるけど、首締めるだけだから。マジで。
納品してあと知らないとか、品質にこだわりなく行き当たりばったりとか、エスパーとかならもうそれでおk。
常識人ならエラー報告は作る。目先の欲はダメ、絶対。
エラー報告の際に気をつけるのがproguardしてる場合はproguardフォルダ内のseed.txtとかのファイルは管理必須!
あれ無いと死ぬ(a.a.aとかなにそのメソッド)から、リリース前に3人ぐらいでチェックしたほうがいいよ。コミット忘れとか。
もしくはリリーススクリプトなり組むのが安全だよ。
エラー報告実装で検討するのがメール送信かHttp送信か。
メール送信は若干ユーザーの敷居が高い。メアドとかの個人情報があれなので。Http送信はWebと一緒にやっていれば特に問題ない。
どっちがいいかは考えよう。

端末いっぱい欲しいです(^p^)

Nexus7を購入

Nexus7を購入しました。
GooglePlay 26日0時頃購入組ですが、まだ届いていません。発送がけっこう問題になってるようで酷いのは25日すぐの人みたいですね。ただ、トラッキングはもうすぐっぽいので気長に待ってます。気になるのは海外発送と知らずにGoogle Walletを日本語で登録してしまったこと。これだったらわざわざGooglePlayから購入する必要なかったなぁ。秋淀とかで買えばポイントもつくわけだし。

もう届いていじり倒す予定が狂ってしまったので端末いじり。
IS01の既存のCM4IS01は置いといて、ICSを導入しました。
導入理由はNova Launcher Primeが¥25セールで欲しかったから(ノ∀`)
重いのはわかってたけど、めっちゃ重い。あんまり使えないかな。
あとはICONIA TAB A100を3.2.1にアップデート。
アップデートするとイヤホン刺しててもスピーカーから音が鳴る問題が修正されるようなので入れてみた。

Nexusたんまだかなまだかな((o(´∀`)o))ワクワク

Androidの設計

設計が難しい。
Fragmentがいけてる感じみたいだけど、使ったことがないからわからない。もっともAndroidの経験自体かなり浅いからなんだけど(ノ∀`)
行き当たりばったりで今はActivity毎にモデルクラス置いてgetModelする感じ。モデルはActivityを参照してActivityにコードを書かないようにしてた。
でもこれだとベースのモデルクラスがめっちゃでかくなるよね。あと致命的なのがメモリ不足時の復帰。startActivityForResultでモデル内のActivityの参照から呼ぶとアボーンした時onActivityResultが返ってこなかった!
これは変数でやらないでthis.startActivityForResultでActivityのクラス内から呼んだらいいらしい。(まだ確認していないのですが、困ったときのstackoverflow)
startActivityForResultをメソッドでラップするのはいけてない!モデルではIntentの生成に留めてあとはActivityさんに任せる。Activityさんの仕事のとり過ぎはよくない(`・ω・´)
なんかApplicationクラスを作ってstaticなContextをやるのもいけてないのかな。
アプリ全体の設定はアプリケーションコンテキストから取得するわけでgetSharedPreferencesとかstaticで欲しいよ。あとはアクティビティコンテキストとの紛らわしさから逃れられるし。
日々試してみるしかないですね・・・