diadia

興味があることをやってみる。自分のメモを残しておきます。

androidアプリ開発

SharedPreferencesのxmlファイルを直接見る

参考記事 SharedPreferencesに出力したデータの確認 概要とやり方 SharedPreferencesのxmlファイルは、まずプロジェクトのソースコード郡に生成されるものではない。 したがってandroid studioのprojectから探そうとしてもないのである。 では実際にどこにあ…

JetPack Securityについて調べる

参考ページ https://android-developers.googleblog.com/2020/02/data-encryption-on-android-with-jetpack.html https://qiita.com/MasayukiSuda/items/61b554d3cbe484f13706 https://www.bignerdranch.com/blog/encrypting-shared-preferences-with-the-an…

ListView,Spinnerとadapterについて

ListViewとadapterの関係 ListViewの各要素を表示させるには、strings.xmlに <string-array name="japanese"> <item>あいうえお</item> <item>かきくけこ</item> <item>さしすせそ</item> </string-array> を記述して、レイアウトファイルにandroid:text="japanese"みたいなことをして各要素を表示する事ができる。 この他に要素を表示する方法とし…

AccountManagerでアカウントを追加する

アカウントを追加 AccountManagerにはアカウントを追加する方法が2種類存在する。 メソッドは以下の通り。 AccountManager#addAccountメソッド AccountManager#addAccountExplicitlyメソッド addAccount()メソッドは、アカウントを追加する時にユーザーにア…

django-rest-frameworkのユーザー認証を実現させる

https://www.django-rest-framework.org/api-guide/authentication/ https://blog.sakaki333.com/blog/view/78 はじめに この記事はdjnagoをバックエンドとしてandroidアプリケーションを作成することを前提する。 androidアプリケーションのユーザー認証周…

retrofit エラー対処

エラー1 java.lang.IllegalArgumentException: @Field parameters can only be used with form encoding. 上記のエラーメッセージが出る場合には、インターフェースに@FormUrlEncodedアノテーションを付け忘れている可能性がある。 つけて再実行する。 inter…

Retrofitまとめ

コンテンツ 公式ドキュメント インストール 使い方イメージ 関連記事 参考 1. 公式ドキュメント https://square.github.io/retrofit/ 2. インストール implementation 'com.squareup.retrofit2:retrofit:(insert latest version)' implementation 'com.squar…

RecyclerViewについて

RecyclerViewはなんのためにあるのか? 参考: https://ithelp.ithome.com.tw/articles/10203735 https://developer.android.com/guide/topics/ui/layout/recyclerview RecyclerViewは多量のリストデータセットを表示するためにあるようだ。 リサイクラービュ…

EditTextの入力を受け付けなくさせる方法

EditTextの入力機能を停止させるには、isEnabledを使えば良い。 editText_obj.isEnabled = false https://developer.android.com/reference/kotlin/android/widget/EditText isEnabledアトリビュートは、親クラスのViewから継承されたアトリビュートである。…

Kotlin Radioボタンを実装する方法

Radioボタンを使う際のイメージ RadioGroupを使う。 リスナーについては2つ考え方がある。 ラジオボタンに実装するのではなく、RadioGroupにリスナーを実装する方法と、通常のボタンにリスナーを実装する方法である。 RadioGroupにリスナーを実装する方法は…

エラー:Class "***" must contain at least 1 persistable field. Realm

Realmで以下のエラーが発生した。 Class "***" must contain at least 1 persistable field. エラー原因コード import io.realm.RealmObject //モデルクラスの作成 class WordDB:RealmObject() { //フィールドの設定 var strQuestion:String = ""; var st…

Realmの使い方について

メモ 参考: https://realm.io/docs/java/6.0.2/ [Android] SQLiteをやめてRealmを使ってみた イメージ ORM?みたいに扱うイメージ。 djangoのModelを定義するように、RealmObjectを継承したクラスを定義し、メソッドでUpdateしたり参照したりする感じ。 実装…

android: Viewの表示と非表示を切り替える方法

ソース: https://developer.android.com/reference/kotlin/android/view/View.html#android:visibility Viewクラスのアトリビュートにvisiblityがある。これを使えば例えばボタンを消したりつけたりする事ができる。 val btn = findViewById<Button>(R.id.testButton</button>…

kotlin : 画面遷移先でintentに格納データを取り出す方法

画面遷移先でintentに格納したデータの取り出し方 intentからbundleオブジェクトを取得し、そこから目当てのデータを取り出す。 Intentで画面遷移したデータを取得する intentインスタンスにデータが格納されているので、getStringExtra()メソッドを使って取…

