Search code examples
androidkotlinkotlin-extension

add extension on Log in android (Kotlin)


I use this code to add extension for Log class android

fun Log.i2(msg:String):Unit{
    Log.i("Test",msg)
}

when using in the activity

class MainActivity: AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        Log.i2("activity_main")
    }
}

Log.i2 not found. What's wrong?


Solution

  • To achieve extension function in static class, you need to write extension of the companion object(refer this)

    fun Log.Companion.i2(msg:String) {
     ...
    }