/kotlin-architecture-components

This is a sample app that uses Android Architecture Components with Kotlin and Dagger 2.

Primary LanguageKotlin

kotlin-architecture-components

This is a sample app that uses Android Architecture Components with Kotlin and Dagger 2.

Architecture Components

Architecture Components version is 1.1.*

Kotlin

Kotlin version is 1.2.*

Dagger2

Dagger version is 2.15.*

Using dagger.android.

Other Libraries

Tips

Multibinding

To use Multibinding for ViewModel's injection like this, use @JvmSuppressWildcards for inject creators.

class ViewModelFactory @Inject
constructor(private val creators: Map<Class<out ViewModel>, @JvmSuppressWildcards Provider<ViewModel>>)
    : ViewModelProvider.Factory {

Here is all code.

DataBinding

To use DataBinding with Kotlin, use com.android.databinding:compiler like below.

dependencies {
    kapt 'com.android.databinding:compiler:3.0.0'
}

Thanks

License

Copyright 2017 Satoru Fujiwara

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.