Diary

Diary

日々学んだことをアウトプットする場として初めてみました

2022-11-01から1ヶ月間の記事一覧

Java (Kotlin) で HTTP のステータスコードの定数を使う方法

Android (Kotlin) で Retrofit を使っていた時に、HTTP のステータスコードを使いたくなりました。 直にベタ書きするのはいやだなーと思っていたところ、HttpURLConnection のクラスに用意されていました。 import java.net.HttpURLConnection // int が求め…

bash [[ 内での <,> は文字列比較になるよ

bash で変数の評価を行う際に [[ をよく使うんですが、その中の <, > の意味を間違っていたがために、無駄に時間を使ってしまう事件がありました。 (未来の自分を含めた)皆さんには変なところで躓いて欲しくないため、こちらにメモしておきます。 [目次] …

Retrofit & Gson Converter でぬるぽ

以下のようなセットで API をコールしていた時に、『Non-null と思っていたのにぬるぽが発生する』ということが起きてしまいました。 HTTP クライアントとして Retrofit JSON to クラスのコンバーターとして Gson 原因 API サーバーで api-key が無効の時に …

git log を使って 1 日分のコード差分行数を計算

git log を使って、特定のユーザーが何行進捗を出したかを確認する例のメモです。 特に、initial commit などのコミットメッセージに代表されるプロジェクト(フレームワーク)の初期ファイルを、コミットメッセージから無視するようにしました。 特定のユー…

Android のテーマアイコンの設定

Android のテーマアイコンを有効にする方法と、アプリに設定する方法を紹介します。 [目次] テーマアイコンとは テーマアイコンを有効にする方法 自アプリに設定する方法 リンク おわりに テーマアイコンとは アプリのテーマアイコンとは、以下のように『ユ…

<meta charset="UTF-8"> をつけてるのに文字化けする

Web

Apache 2.4 を使ってコンテンツを置いているサーバーで、HTML の <head> 内に <meta charset="UTF-8"> をつけているのに文字化けが発生する現象が発生しました。 これは次のように content を指定したら解決しました。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></meta></meta></head>

Jetpack Compose で Material You を使う

今回は、Jetpack compose で Material You を使う方法についてメモしておきます。 なお、今回の内容は『Android DevSummit "Material You in Compose apps"』から学んだものとなります。 環境 - kotlinCompilerVersion '1.6' - compose_ui_version = '1.3.0-…

ワイヤレスデバッグをステータスバーに表示する方法

開発者モードのオプションにあるワイヤレスデバッグを、ステータスバー(通知バー)に表示する方法をメモしておきます。 開発時、ステータスバーにデバッグオプションを表示させた方が便利なケースが多いです。 標準ではこちらに表示されておりません。 Sett…

Android: offline-first

Dev Summit: Create offline-first apps を試聴したのでそのメモです()。 repository 層の役割 リポジトリー層の役割として、少なくとも 2 つのデータソース(LocalDataSource と NetworkDataSource)からデータを取得することを考える。 この際、取得でき…

Jetpack Compose をデバッグする方法

今回は Android Studio の Layout Inspector Jetpack Compose のを使ってみていくことになります。 環境 - Android Studio: Android Studio Dolphin | 2021.3.1 - kotlinCompilerVersion '1.6' - compose_ui_version = '1.2.1' 確認方法 右下の方に Layout I…

ShellCheck から学ぶ良いスクリプトの書き方 〜SC2086(ダブルクォート)編〜

とりあえずは変数はダブルクォーテーションで囲もうってことなんですが、囲まないとどうなるか少し調べてみました。 [目次] Double quote to prevent globbing and word splitting. globbing word splitting おまけ おわりに 今回は簡単な部類である SC2086 …

Jetpack compose で Indicator をなめらかにする

今回は、Jetpack compose でなめらかに Indicator を表示する方法についてメモしておきます。 なお、今回の内容は『Android DevSummit "5 quick animations to make your Compose app stand out"』から学んだものとなります。 [目次] 環境 実装方法 通常の I…

Android のマルチモジュール化で Preview の高速化

今回は Android のプロジェクトをマルチモジュール化し、Jetpack Compose の Preview を高速化してみました。 [目次] 環境 マルチモジュール化のメリット デメリット マルチモジュール化の方法 プレビュー速度の向上 Links おわりに 環境 - PC - macOS versi…

Android のモジュールで BuildConfig を生成しない方法

この間マルチモジュールの対応をしたのですが、その際に BuildConfig について少し気になったので、今回はモジュールにおいて BuildConfig を生成しない方法についてメモしておきます。 各モジュールにおいても、標準では以下のようなファイルが generated …

マルチモジュールでの compose navigation におけるベストプラクティス(Android DevSummit)

Compose の nagitaion における multi module 対応についての内容を youtube で見ました("Type safe, multi-module best practices with Navigation Compose")。 この中で 5 つのベストプラクティスが紹介されていたため、簡単に紹介します。 Compose のス…

Jetpack compose で Back-end (JVM) Internal error

Jetpack compose で開発中、以下のようなエラーが出ました。 Caused by: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't inline method call: CALL 'public final fun Column (modifier: androidx.compose.ui…

bash スクリプト初心者が知っておきたいことまとめ

いまだに自分も初心者ですが、 初心者から見て初めに知っておきたかったこと、思いがけず詰まったことをメモしておきたいと思います。 誰か(来年のぼく)の参考になればと思います。 [目次] 環境 結論 スタイル編 変数 [ はコマンドです! エラーが起きても…