Sqidsは、数値から短い一意の識別子を生成できるオープンソースのライブラリです。これらのIDはURLセーフであり、複数の数値をエンコードでき、一般的な卑語を含んでいません。 もっと読む .
こう見えます:
クイックエンコード&デコードの例:
val sqids = Sqids()
val id = sqids.encode(listOf<Long>(1, 2, 3)) // "86Rf07"
val numbers = sqids.decode(id) // [1, 2, 3]
IDが短すぎる場合は、特定の長さまでパディングすることができます:
val sqids = Sqids(minLength = 10)
val id = sqids.encode(listOf<Long>(1, 2, 3)) // "86Rf07xd4z"
val numbers = sqids.decode(id) // [1, 2, 3]
アルファベットをシャッフルしてユニークなIDを作成する:
val sqids = Sqids(alphabet = "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt")
val id = sqids.encode(listOf<Long>(1, 2, 3)) // "XRKUdQ"
val numbers = sqids.decode(id) // [1, 2, 3]
完全なドキュメントはこちら https://github.com/sqids/sqids-kotlin
元のHashids Kotlinをお探しの場合は、こちらで見つけることができます: https://github.com/leprosus/kotlin-hashids
Sqidsの主な用途は純粋に視覚的です。プロジェクトで数字の代わりにIDを使用したい場合、Sqidsは良い選択肢になるかもしれません。