Continuity is The Father of Success

Androidアプリとかゲームとか。毎日続けてるものについて。

Android

GraphQLにPOSTをしてみる

GraphQLのリクエストをapollo-androidとRetrofitでそれぞれ実装してみました。 github.com なのだけれど、実装中にGitHubのGraphQLドキュメントを読んでたら大半書いてあったので、多分こっちを隅から隅まで読んでもらう方がいいブログです。 やっぱり公式ド…

Danger-JS + Android Lintの話

Danger-JSにAndroidLintを動かすプラグインがぱっと見なさそうだったので、TSの勉強も兼ねて作ってみました。 github.com 作る中で学んだこととか、考えたことなどをまとめておきます。 Danger 2つのDanger Android LintとDanger プラグイン開発 Android Lin…

Androidのライブラリ選定とメンテナンス

先日、某所で使っているライブラリのAGP 4.0対応とAndroidXへの更新を行い使える状態にしてみた。 github.com ありがとうJitPack。 jitpack.io 差分はThreeTenABPから java.time に移行したことと、Migrate to AndroidX したこと、各種SDKのバージョンを更新…

Pagingライブラリ3.0で入りそうな変更の話

ここのところ諸事情があってPagingライブラリの開発中コードを見に行っていたのですが、面白そうな変更が入っていたので技術メモ。 まだalphaにもなっていないのでまだまだ変更はあるだろうし、リリースされないかもしれません。 PagedListがPagedDataへ Pag…

Androidアプリ開発を始める 2020年春版 ライブラリ編

全体の概要からの続きみたいなもの。 前回がアプリ開発を始める時にざーっと考える(ベースであればとりあえず開発が開始できる)話だとすると、今回はアプリを作る時に何を組み合わせるかと言う話にしたいなと思っています。 blog.dr1009.com 去年のエント…

Androidアプリ開発を始める 2020年春版

2019年のはこちら。 丸一年経ったので今年の知識の棚卸しも兼ねて。 blog.dr1009.com はじめに 昨年版と同様に、本項の目的は下記2つです。 サーバーサイド開発等の経験があるエンジニアが、Android開発を始める際に参考となる資料をまとめる 2020年で当たり…

FlutterとKotlinとSwiftと、最近のこと

ここのところやってたことなど。 開発 Flutter Kotlin Swift 最近 DroidKaigi PRs Issues Firebase 終わりに 開発 Flutter ストアにアップする程度のアプリを作ろうとprivate repositoryであれこれやってます。 データを保存したかったので、Firebase Authを…

あるあるLTに行ってきました

想定外に雨が降る中、渋谷駅から10分ほど歩いて参加してきました。 渋谷駅から歩いて10分って、渋谷駅の中で何分歩いたか問題ありますよね……。 andfactory.connpass.com あるあるLTは初参加。 「あるある」と「いいね」の札がある、雰囲気のいい勉強会でした…

Android Architecture Components Pagingを推したくて

Kotlin愛好会で談義してきた。 love-kotlin.connpass.com speakerdeck.com Kotlin愛好会にはサーバーサイドエンジニアの方も多く参加される & Paging自体があまり導入例を聞かないので、Paging紹介:Kotlinな話=7:3ぐらいにしてみました。 Pagingライブラリ d…

個人開発が滞りがちなので小さいアプリを作った話

思い立ってFlutterで簡単なアプリを作ってみました。 はてなブックマークの状態を閲覧する(監視する)アプリです。 github.com 先日作ったアプリのデモ。 pic.twitter.com/AMLzD93ALB— Koji Wakamiya(だぐりば) (@D_R_1009) 2019年11月16日 開発経緯 ここのと…

Kotlin Fest Reject Conference 2019 [非公式]でLTしてきました

だいぶ遅くなってしまった。。。 いつもの感じでLTしてきました。 台風の日だったので参加できるかちょっと不安でしたが、なんとかなったのでよかった! dena.connpass.com 参加の経緯 会の雰囲気 LT内容 2つのインスタンス化メソッドとNonNull 共通データク…

CircleCI ユーザーコミュニティミートアップ 東京に参加しました

先週末に参加してきました。CircleCIのイベントは初参加。 circleci.connpass.com 会場はReproさん。会社でお世話になっていたので、そちらもワクワクしながら向かいました。 repro.io LT スポンサーLTを含めて8つのLTがありました。 スポンサーLTが個人的に…

Kotlin Coroutinesの並行処理やException処理を確認するデモアプリを作りました

作ってみました。MITです。 github.com デモアプリについて 目的 現職ではフルタイム3人+副業1人の4人体制でAndroid版の開発を行っています。機能開発6割、不具合修正2割、既存コードの書き換え2割といったところでしょうか。 既存コードはJava + RxJava、…

Kotlin愛好会 vol.14でDispatchers.Mainについて談義してきました

8月15日に開催された「Kotlin愛好会 vol.14」に参加してきました。 会場はWantedlyさん! love-kotlin.connpass.com 当日はいつもの感じで始まりました。 天候が崩れなくてよかったー。 Wantedlyさんありがとうございます!#love_kotlin pic.twitter.com/tcp…

AAC Navigation(v2.0) + setupWithNavControllerでUp buttonを制御する

