【Android Pie】「通知」設定のシンプルな考え方

Android 9.0 Pie では、基本的にここからでよい。
(機種によって多少は違う)

「設定」-「アプリと通知」-「通知」

ここから、システム上での通知の設定を行う。

- 「サイレントモード」

- アプリごとの「通知の表示」

あとは、各アプリを起動しての

- アプリ内の機能によるON/OFF。

の3つで「通知」の設定を行う。

Android で通知を管理する - Android ヘルプ

サイレントモード

「音」にだけ関する設定かと思っていたのですが、視覚的な「通知の表示」についても設定が反映されます。

Android のサイレント モードで割り込みを制限する - Android ヘルプ

アプリごとの「通知の表示」

私はこの方法のみで設定することにしています。

「通知を最近送信したアプリ」からアプリごとにOFFしていく。

という手順でやっています。

アプリ内の機能によるON/OFF

各アプリ内で設定する。

例えば、以下LINEの場合。

まとめ

これまでのAndroidのバージョンでも、ブロックやフィルターなど煩わしい通知の設定で混乱してきましたが、今回 Android Pie の仕様はどうなのでしょうね。

通知が表示されない とかどうせブロックの設定だろ! → 原因「フィルター」

Android 7.1 ( API25 / N_MR1 ) の通知の設定

「通知」に関する部分は、仕様の変更が多く、イライラさせられることが多いです。



最後に、疑問を一つ。

通知をOFFにしているアプリの一覧をどこかで確認できないのか。

このような。


This is fixed in Q. No fix is available in Pie.

見れないのかPieでは。

と思いきや、GalaxyのAndroid 9 Pie では見れる。

ちなみ、Q beta3 では、「OFFにしました」で fixed。

なんせ、複雑過ぎではない? 今のスマホ。

Android 9 Pie 使ってみた
【Android Pie】ナビゲーションバー の ホームボタン を ピル型 にする方法
【Android Pie】Google Digital Wellbeing を使う
【Android Pie】Auto-rotate (自動回転) OFF のときの挙動
【Android Pie】使いやすくなった音量設定
【Android Pie】スクリーンショット取得→編集 は「電源ボタン長押し」から
【Android Pie】通知を最小化する / 元に戻す
👉【公式 2018-05-07】Android Pie のバージョンシェア がやっと 10%超えている件

→ 分割非対応アプリを2画面で表示する。- YouTube


【MVVM】ViewModel インスタンスの取得

以下の記述ですが、


private val viewModel: MainViewModel by lazy {
  ViewModelProviders.of(this).get<MainViewModel>()
}

Activityで にしろ、Fragmentで にしろ、


private val viewModel: MainViewModel by viewModels()

でいける。

Fragment内で呼び出す場合は、


dependencies {
  implementation 'androidx.fragment:fragment-ktx:1.1.0-alpha08'
}

で、今現在。

コードをみてみる。


@MainThread
inline fun <reified VM : ViewModel> Fragment.viewModels(
    noinline ownerProducer: () -> ViewModelStoreOwner = { this },
    noinline factoryProducer: (() -> Factory)? = null
) = createViewModelLazy(VM::class, { ownerProducer().viewModelStore }, factoryProducer)

@MainThread
inline fun <reified VM : ViewModel> Fragment.activityViewModels(
    noinline factoryProducer: (() -> Factory)? = null
) = createViewModelLazy(VM::class, { requireActivity().viewModelStore }, factoryProducer)

@MainThread
fun <VM : ViewModel> Fragment.createViewModelLazy(
    viewModelClass: KClass<VM>,
    storeProducer: () -> ViewModelStore,
    factoryProducer: (() -> Factory)? = null
): Lazy<VM> {
    val factoryPromise = factoryProducer ?: {
        val application = activity?.application ?: throw IllegalStateException(
            "ViewModel can be accessed only when Fragment is attached"
        )
        AndroidViewModelFactory.getInstance(application)
    }
    return ViewModelLazy(viewModelClass, storeProducer, factoryPromise)
}

使ったほうが良いですよね。

はまらなくてすむ。

👉【MVVM】 ViewModel の_プロパティ記述

androidx.fragment.app  |  Android Developers


Kiwiブラウザでバックグラウンド再生

XDA Labs | Kiwi Browser

機能

- 高速
- バックグラウンド再生
- GDPR クッキー 自動受け入れ
- ブックマーク イン/エクスポート
- 通知ブロッカー
- マイニングブロッカー
- ポップアップブロッカー
- 広告ブロック
- ナイトモード

サブとしてだけでなくメインブラウザとしても使えます。

無駄を省いた高速サーフィンができます。

 

BANされた。

[Update: Restored] Kiwi Browser removed from Play Store due to YouTube background playback

Kiwi browser got removed from play store : Android

今現在は、復活しています。

Kiwi Browser - Fast & Quiet - Google Play のアプリ

各所で話題に挙げられてたように、YouTubeのバックグラウンド再生が原因だったようです。

復活後のインストール→起動直後の画面。

YouTube Prime の価値を損ねるようなアプリは認めないということでしょうか。

しかし、他にも見かけたことありません? そんなアプリ。

公式YouTubeAPI経由(有料)であれば問題ないということですかね。

 

まとめ

今現在、KiwiブラウザではYouTubeのバックグラウンド再生はPC版サイトのみ可能。