-
Sonatype OSSRH のアクセストークン認証対応
Wednesday, June 26, 2024
Maven Central へバイナリをあげるにあたり、Sonatype OSSRH へバイナリをあげようとしたところ、Content access is protected by token のエラーが出ていたので、http…
-
ちょっと前に作った Jetpack Compose UI library を Compose Multiplatform 対応した
Sunday, April 14, 2024
ちょっと前に作った android:ellipsize="middle" を Compose でやるための Text component を multiplatform 対応した。まだ iOS/Android のみ。 https://github.com/mataku/MiddleEllipsisText/pull/11 Jetpack Compose のライブラリならば、compose-multiplatform を利用…
-
Android WebView 実装のパッケージ情報を取得してあれこれする
Saturday, July 22, 2023
Android WebView 起因で問題があった際に、WebView 実装で使っているアプリケーションを取得してあれこれしたいみたいな話があり、WebViewCompa…
-
MiddleEllipsisText
Saturday, February 18, 2023
Compose の Text component でもかつての android:ellipsize="middle" がやりたくて、https://github.com/mataku/MiddleEllipsisText を作っている。正…
-
無限 HorizontalPager
Friday, January 6, 2023
Jetpack Compose で横スワイプで画像切り替えのような、カルーセルで画像表示したい場合には Accompanist の HorizontalPager が便利。 無限カルーセルが必要になり、accompanist リ…
-
2022/08/19
Friday, August 19, 2022
技術的負債は常に付きまとうものなので、そもそもこの負債にはこういう課題があって解決することでこういう効果がある、みたいなプロダクトへの価値を…
-
2022/08/06
Saturday, August 6, 2022
有給消化第 1 弾を迎えたので、マジでわからんリストの 1 つである Jetpack Compose ノックを https://github.com/mataku/SunsetScrob でひたすらしている。LazyColumn を持つ画面から、(Lazy…
-
Android Studio で使える file templates を作り直した
Saturday, July 23, 2022
https://link.medium.com/tGW5trclW8 ここから Android Studio も 7 系になったことで見事に使えなくなったカスタムテンプレートを作り直した。こうしたい。 ViewModel のクラス名を入れたら app/src/main/java/com/example/myapplication/{ViewModel class name}.kt を作成 Generate JUnit Test…
-
Heroku から Google Cloud Platform へお引越し
Monday, May 2, 2022
Heroku で動かしていたアプリケーションを Google Cloud Run と Cloud Scheduler に移した。以下みたいな用途で Heroku を利用していた。 主に Slack interactive components で利用するエンドポイント用の sinatra app (Heroku dyno, Redis)…
-
2021/02/26
Friday, February 26, 2021
apollo-android + OkHttp を用いたリクエスト時に、アクセストークンの再取得を挟んだ上でリクエストをリトライしたい場合、その処理を ApolloInterceptor と OkHttp Interceptor のどちらにやってもらうか…
-
2020 年の仕事
Wednesday, December 30, 2020
これが仕事というやつかという感じのものが今年から降ってくるようになった — ᴀʟᴏʜᴀ (@matakucom) January 6, 2020 全く覚えてない 今年は本当に長かった。 技術の専門職ラ…
-
minne Android アプリ開発基盤における改善
Friday, December 4, 2020
普段は minne Android アプリに関わるところでがしがし開発しているので、僕からは開発基盤における改善をお送りします。 目次 MVP から MVVM パターンへの移行 Rx{Java/Android} を LiveData と Kotlin…
-
Android Studio 4.2 Canary 8 が起動するようになった
Sunday, September 27, 2020
4.2 Canary 8 にしてから、以下のエラーメッセージを放置していたが重い腰を上げて直した。 Missing essential plugin: org.jetbrains.android Please reinstall Android Studio from scratch. ~/Library/Application\ Support/Google/AndroidStudioPreview4.2/disabled_plugins.txt に org.jetbrains.kotlin とあったのでファイル消したら起動し…
-
Firebase App Distribution (Beta) へのアップロードを Android apk で試す
Tuesday, July 21, 2020
リリース前に動作確認したいのでアプリを配布したい、という場合に DeployGate をずっと用いていたが、Firebase が提供している Firebase App Distribution もさわり心地特に問…
-
2020/05/12
Tuesday, May 12, 2020
AWS Device Farm にアップロードされたファイルの保存期限が 30 日ということを知って、定期的に apk をプロジェクトにおくワークフローを組んでいた。 ちょちょっと Android…
-
6 年ものの Android アプリケーションに Google Play Instant 機能を入れた
Tuesday, February 4, 2020
仕事で担当しているサービスでモジュール化がしがしやるかって時に、プロダクト的にも、モジュール分割と行った面で開発環境のテコ入れにも面白いなと…
-
Dynamic Feature Module 構成でDeepLink を利用した画面遷移でアプリの選択が常にされる
Monday, December 30, 2019
既存のアプリを Dynamic Feature Module 化していたら、DeepLink のように Intent.ActionView にてアプリ内の画面遷移をしている部分でアプリ選択の chooser が常に表示されてしまう現象に…
-
minne とマルチモジュール
Friday, July 12, 2019
original post: https://matakucom.medium.com minne の Android アプリのマルチモジュール化がようやく走り始めたので、背景を記します。 なぜマルチモジュール構成にするか ユーザに最適なアプリを届ける…
-
お節介 MVP architecture をどうにかしている
Monday, April 29, 2019
original post: https://matakucom.medium.com 今担当している Android プロダクトでは紆余曲折あって Model-View-Presenter アーキテクチャを採用している。そこでは repository の層がなかったのもあり、model 側の実装を presenter 側…
-
minne と Kotlin
Wednesday, January 9, 2019
original post: https://matakucom.medium.com ちょっと前に minne Android アプリに Kotlin を導入しました。正確にはテストコードとしてはその前から使われていて、アプリケーションコードに導入した形になり…
-
minne Android と UI test
Wednesday, November 21, 2018
original post: https://matakucom.medium.com 今担当している minne Android で網羅的な動作テストを定期的にしてもらうために Firebase Test Lab による Robo test を導入しました。毎日 10 時に元気に定期実行されています。…
-
danger-ktlint 作った
Monday, November 12, 2018
original post: https://matakucom.medium.com 今担当しているプロダクトに Kotlin を導入したので、最低限誰が書いても同じになるようにルール整備をしている。その過程において機械的なチェックの…
-
focus search returned a view that wasn’t able to take focus! のクラッシュと仲良くなる
Monday, November 5, 2018
original post: https://matakucom.medium.com 1 EditText + その下に複数の view のレイアウトで、以下の例外によりクラッシュしているところがあるので調べた。 Fatal Exception: java.lang.IllegalStateException focus search returned a view that wasn’t able to take focus!…
-
Android App Bundle について調べた
Tuesday, September 25, 2018
original post: https://matakucom.medium.com せっかく Android Gradle Plugin 3.2 stable が出たので、Android Gradle Plugin 3.2.0-alpha18 で追加されていた android app bundle を使うにはどうすればよいか調べた。 App bundle とはユーザの端末ごとに適…
-
Android の apk に付与される権限の変化を検知する
Wednesday, May 30, 2018
Android の apk に付与される権限に変化があったかどうかのチェックを楽にしたいので Danger plugin を作っています。主にライブラリ導入, 追加の際に見落としがちなチェッ…
-
setText されている TextView の getLineCount() が 1 になる
Saturday, May 26, 2018
setText されている TextView の getLineCount() が 0 になる X行以上あったらもっと見るを表示して表示部分を省略するみたいなのを組むときに, 雑だけど以下の感じで組んでたら setText し…
-
setText されている TextView の getLineCount() が 0 になる
Thursday, May 10, 2018
X行以上あったらもっと見るを表示して表示部分を省略するみたいなのを組むときに, 雑だけど以下の感じで組んでたら setText していた TextView の高さが意図せず 0 に…
-
ConstraintLayout の constraintCircle を使って円系のレイアウトを作る
Thursday, April 26, 2018
ConstraintLayout 1.1.0 で constraintCircle という制約が追加されていました。これはある起点に対して円形に制約を付与できるものなので, 円形のレイアウトが ConstraintLayout 1 枚で実現できるようにな…