公式ドキュメントはこちら。 developer.android.com 基本的な使い方 Navigation の導入時には NavigationUI 経由で NavController を Toolbar や Drawer 、 BottomNavigationView を組み合わせるとことになります。 developer.android.com

Androidの非同期処理について自分なりの整理

TL;DR HandlerとLooperを理解すれば怖いものはない Androidの非同期処理 非同期処理の定義を漁ってみると、ざっくり下記のようにまとめられていました。 コンピュータプログラムの実行制御の手法の一つで、あるプログラムが別のプログラムを呼び出したり、プ…

Settings.Panelをなんとなくバックポートして利用するライブラリを作りました

github.com Jitpackで配信しています。 バグ(とは言ってもAndroidQ自体がまだ正式リリースされていないけれど)や考慮不足な点があれば、ドシドシご指摘いただければ。 やったこと developer.android.com Android Qより追加されたアプリ内で設定項目を呼び…

ViewModelからActivity/Fragmentにエラーを伝達するためのデータクラスを定義した話

下の資料の「今考え中です」について、色々と考えがまとまってきたのでデータクラスを作ってみました。 FailureStatus というライブラリにしてあります。 github.com FailureStatusについて どんなクラスか FailureStatus自体は、Gistにしようかなーと悩んだ…

Androidアプリ開発を始める 2019年春版 ライブラリ編

前回の記事から分離。 dr1009.hatenablog.com 2019年現在、よく使われるライブラリと過去使われているために現在知見が求められがちなライブラリについて、独断と偏見で選んで簡単にまとめてみました。 Android Architecture Components developer.android.c…

Androidアプリ開発を始める 2019年春版

そろそろ春ですね、ということで「今からAndroidアプリ開発をNativeな感じで始めるなら何を見ればいいのか」について、自分の知見の棚卸をかけてまとめてみます。 ※書いてたら長くなったのでライブラリ紹介編を分けました はじめに Androidの開発環境を整え…

Kotlin Lazyを読む

IOSchedのコードを読んでいたら、ちょっと気になるExtensionを見つけました。 github.com /** * Implementation of lazy that is not thread safe. Useful when you know what thread you will be * executing on and are not worried about synchronization…

DroidKaigi 2019に参加しました

昨年に引き続き、今年もDroidKaigiに一般参加してきました。わいわい。 droidkaigi.jp 開催前の話 1つめ 2つめ 3つめ 開催中の話 印象深かったセッション:デザイン 印象深かったセッション:DI 印象深かったセッション:テスト 開催後の話 さいごに 開催…

Kotlin愛好会 vol7で談義してきました

会について Kotlinについてワイワイする会に参加してきました。気になっていたのですが今回が初参加。 love-kotlin.connpass.com もくもく会に参加したいので予定あけておかないと。 blog.applibot.co.jp 会場を提供してくださった、アプリボットさんのブロ…

日本Androidの会 12月定例会でLTしてきました

登壇してきた 12月19日に行われた"日本Androidの会 12月定例会"にLT参加してきました。 japan-android-group.connpass.com 10月ごろにTargetSDK 28対応を行った経験をベースにしました。AndroidXと書くべきかJetpackと書くべきか迷ったけどぱっと見で認識し…

Kotlin Result + Kotlin Coroutines

最近、業務でKotlin Coroutinesを使うようになりました。 既存のRxによる通信処理を、主にawaitに書き換えたり、新規に作成するAPIをCoroutinesで対応させたり、といった感じです。 取り組みの1例がこちら。先日、GSONも外したので次はKDocあたりをちゃんと…

ChronometerがAndroid OからSwedish countdownsに対応してた件

はじめに www.youtube.com EuropeのThe Final Countdown、名曲ですね。 お求めとはこちらから。 The Final Countdownアーティスト: ヨーロッパ出版社/メーカー: Legacy Recordings発売日: 2009/06/15メディア: MP3 ダウンロードこの商品を含むブログを見る …

EmptyView付きのRecyclerViewを書いた

ListViewにはsetEmptyViewメソッドが生えていて、リストが空の時に「リストが空でっせ」という表示が簡単にできるようになっている。一方でRecyclerViewには特にそういったメソッドが生えている訳でもない。RecyclerViewにsetEmptyViewをする方法を調べてみ…

Android 28対応でAndroid Xに移行してみた話

アプリをフルリファクタリングしました。 play.google.com このアプリって? 1回目の無職期間に、Androidアプリの練習をしようと思って作ったものです。 やりたかったことは「毎日 or 曜日ごとに繰り返すTODOの管理」になります。そのため、下記2点ほどを実…

LiveDataをDataBindingさせるサンプルを作った話

3行まとめ LiveDataをBindさせるサンプル作った Dagger使ってDIもやってみた ListAdapterのアニメーションがめっちゃいい つくったもの 文字を自分で打ち込んでDBに保存し、保存された文字列をフィルタリングするサンプルです。 github.com やっていること …

QRコード解析アプリ QRShotの話

なにをやったか 昨年の6月ごろに作ったアプリをまるっと更新しました。 play.google.com Before After 何がしたかったか 元々、QRコードを解析するアプリを作成していたのですが、単純にpng等の画像を受け取って解析する機能しかありませんでした。 (カメラ…