画像読み込みライブラリ「COIL」

Glide や Picasso のような画像読み込みライブラリです。

COroutine
Image
Loader

の略だそうです。

以下の特徴を持っており、ナウい感じです。

- 拡張関数、ラムダなどKotlinの持つ機能を活用。
- コルーチンを利用。
- ディスクキャッシュとストリームバッファリング機能。
- androidx.lifecycle に対応。
- 軽量。
- R8対応。ルール不要。

👉 Introducing Coil: Kotlin-first image loading on Android 

記述例です。


// To load an image into an ImageView, use the load extension function.
imageView.load("https://www.example.com/image.jpg")

// Coil supports urls, uris, resources, drawables, bitmaps, files, and more.
imageView.load(R.drawable.image)

imageView.load(File("/path/to/image.jpg"))

imageView.load(Uri.parse("content://com.android.externalstorage/image.jpg"))

// Requests can be configured with an optional trailing lambda.
imageView.load("https://www.example.com/image.jpg") {
    crossfade(true)
    placeholder(R.drawable.image)
    transformations(CircleCropTransformation())
}

// Custom targets can be created using lambda syntax (onStart and onError are optional).
Coil.load(context, "https://www.example.com/image.jpg") {
    target { drawable ->
        // Handle the successful result.
    }
}

// To get an image imperatively, use the get suspend function.
val drawable = Coil.get("https://www.example.com/image.jpg")

👉 GitHub - coil-kt/coil: Image loading for Android backed by Kotlin Coroutines. 

パフォーマンスを Glide や Picasso と比較した記事がありますが、まあまあのようです。

Coil is a new library, so its performance may increase in the next versions. We are comparing it with mature libraries, so let’s see how it evolves.

Coil は新しいライブラリであるため、次のバージョンでパフォーマンスが向上する可能性があります。成熟したライブラリと比較しているので、どのように進化するか見ておきましょう。

👉 Coil vs Picasso vs Glide: Get Ready… Go! - ProAndroidDev 

ちなみに、必要環境は以下。

- AndroidX
- Min SDK 14+
- Compile SDK: 28+
- Java 8+

今後に期待できますかね。


【スマホ】日本がもし10人の村だったら

日本には1億2千万人の人がいますが
もしそれを10人の村に縮めると
どうなるのでしょう

10人のうち
7人が スマホ をもっています

5人が iPhone です
2人が Android です

4人が iOS12 です
1人が Android9 です
1人が Android8 です

縮め過ぎたかな

👉 世界がもし100人の村だったら - Wikipedia 
👉 世界がもし100人の村だったら 
👉 世界主要国のスマートフォン普及状況をさぐる(2019年時点最新版)(不破雷蔵) - 個人 - Yahoo!ニュース 
👉 Mobile & Tablet iOS Version Market Share Japan | StatCounter Global Stats 
👉 Mobile & Tablet Android Version Market Share Japan | StatCounter Global Stats 


Nonograms (お絵かきロジック/ ピクロス) - Android 10 Easter Egg パズルゲーム

Android 10 のイースターエッグは、

これです。



Android システム通知アイコン(16x16px)のノノグラム(お絵かきロジック)です。

お絵かきロジック(おえかきロジック)は、縦と横の数字をヒントに塗り潰すマス目を割り出し、そのとおりに塗り潰していくと、最終的に絵(または文字)が浮かび上がるタイプのペンシルパズル。ののぐらむ、イラストロジック、ピクロスとも呼ばれている。

👉 お絵かきロジック - Wikipedia 

いくつかやってみました。

手順

上の動画のように、イースターエッグにはこれまでどおり、設定画面のバージョン部分の連続タップで入ります。

「Android 10」の文字が表示されたら連続タップしながら「10」を「Q」の文字に並べ替えたあと「Android」の文字を連続タップです。



これ、初めてやりましたが変な達成感があってくせになります。

よかったらやってみてねー!