2018-01-01から1年間の記事一覧
Support Libraryに依存した3rd party libraryが入っていないせいかあっさり終わった。 移行前の環境 Android Studio 3.2.1 compileSdkVersion 28 targetSdkVersion 28 Support Library 28.0.0 Refactor -> Migrate to AndroidX ほぼこれで終わる。ただこれだ…
今リビングで使っているテレビでは入力1がPS4、入力2がChromecast、入力3がNintendo Switchとなっている。テレビは基本的にPS4のトルネで見ている。 よくChromecastでYoutubeを見たりすると入力が切り替わるのだが、Chromecastに入力切替の操作が奪われてし…
嵌ったのでメモ。 BottomNavigationBar のタブの Fragment 内で ViewPager を使っていて、そのタブから別タブに切り替えて再びそのタブに戻ってきたとき、FragmentPagerAdapter#getItem() が呼ばれず、 ViewPager 内が再読込みされない現象が起きた。 調査の…
以下の記事を昔に書いたが、内容が古くなってきたようなので書き直す。 phicdy.hatenablog.com Androidの設定画面について AndroidではAPI1から設定画面を生成してくれる PreferenceActivity が用意されている Android 3.0で各設定画面をFragmentに分けるた…
自分の中で混乱してきたので整理する。 環境 Kotlin 1.2.71 Kotlin Coroutines 0.30.1 本題 以下のようなClean Architecuteベースの設計のアプリがあるとする。 このときKotlin Coroutineを使って非同期処理を行ってUIを更新するとする。 各クラスの責務を分…
2018/8/25に品川で開催されたKotlin Fest 2018に参加してきました。 kotlin.connpass.com 飲み物とか食事。パンプディング美味しかった。 mixiさんブースでやってKotlinクイズの景品。7問中3問正解でプランニングポーカーもらいました。 以下参加したセッシ…
Androidの世界では基本的に1アプリのみが前面に出る。 しかし android.permission.SYSTEM_ALERT_WINDOW を宣言することで他のアプリが前面の場合でも Viewを表示できる Android 6.0未満 制限はなく、 android.permission.SYSTEM_ALERT_WINDOW を宣言するだけ…
Firebaseを使ってみたかったので置き換えてみた。 プロジェクトのbuild.gradle dependencies { ... classpath 'com.google.gms:google-services:4.0.0' } アプリのbuild.gradle dependencies { ... implementation "com.google.firebase:firebase-core:16.0.…
最近どうもdが押しにくく、ファームウェアをアップデートしても直らなかったため、キースイッチを交換することにしました。 okapies.hateblo.jp を参考にやりました。 必要なもの キーキャップを引き抜く器具(494円) https://www.amazon.co.jp/FILCO-Keypull…
今年の11月以降、Google PlayにはtargetSdkVersion26(Android 8.0)以上のアプリしかアップロードできなくなる(新規アプリは8月)。 developers-jp.googleblog.com それでも状況によってはAndroid 2.3をサポートしなければならない場合がある・・・ しかし、…
GitHubでソースを公開していてリリース署名の設定をしたい場合、公開用にはダミーの署名を置き、手元ではそれを上書きしたい。かつ git status でnot stagedのところに上書き内容がいちいち出ないようにプロジェクト外から上書きしたい。 gradle.properties …
ポイントはonOptionsItemSelected()でandroid.R.id.homeをハンドリングしないと反応してくれない点 class MainActivity: AppCompatActivity { ... override fun onCreateOptionsMenu(menu: Menu): Boolean { // Inflate menu resource file. menuInflater.in…
例えばRSSのリストがあり、それを別々のスレッドで処理して全部の処理が終わったらUIを更新したいとする。 RxJavaのflatMap(mapper, combine)を使えばリストのデータを1つ1つのObservable/Flowableに変換して処理できる。 まず第一引数のmapper部分でそれぞ…
自分用。 環境 Mac OS 10.12.6 Karabiner-Elements 11.6.0 日本語外付けキーボード 手順 Karabiner-Elementsをインストールする。 Complex Modifications -> Add rule -> Import more rules from Internet(open a web browser) -> For Japanese (日本語環境…
久し振りにjacocoの結果みたらあれ・・・なんか結果がおかしいなとなった。 よく見てみるとkotlinに変換したファイル達がコードカバレッジ対象から外れていた・・・ phicdy.hatenablog.com 以下で対応できた sourceDirectories に src/main/kotlin を入れる…
去年の11/5に注文して12/23に届いた。 13000円。 今在庫を見てみたら2~3日後配達になっていてかなり在庫が充実している・・・ nature.global (置き方がこれでいいかは疑問が残る・・・) いわゆるスマートリモコンで赤外線リモコンで操作できる家電(エアコ…
UIテストを実行しようとしたらエラー・・・ ひとまずRun with --stacktraceを押してみる。 ... Caused by: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536 at com.android.dx.merge.DexMerger$8.updateIndex(DexMerger.ja…
とある商品の価格を監視したくてなんかいい方法ないかと考えていたところ、Google App Scriptでやったという記事を見たのを思い出してやってみた。 実装 スプレッドシートを作成→ツール→スクリプトエディタで作成開始。 今回はデバッグ用に実行ボタンを追加…
6.2.1入っているように見えるのに怒られる・・・ 再インストールしたら直った。