Anonymous
подписать не забыл?
Anonymous
попробуй jarsigner -keystore my.keystore -storepass mypass -keypass mypass myfirst.apk key0
Anonymous
как ты билдишь апк? через ./gradlew build?
Anonymous
Если билдишь через студию, то подписать тебе надо через Build->Generate Signed Apk
Anonymous
на выходе получишь подписанный апк
Anonymous
каждый. но возможно в настройках есть галка, которая изменит поведение.
Anonymous
смотря какой вариант билда выбрал.
Anonymous
так а в чем конечная цель заключается?
Anonymous
https://developer.android.com/studio/run/index.html
Anonymous
вот вручную
Anonymous
https://developer.android.com/studio/build/building-cmdline.html
Alex
На тему лысого из бразерс) В Новосибирске на афтерпати девфеста разливал пиво...
Alex
Anonymous
наколько мне известно там только дебаги лежат и неподписанные релизы
Anonymous
все что подписано лежит в app ну или смотри здесь если что то в настройках менял
Anonymous
Dev
Ребята, помогите проблему решить. Я использую Recycler View с автоподгрузкой и это во фрагменте. Подгрузка идёт в Adapter.setOnLoadMoreListener И проблема в том, что она вызывается только один раз, а не каждый раз когда доходим до конца. А в активити каждый раз вызывается
Dev
Думаю, ошибка в том что она во фрагменте
Dev
Как решить?
Kirill
.jar, вероятно
dobrowins
никто не знает???
Во-первых, учитесь корректно задавать вопросы, чтобы коллегам не надо было выяснять, что у Вас за ОС и версия студии. Это странно смотрится, особенно вкупе со спамом из мемов. Во-вторых, AS на линуксах часто чудит из-за поставляемых именно с официальным установщиков библиотек. Посмотрите этот совет — мне в свое время помог https://stackoverflow.com/questions/42659272/emulator-on-android-studio-doesnt-start-after-sdk-tools-update-to-25-3-1/43916742#43916742
Konstantin
Парни есть простенький пример для приложения клиента grpc, мануальчик?
Igor
Народ, а compile 'com.android.support:appcompat-v7:26.0.0-alpha1' реально до сих пор в alpha?
Aleksander
Закинь код в другое место, а то бан будет)
Aleksander
Да, разрешаем строчки 3-4
Aleksander
Остальное мозолит глазат
Aleksander
Скинь просто на pastebin
Max
Скинь просто на pastebin
Да ладно, он же не 100 строк скинул)
Aleksander
В чем проблема закинуть на гист или пастбин?
Aleksander
А разделить в самом файле ?
Антон
Вроде как в ClusterRenderer'e надо переопределить какой-то метод и там что-то сделать) Точнее не скажу ибо давно делал и щас нет возможности посмотреть.
Александр
Народ, студия косячит или я криворукий?)
Александр
Спасиб.)
Igor
Я бы сказал мейнстримовая
Anonymous
подскажите ,хочу прикрутить анимацию когда изменяю размер view
Anonymous
т.е у меня вью одно размера,Я программно меняю на другой вот на этот момент
Anonymous
ObjectAnimator это понятно,но примеры очень скудны
Anonymous
будем пробовать
Alexander
ObjectAnimator это понятно,но примеры очень скудны
https://speakerdeck.com/gdgspb/best-practices-for-animations-in-android
Alexander
Презентация с прошлых выходных, так что вряд ли еще есть. Но там есть примеры кода. Считайте, выжимкой из документации с примерами.
Anonymous
Ребят, а подкинте инфы о том как искать файлы на законнекченом USB девайсе, пожалуйста. А то немного не понимаю даже как прогуглить это
Anonymous
Делаешь аппу, привинчиваешь всякие In-app purchses, Ads. Тратишь $$$$ на маркетинг, если выстрелит - получаешь профит
Anonymous
Мне просто проверить, пока что, есть ли файл с конкретным названием (без привязки к формату). Спасибо, почитаю как это делать
Anonymous
Народ, всем привет Можете, пожалуйста, помочь с алгоритмом? Есть отсортированнвй массив Необходимо разбить его на три группы так, чтобы суммы элентов в каждой группе были равны
Igor
Вопрос для знатоков: NIO NIO2 в Android поддерживает epoll? Java на Linux поддерживает с ядра 2.6 и вроде андроид подходит, но пруфа не видел.
Николай
Есть чатик по продвижению приложений?
Artem
Ребята, как можно разукрасить контекстное меню?
Artem
Есть ссылочки? Может стиль повесить можно?
Gleb
если в concat дать 2 obs и второй выкинет error, то первый не выполнится?
Roman
concatDelayError
Roman
тогда первый кинет в onNext и потом второй в onError полетит
Gleb
что я делаю не так?)
Roman
что я делаю не так?)
это я походу для rxjava1 сказал
Gleb
а для второго есть что подобное
Gleb
https://stackoverflow.com/questions/32487573/reactivex-concat-doesnt-produce-onnext-from-first-observable-if-second-fails-im
Gleb
если кому интересно, про мой вопрос
Denis
Добро утро, ребята. Извините за полотнище) Проблема в обновлении списка RecyclerView Ребята помогите решить такую проблему: есть фрагмент. В нем отображается список с помощью RecyclerView Отображаением подстановкой данных занимается View Holder и Adapter, каждый из которых реализован в виде приватного класса Логика такая. Когда данный элемент отображается пользователю (каждый раз) идет запросик в лакальную бд, и на основе этих данных делаются запрос на сервер с помощью библиотеки retrofit2, в ответ на который прилетает json, который сериализуется в список типа моего класса: ---- Call<List<SchoolJournal>> schoolJournalListCall = mEsoApi.getSchoolJournalList(authHeader, idChidren, mDateString, mDateString); schoolJournalListCall.enqueue(new Callback<List<SchoolJournal>>() { @Override public void onResponse(Call<List<SchoolJournal>> call, Response<List<SchoolJournal>> response) { if (response.isSuccessful()) { if (response.code() == 200) { List<SchoolJournal> schoolJournalList = response.body(); if (schoolJournalList.size() > 0) { mSchoolJournalList = schoolJournalList; mAdapter.notifyDataSetChanged(); } else { Toast.makeText(getContext(), "Данных нет", Toast.LENGTH_SHORT).show(); } } } else { Toast.makeText(getContext(), "Ошибка клиента: " + response.body(), Toast.LENGTH_SHORT).show(); } } @Override public void onFailure(Call<List<SchoolJournal>> call, Throwable t) { Toast.makeText(getContext(), "Данные не пришли", Toast.LENGTH_SHORT).show(); } }); ---- где mSchoolJournalList - поле класса фрагмента. Данные туда прилетают. Данный лист не пуст. Но данные не обновляются в RecyclerView. Что делать и как быть, я не знаю. (
Andrew
вызывай "mAdapter.notifyDataSetChanged();" с UI потока
Denis
т.е. в методах жизненного цикла фрагментов?
Denis
я вызвал во всех методах начиная с onCreate и заканчивая onResume
Andrew
Activity.runOnUiThread();
Andrew
Если данные попадают в адаптер, то должно помочь
Denis
Андрей, данный код нужно написать вместо mAdapter.notifyDataSetChanged(); ?
Gerc
Добро утро, ребята. Извините за полотнище) Проблема в обновлении списка RecyclerView Ребята помогите решить такую проблему: есть фрагмент. В нем отображается список с помощью RecyclerView Отображаением подстановкой данных занимается View Holder и Adapter, каждый из которых реализован в виде приватного класса Логика такая. Когда данный элемент отображается пользователю (каждый раз) идет запросик в лакальную бд, и на основе этих данных делаются запрос на сервер с помощью библиотеки retrofit2, в ответ на который прилетает json, который сериализуется в список типа моего класса: ---- Call<List<SchoolJournal>> schoolJournalListCall = mEsoApi.getSchoolJournalList(authHeader, idChidren, mDateString, mDateString); schoolJournalListCall.enqueue(new Callback<List<SchoolJournal>>() { @Override public void onResponse(Call<List<SchoolJournal>> call, Response<List<SchoolJournal>> response) { if (response.isSuccessful()) { if (response.code() == 200) { List<SchoolJournal> schoolJournalList = response.body(); if (schoolJournalList.size() > 0) { mSchoolJournalList = schoolJournalList; mAdapter.notifyDataSetChanged(); } else { Toast.makeText(getContext(), "Данных нет", Toast.LENGTH_SHORT).show(); } } } else { Toast.makeText(getContext(), "Ошибка клиента: " + response.body(), Toast.LENGTH_SHORT).show(); } } @Override public void onFailure(Call<List<SchoolJournal>> call, Throwable t) { Toast.makeText(getContext(), "Данные не пришли", Toast.LENGTH_SHORT).show(); } }); ---- где mSchoolJournalList - поле класса фрагмента. Данные туда прилетают. Данный лист не пуст. Но данные не обновляются в RecyclerView. Что делать и как быть, я не знаю. (
Лист в адаптер нужно передать
Denis
Адаптер у меня сейчас выглядит так:
Denis
private class Adapter extends RecyclerView.Adapter<ViewHolder> { private List<SchoolJournal> mAdapterSchoolJournalList; public Adapter(List<SchoolJournal> schoolJournalList) { mAdapterSchoolJournalList = schoolJournalList; } /** * Метод onCreateViewHolder вызывается виджетом RecyclerView, когда ему потребуется новое * представление для отображения элемента. В этом методе мы создаем * объект View и упаковываем его в ViewHolder. RecyclerView пока не ожидает, что * представление будет связано с какими-либо данными */ @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { LayoutInflater layoutInflater = LayoutInflater.from(getActivity()); View view = layoutInflater .inflate(R.layout.school_journal_list_item_day_recycler_view, parent, false); return new ViewHolder(view); } /** * Метод onBindViewHolder связывает представление View объекта ViewHolder с объектом модели. * При вызове он получает ViewHolder и позицию в наборе данных. Позиция используется для * нахождения правильных данных модели, после чего View обновляется в соответствии * с этими данными */ @Override public void onBindViewHolder(ViewHolder holder, int position) { SchoolJournal schoolJournal = mAdapterSchoolJournalList.get(position); holder.bindCrime(schoolJournal); } @Override public int getItemCount() { return mAdapterSchoolJournalList.size(); } }
Denis
т.е. мне нужно сделать сеттер для private List<SchoolJournal> mAdapterSchoolJournalList ?
Denis
И принудительно его вызывать перед обновлением адаптера?
Denis
Я правильно понял?
Gleb
Я правильно понял?
public void setData(List<> items) { items.addAll(items); notifyDataSetChanged(); }
Andrii
Опа, бест практикс подъехал) Только перед этим не забудь проинициализировать коллекцию и лучше через конструктор не передавать
Gerc
Через конструктор по ссылке норм
Denis
Глеб, спасибо. сделал такой вот метод в адаптере: public void setData(List<SchoolJournal> schoolJournalList) { mAdapterSchoolJournalList.clear(); mAdapterSchoolJournalList.addAll(schoolJournalList); notifyDataSetChanged(); }
Denis
сделай метод setData
Denis
Но вот вызвать на экземпляре адаптера этот метод почему-то нельзя, хоть он и public
Denis
или его не нужно принудительно вызывать?