前人未踏の領域へ Androidアプリ開発編

Androidアプリ開発に関する調査メモ置き場。古い記事にはアプリ以外も含まれます。

FragmentStatePagerAdapter

FragmentStatePagerAdapter(fm: FragmentManager)がdeprecatedになってた。
第2引数に BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENTBEHAVIOR_SET_USER_VISIBLE_HINT
指定するらしいんだけれども BEHAVIOR_SET_USER_VISIBLE_HINT もdeprecatedになってる。
なので BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT の1択っぽい。

これを採用すると、ViewPager上、ユーザーに見えてるページ以外はonStartまでで停止し、onResumeが呼ばれなくなる。 なのでonResumeのタイミングでPVイベントなどを発行することができる。 これまでページ変更イベントを拾って面倒な処理書いてたのが簡略化できそう。

Android 10 AppTask.moveToFrontが機能しない?

課題

ActivityManager.AppTask.moveToFront()メソッドは現在とは起動中のTaskをForegroundに持ってくるためのメソッド。 これがAndroid 10で機能しなくなっているかもしれない。 全くだめというよりは、うまく前に来ないような。すでに先頭にいるという扱いになってしまっているのかも? ジェスチャーナビゲーションの影響だろうか。

対応

調査中。

Figmaでコンポーネントを解除する

Figmaは慣れてくると超便利なんだけど、ComponentとFrameとGroupを理解しないと編集時にその便利さが享受できない。

課題

ComponentをFrameに変更したい

対応

Componentは直接は Uncomponent みたいなことができない。

  1. Componentをコピーして同じ場所に貼り付ける
  2. コピーしたComponentを右クリックメニューから Detach Instance を選択
  3. コピー元のComponentを削除

こうすると ComponentはFrameに変わる