Articles of андроидная

Android: ошибка внутреннего компилятора при использовании кинжала 2 (Kotlin)

Я пытаюсь использовать Dagger 2 в Android. Реализация очень проста. Ниже приведены связанные с кинжалом Component s и Module s: ApplicationComponent.kt @Singleton @Component(modules = arrayOf(AppModule::class)) interface ApplicationComponent { fun inject(app: Application) fun inject(mainActivity: MainActivity) fun plusMainAcitvityComponent(mainActivityModule: MainActivityModule): MainActivityComponent } MainActivityComponent.kt @Subcomponent(modules = arrayOf(MainActivityModule::class, GoogleApiClientModule::class)) interface MainActivityComponent{ fun inject(mainActivity: MainActivity) } AppModule.kt @Module class AppModule(val app: […]

Модификаторы видимости kotlin не совпадают

Об этом говорится в официальном документе. Но когда я делаю что-то вроде этого: var human : Human? = null и декомпилировать его в java-код, я считаю, что на самом деле это было @Nullable private Human human; и бесполезно писать это public var human : Human? = null но когда я пишу это: lateinit var human […]

Dagger2-Retrofit не вводит в ApiHelperImpl

Привет, я пытаюсь внедрить retrofit в классе ApiHelperImpl.kt . У меня есть модуль и компонент. AppComponent.kt @Component(modules = arrayOf(AndroidInjectionModule::class, AppModule::class, ActivityBuilder::class)) @Singleton interface AppComponent { fun inject(app: PartnerApplication) } AppModule.kt @Module class AppModule { @Provides @Singleton fun providesPartnerApplication(application: Application): Application = application @Provides @Singleton fun providesSharedPreferences(application: Application): SharedPreferences { return PreferenceManager.getDefaultSharedPreferences(application) } @Provides @Singleton fun […]

Котлин. привязка не обновление данных

Добрый вечер! Я пытаюсь использовать привязку в kotlin, но данные не обновляются. Все компилируются и работают, но когда пользователь меняет текст и нажимает bsave -> я пытаюсь вернуть данные из textEdit, и данные не обновляются. TextEdit содержит старые данные. В java он работает, но в котлин у меня проблема. Вы можете мне помочь? Это мой […]

Кинжал инъекции не работает в Котлин

Кто-то помогает мне указать, почему мой код не работает. Я пытаюсь выяснить, но я не могу выяснить проблему, которую я пытаюсь вводить презентатору, но я получил ошибку: lateinit property appComponent has not been initialized Похоже, что презентатор не был введен в AppModule @Module class AppModule { @Provides @Singleton fun provideMainPresenter(): MainActivityContract.Presenter = MainActivityPresenter() } AppComponent […]

Android-kotlin-binding не обновляет свойства

Моя проблема в том, что binding – это работа, но не правильно! Когда я ввожу новый текст в textfield а затем пытаюсь получить данные из этого textfield с binding справки, я вижу старые данные. Я попытался найти ошибку, но не смог. Моя activity_fblogin.xml <?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> <data> </data> <android.support.constraint.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent" […]

Kotlin: Запуск kapt в командной строке для создания заглушек для DI

Я пытаюсь запустить kapt3 из командной строки для создания явных заглушек для файлов Kotlin. Синтаксис выглядит следующим образом: kotlinc -P plugin:org.jetbrains.kotlin.kapt3:aptMode=stubs -classpath $CLASSPATH:$ANDROID_HOME/platforms/android-23/android.jar -d $OUT $SRCS Это верно? Я не вижу плагин в kotlin/lib . На данный момент я пытаюсь создать его из источника, но каков его «официальный» способ его загрузки? Дополнительные замечания: Это проект […]

Невозможно изменить текст ActionMenuItemView с помощью RxKotlin

Я пытаюсь написать приложение для Android с Kotlin. Теперь я хочу показать счетчик в ActionBar. Я добавил для него элемент, названный show_timer. Каждую секунду он должен подсчитывать один: override fun onWindowFocusChanged(hasFocus: Boolean) { val item = findViewById(R.id.show_timer) as ActionMenuItemView PublishSubject.interval(1, java.util.concurrent.TimeUnit.SECONDS, Schedulers.newThread()) .subscribeBy(onNext = {item.text = it.toString()}) super.onWindowFocusChanged(hasFocus) } Но почему-то это не работает. Он […]

Dagger2 @Nullable аннотация с Kotlin

От кинжала Модуль: @Provides @PerMediaSession @Nullable MediaControllerCompat provideMediaController(Context appContext, MediaSessionCompat mediaSessionCompat) { try { return new MediaControllerCompat(appContext, mediaSessionCompat.getSessionToken()); } catch (RemoteException e) { e.printStackTrace(); return null; } } Место, куда я ввожу class PlayerPresenter @Inject constructor(val fileManager: FileManager, @Nullable val mediaController: MediaControllerCompat?) : PlayerContract.Presenter { <…> Я получаю следующую ошибку компиляции Error:(15, 10) error: android.support.v4.media.session.MediaControllerCompat […]

Кинжал при создании проекта

Когда я пытаюсь построить проект для генерации файлов Dagger, сбой завершается с исключением. Не могли бы вы рассказать мне, как исправить это или, по крайней мере, в каком направлении посмотреть. e: /home/hodzi/Projects/StudioProjects/StackViewer/app/build/tmp/kapt3/stubs/debug/com/hodzi/stackviewer/di/AppComponent.java:6: ошибка: [com.hodzi.stackviewer.questions. di.QuestionsComponent] com.hodzi.stackviewer.questions.di.QuestionsComponent имеет конфликтующие области: e: e: публичный абстрактный интерфейс AppComponent {e: ^ e: com.hodzi.stackviewer.di.AppComponent также имеет @Singleton e: java.lang.IllegalStateException: не […]