揉み消すのではなくて、解決がしたい!Bugsnagで!
「スピード感が大事」という錦の御旗を掲げ、実行中の例外を揉み消すという後ろめたい行為をしているAndroidアプリ開発者の方は少なくないはずです。もちろんそういったアプローチの妥当性の是非についてここで僕が改めて言及しなくても、各人の胸の奥深くで力強く輝くAndroiderな魂が「本当に大切なこととは何か?」と常にみなさんへ問いかけてくれていることでしょう。 (まー、問いかけられてもね。目の前に広がる光景が焼け野原的な絶望風景だったら「これが現実じゃん。夢とか語ってもガキなだけじゃん」って開き直っちゃうだけなんですけどね)
続きを読むコミックリーダーアプリのUI/UXの検討実験(Android)
前回の続き。
前回はコンポーネント要素的にはViewPagerとNavigationViewのみで構成されるミニマムなコミックリーダーアプリを作ったが、あのミニマムな造りに構造的な厚み(階層を増やす)を与えて、もう少しリッチなコミックリーダーアプリにしたい。
続きを読むミニマムなコミックリーダーアプリを作った(Android)
知人がiOSでアプリ開発の鍛錬(ひたすら作る)をしているのに影響を受け、Androidでトライしてみる。 仕事で作っているものとは対局ジャンルで1つアプリを開発してみた。
続きを読むGA拡張Eコマースのプロモーション計測における内部クリック率の正しい取り方:Android編
Enhanced Ecommerce Tracking - Android SDK v4 でプロモーション計測における内部クリック率を計測するコードが、下記のように紹介されている。
Promotion promotion = new Promotion() .setId("PROMO_1234") .setName("Summer Sale") .setCreative("summer_banner2") .setPosition("banner_slot1"); ProductAction promoClickAction = new ProductAction(Promotion.ACTION_CLICK); HitBuilders.EventBuilder builder = new HitBuilders.EventBuilder() .addPromotion(promotion) .setProductAction(promoClickAction) .setCategory("Internal Promotions") .setAction("click") .setLabel("Summer Sale"); Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker( TrackerName.APP_TRACKER); t.send(builder.build());
しかし、こちらのコードは誤りのように思える。
続きを読む第19回potatotips(iOS/Android開発Tips共有会)に参加しました
第19回potatotips(iOS/Android開発Tips共有会)にブログまとめ枠で参加してきました。
今回の会場提供・主催者はクックパッド株式会社さんです。
オフィス、物凄く素敵でした。
5分間という制限時間の中でiOS/Androidに関するTipsを発表(Lightning Talk)する勉強会も今回でなんと19回目。息の長い勉強会ですね!
続きを読むDroidKaigiで登壇しました
DroidKaigiで「大容量データのダウンロード戦略」というお題で登壇しました。
https://droidkaigi.github.io/2015/
発表資料は下記の通りです。
強制的にアプリをアップデートさせたい
リリースしているアプリに致命的なバグが発生した場合、それを修正してGooglePlayへリリースしたとしても、ユーザさんがその修正バージョンへアプリをアップデートしてくれるとは限りません。
致命的なバグが残るバージョンを利用したままのユーザさんの数は意外に多く。そういったユーザさんによる低評価レビューに頭を悩ますアプリ運用者は少なくないはずです。 ああ、強制的にアプリをバージョンアップさせたい!
というわけで、強制アップデート機能を3行で導入できるライブラリMSBVersionUpdaterを作りました。
続きを読む