アプリのタイトルバーを消す方法

デフォルトだと... デフォルトだと画面の一番上にアプリの名前が緑色のバーのところに表示されてしまう。 これを消す方法を調べる。 タイトルを表示するバーの名前 タイトル(app_name)を表示するバーの名前をアクションバーと呼ぶらしい。 肝心の消し方 参考…

Androidで音を扱う

参考 https://developer.android.com/reference/kotlin/android/media/SoundPool.html https://developer.android.com/reference/kotlin/android/media/SoundPool.Builder https://developer.android.com/reference/kotlin/android/media/AudioAttributes.ht…

Android studio ショートカットキー

クラス、メソッドのコード詳細を見る ⌘+b javaからkotlinのコードに変換する CMD+SHFT+ALT+K

Kotlin スコープとlateinitについて

参考 lateinit による変数の初期化 どんな場面でlateinitを使うのか あるクラスのaメソッドの中で変数定義を行う。そして同一クラス内でbメソッドを作成するとする。この際に、aメソッドで定義した変数をそのままbメソッドで使うことはできない。なぜならaメ…

リソースファイルにある画像を表示する

Imageviewを使う ImageView.setImageResource()メソッドを使えば良い。

Kotlin findViewByIdを使わなくても済む方法

kotlin-android-extensionsを使う レイアウトファイルのViewを取得しなくても、そのまま使えることが分かった。 レイアウトファイルのidをそのままViewオブジェクトとして利用できるということだ。 手順 projectのbuild.gradle(Module:app)に以下を記述する…

AuthTokenを取得する

AuthTokenを取得するメソッド AuthTokenを取得するメソッドは2つあることを確認している。 blockingGetAuthToken GetAuthToken https://developer.android.com/reference/kotlin/android/accounts/AccountManager.html#blockingGetAuthToken(android.account…

kotlin android studio 動的にlayoutファイルを作成する

はじめに レイアウトファイルに記述するのではなく、Activityにて動的にレイアウトファイルを記述する方法をこのページにまとめた。このほかあらゆるViewを動的に生成するには、検索方法にコツが必要になる。コツとしては、ImageView width set programatica…

起動するActivityへデータを渡す

やりたいこと 起動するアクティビティへデータを渡す場合には、Intentオブジェクトにデータを追加してアクティビティを起動する。そして起動したアクティビティ内でデータを取り出す。渡したいデータの型が自作の場合には普段どおりにはデータを渡すことはで…

アクティビティから結果を取得する

参考 アクティビティから結果を取得する [Kotlin] Androidの画面遷移とアクティビティ間の値の受渡し https://araramistudio.jimdo.com/:AndroidでActivityから結果を受け取る 概要 必要な要素は、画面遷移元ではstartActivityForResult()メソッド、そしてon…

Interfaceについて

インターフェース インターフェースはクラスやオブジェクトにくっつけて実装する。 よくあるのパターンは、クラスを継承したサブクラスにimplementsをつけてインターフェースを実装するパターンである。 implementsをつけたインターフェースの{}にオーバーラ…

DialogFragmentからActivityに値を渡す

参考 Return values from DialogFragment DialogFragmentからActivityに選択した結果を返す この方法はについて補足 final SettingAlarmActivity settingAlarmActivity = (SettingAlarmActivity)getActivity() ... this.interfaceCommunicator = settingAlar…

SharedPreferencesの使い方

使い方 まずSharedPreferencesインスタンスを生成する。そしてインスタンスのメソッドを使って内容を書き込んだり、読み込んだりする。 android.content.SharedPreferences SharedPreferencesインスタンスの生成 val sp: SharedPreferences = getSharedPrefe…

Kotlin android ラジオボタンタイプのDialogを実装する

ダイアログの基本的な実装の仕方 Android Kotlin ダイアログを実装する 実装内容 例えばユーザーがログインする際にアカウントを一覧させる。ユーザーはそこからあるアカウントを選び、ログインを実行する。 この場面をダイアログを使って実装する。DialogFr…

Android Kotlin ダイアログを実装する

ダイアログを実装する手続き ダイアログの基礎知識 ダイアログ | Android デベロッパー | Android Developers ダイアログを利用する場合には、基本的にAlertDialog, DatePickerDialog, TimePickerDialogを使い実装する。 ダイアログをそのまま継承して作成す…

AccountManagerで取得したaccountの中身を表示する方法

概要 AccountManager.getAccountsByType()で取得したリストをprintlnで表示してもうまく表示されない。 表示する方法はfor構文を使うことと、name属性を参照することである。 表示方法 val am : AccountManager = AccountManager.get(this) val accounts = a…