タグ

ブックマーク / satoshun.github.io (5)

  • fitsSystemWindowsの話をつらつらと

    fitsSystemWindowsの話をつらつらと Created at Sun, Jan 26, 2020 fitsSystemWindowsについてマスターしつつあるので、つらつらと学んだことをまとめておきます。 SystemUiVisibilityの詳細な設定については説明を割愛するのでご了承ください。 そもそもfitsSystemWindowsとは? Android端末には、status bar、navigation barなどのSystem UIと総称されるViewがあります。 デフォルトでは、System UIにコンテンツの要素が被ることはありません。そこには制約があります。 しかし、SystemUiVisibilityの設定を変えることで、コンテンツの要素をSystem UIの裏側描くことが可能になります。 右の図がSystemUiVisibilityの設定を変更したものです

    invent
    invent 2020/01/27
  • RxJava 3.xの開発が本格的に始まりました

    RxJava 3.xの開発が格的に始まりました Updated at Tue, Jun 25, 2019 現状での差異をまとめておきます。 RxJava2との差異 READMEから README.md RxJava2 との差分は以下のようになっています。 fixed API mistakes and many limits of RxJava 2 RxJava2のいくつかのAPIのミス、制限を直している intended to be a replacement for RxJava 2 with relatively few binary incompatible changes APIに多少の変更があり、バイナリ互換がない test and diagnostic support via test schedulers, test consumers and plugin hooks テ

    invent
    invent 2019/06/26
  • でかいappモジュールがあるときに、中間モジュールを入れることで差分ビルドを上手く効かせる

    でかいappモジュールがあるときに、中間モジュールを入れることで差分ビルドを上手く効かせる Updated at Mon, Feb 11, 2019 マルチモジュール構成のメリットに差分ビルドの効率化というものがあります。しかし、モノシリックなappモジュールから、マルチモジュール構成に変更していく過程ではappモジュールがでかいままなので、差分ビルドによる恩恵が受けにくいという問題があります。(最終段階まで進めばappモジュールは十分に小さくなるので、差分ビルドの恩恵を受けられます) 例えば、以下のモジュール構成を考えます。 頑張って2つのモジュールを切り出しました。ただし、これではどこのモジュールを変更してもかなりのビルド時間がかかります。なぜなら、Gradleでは依存関係にあるモジュールが変更されたときに、自分自身も(ある程度?)再ビルドされるためです。なので、上記のモジュール構成だ

    でかいappモジュールがあるときに、中間モジュールを入れることで差分ビルドを上手く効かせる
    invent
    invent 2019/02/13
  • R8/Proguard: Daggerの生成コードがR8でどのように変わるかを見る

    R8/Proguard: Daggerの生成コードがR8でどのように変わるかを見る Created at Sun, Jan 20, 2019 コードの最適化の話です。この記事では実践に寄せて、Daggerの生成コードがR8によってどのように変化するかを見ます。 まずはサンプルコードです。 @Component( modules = [ AppModule1::class, AppModule2::class ] ) interface AppComponent { @Component.Builder interface Builder { fun build(): AppComponent } fun inject(activity: MainActivity) } @Module class AppModule1 { @Provides fun provideService(): Ap

    invent
    invent 2019/01/21
  • GradleのMatching repositories to dependenciesを使ってライブラリのダウンロード先を指定する - stsnブログ

    GradleのMatching repositories to dependenciesを使ってライブラリのダウンロード先を指定する Updated at Fri, Dec 14, 2018 JitPackからライブラリをインストールしたかったところ、JCenterからライブラリをインストールしてしまう事件がありました。 詳しくは次のリンクを参照してください。A Confusing Dependency 従来のGradle4系ではおそらく、上記の問題を解決することは出来ない、もしくは非常に困難でした。しかし新しくGradle5.1に Matching repositories to dependencies が導入され、上記の問題を解決できます。(Gradle5.1はまだrcです) まず最初に従来の書き方を説明して、次に新機能を使った書き方を紹介します。今回は例として、cloudflare

    invent
    invent 2018/12/13
  • 1