fix crash on Android 5

main
Conny Duck 6 years ago
parent 6c1db97c07
commit 84a2bfc3a7
  1. 3
      app/src/main/java/com/keylesspalace/tusky/di/ServicesModule.kt
  2. 9
      app/src/main/java/com/keylesspalace/tusky/service/AccountChooserService.kt

@ -15,7 +15,6 @@
package com.keylesspalace.tusky.di
import com.keylesspalace.tusky.service.AccountChooserService
import com.keylesspalace.tusky.service.SendTootService
import dagger.Module
import dagger.android.ContributesAndroidInjector
@ -24,6 +23,4 @@ import dagger.android.ContributesAndroidInjector
abstract class ServicesModule {
@ContributesAndroidInjector
abstract fun contributesSendTootService(): SendTootService
@ContributesAndroidInjector
abstract fun contributesAccountChooserService(): AccountChooserService
}

@ -24,21 +24,22 @@ import android.service.chooser.ChooserTarget
import android.service.chooser.ChooserTargetService
import android.text.TextUtils
import com.keylesspalace.tusky.R
import com.keylesspalace.tusky.TuskyApplication
import com.keylesspalace.tusky.db.AccountManager
import com.keylesspalace.tusky.di.Injectable
import com.keylesspalace.tusky.util.NotificationHelper
import com.squareup.picasso.Picasso
import dagger.android.AndroidInjection
import javax.inject.Inject
@TargetApi(23)
class AccountChooserService : ChooserTargetService(), Injectable {
@Inject
// cannot inject here, it crashes on APIs < 23
lateinit var accountManager: AccountManager
override fun onCreate() {
super.onCreate()
AndroidInjection.inject(this)
accountManager = (application as TuskyApplication).serviceLocator.get(AccountManager::class.java)
}
override fun onGetChooserTargets(targetActivityName: ComponentName?, intentFilter: IntentFilter?): MutableList<ChooserTarget> {

Loading…
Cancel
Save