くうと徒然なるままに

モバイルアプリを作りながらバックエンドも作っています。

Kotlin

AndroidX の androidx.textclassifier を試してみる

アドベントカレンダー Android 初心者 15日目の記事です。 まだ枠が空いているので記事を見た人は登録するか3人の Android エンジニアに送りつけてください。 qiita.com 初心者ということで試してみた記事を書いてみたいと思います。 Android 8 ~ テキスト…

Android-Kotlin で現在起動してるアプリの設定画面に移動する

コード val intent = Intent() intent.action = Settings.ACTION_APPLICATION_DETAILS_SETTINGS val packageName = context?.packageName ?: return@setOnClickListener val uri = Uri.fromParts( "package", packageName, null ) intent.data = uri startAc…

Android アプリで現在デバッグ実行中かを判定する方法

Android アプリを作っていて、現在デバッグ実行されているかを確認したいことはたまによくあると思います。 BuildConfig から取得すればいけ感じな。 コード BuildConfig.DEBUG 情報元 stackoverflow.com

Extended FAB っぽいものを実装してみた

Extended FAB を実装するモチベーションはFAB をよりユーザーにわかりやすく実装するため 普通のアイコンだけのFAB だけで実装してましたが、 「アイコンだけでは何をするためのものかすぐに理解して使い始めることができない」という問題が出てきました。 …

Mockito で void なメソッドをモックする

Mockito はいいぞ〜 さて、 void なメソッドを mock するにはどうすれば良いのかってのは少しハマったので書いてきます〜 解決方法 doNothing().when(targetMock).targetMethod() 的な感じで実装してくといけました〜。 コードで解説 val keyword = "hello w…

BottomAppBar で menu を表示する

BottomAppBar で menu を表示するためには、以下のメソッド読んであげれば表示できます。 {BottomAppBar への参照}.replaceMenu(R.menu.ResourceFileName)

Android の Fuel + Moshi + Kotlin Coroutine でいい感じにする拡張関数を書いた

Fuel には、 mochi、 Kotlin Coroutine といい感じに連携してくれる機能があります。 けど、 Moshiと Kotlin Coroutine を組み合わせていい感じに呼び出せる関数は存在してないです。(まぁ、標準で存在してても依存関係考えたら載せるべきでないのはそう)…

java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/databinding/DataBinderMapperImpl; ってエラーがでた

エラーメッセージ java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/databinding/DataBinderMapperImpl; 解決策 dataBinding { enabled = true } databinding の設定を AppModule にし忘れてただけですね.... マルチモジュールで作ってると…

Invoke-customs are only supported starting with android 0 --min-api 26 ってエラーがでた

ライブラリの追加をしたら下記のようなエラーが出ました。 そこで、解決策を書いていきたいと思います。 Invoke-customs are only supported starting with android 0 --min-api 26 解決策 以下を追加した Module の Build.gradle へ追記したら解決しました…

Navigation Architecture Component で BottomNavigation と Include した Navigation Graph を紐付ける

Android 3.2 正式リリース && Androidx 1.0 おめでとうございます さて、 Android Studio 3.2 から入ってきた Navigation Architecture Component (NAC) NAC には BottomNavigationView (and DrawerView?) と紐づけ、Fragment の ID と menu の id を一緒に…

Android で Databinding しようとしたら Cause: couldn't make a guess for {Class Name} ってエラーがでる

状況 以下のようなエラーが出てしまいました... Cause: couldn't make a guess for {Class Name} 解決策・原因 パッケージネームに大文字が混入してたのが原因です。 意外に見つけにくい...

Kotlin, JUnit で パラメタライズドテストを書く

こちらで書いたコードに対してパラメタライズドテストを書いていきます。 kuxumarin.hatenablog.com 環境 testImplementation 'junit:junit:4.12' コード Java で書くときは、Static な感じで書いてたのは companion object にしました。 @RunWith(Parameter…

Kotlin で HTML を テキストに変換する

public fun String.removehtmlTag(): String = this .replace(Regex("<[^>]*>"), "") .replace("\n", "")

Android で 長文をいい感じに省略して表示する

任意の長さの文字列をいい感じに省略して 表示することはよくあるかと思います。 そんな時にいい感じに表示する方法です。 方法 <TextView android:layout_height="wrap_content" android:layout_margin="12dp" android:ellipsize="end" android:maxLines="2" tools:text="雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列雑な文字列" /></textview>

Android-Kotlin な Multi Module な構成で 他Module の Class を参照しようとすると Unresolved Reference とでる。

症状 どこもおかしくないはずなのに、新規で追加した Android Module で定義されている Class を参照しようとすると "Unresolved Refernece " って出てきてツラミでした。 また、 Android Studio では普通に 入力補完されます。 なのに、ビルドすると上記の…

Android-Kotlin で ユーザーに画像を一枚選択させてその画像の場所を取得したい

はじまり Android のアプリを作成していて、 ユーザーに画像を一枚選択してもらい、その画像に対してあれこれしたい。みたいな時があるかと思います。そんなときのための記事です。 プログラムの流れの解説 開きたい画像を選択させる Intent を飛ばす ユーザ…

Android-Kotlin で Wifi のSSIDを取得する

class SSIDManager{ fun GetSSID(ApplicationContext:Context): String{ val wifiManager = ApplicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager if(!wifiManager.isWifiEnabled) return ""; val connectInfo = wifiManager.connecti…