Denis
похожий, да, но явнее и тоньше. Не только.
Я помню, как услышал про нее. Потом гуглил запрос: "android splities". Две недели не мог найти. А потом мне скинули ссылку, где было две "t" в названии🌚
Alexey
Всем привет. Подскажите пожалуйста, как лучше использовать ExoPlayer в MVP, что считается правильной практикой. У меня для инициализации и управления плеером есть отдельный класс PlayerManager и он требует контекст. В презентере доступа ведь к контексту нет, а вью вроде не должна ведь ничего делать кроме конкретных каких то действий с вьюхами, отрисовать что-то, изменить значение, цвет и т.д. Где мне поместить этот самый PlayerManager, собственно в этом вопрос)
Alexey
Заранее благодарю)
Alexey
Я читал, что это плохая практика вроде, It is not a good idea. You Presenter (base or otherwise) should not know about Context, Activity, Toast or anything else Android based.
ᴀɴᴅʀᴇʏ
В презентер нельзя отдавать контекст
Alexey
Презентер же ничего об андроидовских штуках знать вообще не должен
Alexey
Вроде
Георгий
А как тогда?)
Враппер контекста :)))
Alexey
Чет слабо себе представляю
Георгий
Это как?))
Ну делаешь интерфейсик, его реализацию, в реализацию игжектишь глобал контекст, в презентер игжектишь вот это чудовище по интерфейсу и вроде как контекст, а вроде как и нет
Alexey
Георгий
лол)) вот это да)
критикуешь - предлагай 🙂
Dyno
критикуешь - предлагай 🙂
не, не критикую. просто интересно) а с чем это связано, почему прсто контекст нельзя в презентер передать?
Георгий
George
Хелп люди плз, что значит что с импортом
Mike
я критикую) решение — отдавать не контекст, а функцию, которая делает с ним чо надо
George
Я понимаю что ошибка, как ее исправить я все перегуглил
Mike
Я понимаю что ошибка, как ее исправить я все перегуглил
подключить саппорт в7 (или перейти на андроидх)
DarkPerl
Я понимаю что ошибка, как ее исправить я все перегуглил
Попробуйте начать с проверки того, что подключаете
Георгий
я критикую) решение — отдавать не контекст, а функцию, которая делает с ним чо надо
разве это не тот же самый враппер, только не в ввиде интерфейса, а функциии?
Mike
а, для мультиплатформенности
лол, мультиплатформенные приложения пишут единицы
Mike
мое имхо, что ни в одном слое кроме view в import не должно быть слова android
чо делать со SparseArray? Они уж точно не во вью нужны
Mike
а для чего тогда это надо?
для тестирования
Георгий
а для чего тогда это надо?
инверсия зависимостей
Георгий
и все ее последствия
Mike
в том чтобы оборачивать контекст нет никакой IoC
George
подключить саппорт в7 (или перейти на андроидх)
А как в андроидх поменять тулбар?
𝙈𝙖𝙠𝙨𝙤𝙣𝙞𝙘 🇷🇺
Друзья, я сделал переход сваймами между активити, но почему то свайпы работают не по всей поверхности активити, там где есть какие то изображения и кнопки, а на пустой активити свайп работает по всей поверхности, в чем может быть причина? и как решить? я думал что причина в привязке слушателя прикосновений к слою, слушатель висит на RelativeLayout, менял и на LinearLayout, так же создавал LinearLayout поверх всех кнопок и картинок... Результат такой же...(
George
Он написан у меня, я не могу его заменить, из-за того что библиотека суппорт не подключается
Георгий
в том чтобы оборачивать контекст нет никакой IoC
ну тестируемость это следствие как раз DI
Mike
ну тестируемость это следствие как раз DI
нет, это следствие IoC, а DI как раз ему препятствует) в любом случае, избавление от импортом android.* — это не про DI, а про то, чтобы код в тестах хоть как-то работал
George
Вот здесь я устанавливаю кастомный тулбарй
Mike
Вот здесь я устанавливаю кастомный тулбарй
я тебе сейчас ридонли установлю с такими скриншотами
Dug
Нельзя кидать фото экрана
George
А так ещё кто-то делает?
Да я учусь ток, понял про фото, сори
Mike
Нельзя кидать скриншоты?
тут нет никакого формального «нельзя», но фото экрана — реально издевательство, сам его почитать попробуй
George
Понял, может кто нибудь документацию подсказать, везде одно и тоже пишут с помощью библиотеки android.support.v7, есть другой способ?
alex
appContext.getSystemService(Context.CONNECTIVITY_SERVICE)
alex
Спасибо большое всем кто ответил) попробую)
мне кажется через retrofit2 можно реализоватьь
George
вот что у меня выходит, помогите пожалуйста
alex
val connectivityManager = appContext.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager val networkInfo = connectivityManager.activeNetworkInfo return networkInfo != null && networkInfo.isConnected
alex
пост запрос послать черезе него
alex
предварительно проверив доступ к сети
Jacob
Товарищи, делаю свой лаунчер, и когда нажимаю многозадачность системную кнопку там какойто левый фон, как на дефолтном лаунчере, как этот фон поменять?
Jacob
если на твоем вью чужой фон, значит надо прописать background
Непонял, на активити которая HOME стоит свой фон, но на многозадачности другой, где еще background прописать?
Dug
От 3 до 7
𝙈𝙖𝙠𝙨𝙤𝙣𝙞𝙘 🇷🇺
у меня в приложении авторизация по email и паролю через firebase. как сделать, что бы когда пользователь создал аккаунт, приложение запомнило его и не требовало каждый раз вводить email и пароль?
Denys
вот что у меня выходит, помогите пожалуйста
Установите тему для приложения/активити с ".NoActionBar"
Denys
Но, блин. Это ведь есть в офф документации. https://developer.android.com/training/appbar/setting-up.html#add-toolbar
George
Denys
Тему применили?
Кирилл
Немного тупой вопрос, но всё же: В доке PackageManager#queryIntentActivities написано Retrieve all activities that can be performed for the given intent. А вот как назвать метод, который для определённого Intent будет проверять, не пустой ли список, который отдал queryIntentActivities? Intent.isCallable()? Intent.isAvailable()?
Кирилл
.queryIntentActivities().isNotEmpty()?
Ну внутри этого метода так и будет. :) А я это хочу обернуть и с нормальным названием, т.к. вызываться будет часто.
Кирилл
И вот хз как назвать такой метод.
George
Какой пункт из доки не получается?
Да сделал, Спасибо большое, очень долго мучался
Denys
Да сделал, Спасибо большое, очень долго мучался
В любой непонятной ситуации следует обращаться к документации на d.android.com по теме, потом - искать вопрос или текст ошибки в google, почитывая SO, Medium и прочее, а уж потом - спрашивать в чате, правильно сформулировав вопрос (не забыв упомянуть ошибку, логи, неработающий код и испробованные методы). И не только потому, что здесь все злобные, неотзывчивые и только лишь подшучивают над новичками. А потому, что если привыкнуть к тому, что гуглит кто-то другой или подсказывает решение - люди не учаться решать проблеммы самостоятельно, а значит и не развиваются как специалист.