Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Классический пинбол, как в древнем игровом автомате или в компактной игрушке: есть пружины, шарики и препятствия. В нашем варианте можно не только зарабатывать очки: чтобы пройти уровень, придется выполнить дополнительную миссию.

Пинбол Пикабу

Аркады, На ловкость, Казуальные

Играть

Топ прошлой недели

  • Rahlkan Rahlkan 1 пост
  • Tannhauser9 Tannhauser9 4 поста
  • alex.carrier alex.carrier 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
20
Аноним
Аноним
10 месяцев назад
Бесит!

Все тут ругают РуТуб, а я в шоке от РуСтор⁠⁠

Мало того, что у них автообонвление кривое - даже при включенной галочке надо вручную подавать команду.
Так еще и в список твоих приложений (вкладка "Моё" на секундочку) - напихивают другие приложухи.
Таким образом, если предварительно не проверить список и просто жжмакнуть на кнопку "Установить все" - на телефоне окажется тонна всякого стороннего говна. И нет, это не предложка по рекомендациям, они просто подсовывают в список твоих приложений к обновлению.
Так, у меня посыпалось: Национальная лотерея, ВТБ, Альфа, Профи и прочее прочее.


Горите в аду, уёбки!

[моё] Rustore Жадность Мат Текст Жалоба Бесит
5
elenasuperstar
elenasuperstar
10 месяцев назад

«Друзья»: социальная сеть от российских разработчиков⁠⁠

«Друзья»: социальная сеть от российских разработчиков Сайт, Приложение, Социальные сети, Google, Rustore, Друзья, Интернет, Чат-бот, Программа, Информационная безопасность, Заявки в друзья, Друзья детства, Дружба, Длиннопост

Логотип: социальной сети "Друзья"

Всем привет, искала для себя новую соц сеть и наткнулась на Друзья.

И теперь поделюсь с вами! это не реклама а чисто от меня.

Она есть и в google play, rustore, getapps для Iphone сайт у неё есть!

Провела там 2 дня вот скриншот.

«Друзья»: социальная сеть от российских разработчиков Сайт, Приложение, Социальные сети, Google, Rustore, Друзья, Интернет, Чат-бот, Программа, Информационная безопасность, Заявки в друзья, Друзья детства, Дружба, Длиннопост

Сделала скриншот в браузере "Друзья" социальная сеть.

Теперь расскажу.

Друзья: социальная сеть, созданная отечественными разработчиками, становится всё более популярной среди пользователей интернета. Этот проект напоминает атмосферу популярных социальных сетей, таких как «Вконтакте» и «Одноклассники», но при этом предлагает уникальные возможности и функции.

Одной из главных особенностей которые мне нравятся! Наличие голосовых сообщений, которые можно использовать во всём проекте. Также пользователи могут загружать и прикреплять файлы из разных разделов, таких как фото, видео, музыка и другие.

Вот скрин взят из интернета.

«Друзья»: социальная сеть от российских разработчиков Сайт, Приложение, Социальные сети, Google, Rustore, Друзья, Интернет, Чат-бот, Программа, Информационная безопасность, Заявки в друзья, Друзья детства, Дружба, Длиннопост

Друзья скриншот из RuStore

Есть возможность создавать альбомы с треками, а также просматривать топ и осуществлять поиск музыки без рекламы! Видео и загрузка файлов также доступны в приложении, что делает его удобным лично для меня и функциональным.

Скрин из маркета гугл

«Друзья»: социальная сеть от российских разработчиков Сайт, Приложение, Социальные сети, Google, Rustore, Друзья, Интернет, Чат-бот, Программа, Информационная безопасность, Заявки в друзья, Друзья детства, Дружба, Длиннопост

Скриншот из Гугл маркета

Лично для меня проект Друзья — это социальная сеть, которая предлагает множество возможностей для общения, обмена информацией и развлечения.

Я помню Вконтакте ещё в 2015 мне нравился!

Благодаря таким функциям, как подарки, стикеры, музыка, видео, блоги, игры, группы, истории, посты и мессенджер.

Показать полностью 4
Сайт Приложение Социальные сети Google Rustore Друзья Интернет Чат-бот Программа Информационная безопасность Заявки в друзья Друзья детства Дружба Длиннопост
38
player.klesk
player.klesk
10 месяцев назад

Хорошая попытка, хе-хе⁠⁠

МОСКВА, 23 сен - РИА Новости. Госдума может принять до конца года закон об обязанности Apple разрешить устанавливать российский магазин приложений RuStore, заявил зампред комитета ГД по информполитике Антон Горелкин в своём Telegram-канале.

"Правительство РФ положительно оценило наш законопроект, который даст возможность устанавливать российский магазин приложений RuStore на гаджеты Apple. Все замечания, о которых говорится в отзыве, будут учтены. Рассчитываю, что этот важный законопроект, которого ждут и пользователи, и разработчики приложений, Госдума примет во всех трех чтениях до конца года", - написал Горелкин.

Госдума Политика Apple Rustore Текст
53
2
SeniorFeodal
10 месяцев назад

Мособл ЕИРЦ кому сделали хуже?!⁠⁠

Мособл ЕИРЦ кому сделали хуже?! Google, Санкции, Блокировка, Мособлеирц, Rustore, Длиннопост
Мособл ЕИРЦ кому сделали хуже?! Google, Санкции, Блокировка, Мособлеирц, Rustore, Длиннопост

И так, имеем андроид и необходимость установить приложение Мособл еирц.
в наличии оно почему-то только в Google play маркете, в ru store его почему то нет, хотя является российским и жизненно важным для жителей московской области.
Из-за блокировок всего контента и приложений гугла грузится оно только через мобильный интернет, а через домашний вайфай нет.
вот и появляется вопрос кому лучше сделали этими блокировками? Своему населению, гражданам?

Показать полностью 2
Google Санкции Блокировка Мособлеирц Rustore Длиннопост
5
15
OneClickStudio
OneClickStudio
10 месяцев назад
Android Developers

Волна по "Честной цене" - тру приложение для Android ч.3⁠⁠

Здорово, пикубушники и пикабушницы.

Мы продолжаем нашу замечательную историю про обновление бесплатного приложения, придуманного единомышленниками, тут, на Пикабухе, для удобного подсчета цен в магазинах.

Напомню, давным давно мы заловились с товарищем @Stich.626 чтобы сделать единообразное и бесплатное мобильное приложение + сайт для расчета ценников в магазинах, которое решили не бросать, любить и лелеять, насколько это возможно.

Волна по "Честной цене" - тру приложение для Android ч.3 Цены, Приложение на Android, Программирование, Rustore, Google Play, Длиннопост

0 - Что делаем сегодня?

В данном посте мы добавляем функционал сравнения ценников, смотрим отзывы пикабушников из магазинов приложений, и конечно же внедряем новые удобства на основе этих самых отзывов (иначе зачем мы их читаем). Готовы? Поехали!

Для Лиги Лени - этот пост опубликован в техническом сообществе, где дальше будет рассказываться много непонятных вещей, в частности, как пишется приложение, что в нем используется и как взаимодействует.

Если вы просто хотите посмотреть программу, скачать / потыкать ее в действии, или просто посмотреть что это за штука, пожалуйста посмотрите обзорный скриншот выше, или проследуйте по ссылкам, которые я публикую без зазрения совести - потому что само приложение бесплатное, и таковым и останется:

https://play.google.com/store/apps/details?id=ru.oneclickstu...

https://www.rustore.ru/catalog/app/ru.oneclickstudio.fairpri...

1 - Разбираемся с понятием сравнения

Итак, в самом начале давайте поразмышляем, зачем вообще нам может быть полезен такой раздел со сравнением, и обусловлена ли необходимость в нем как такового (потому что у нас уже есть прекрасный список, который хоть чуть чуть, но выполняет эти задачи):

  • Когда мы сравниваем один (или несколько) ценников на товарах, обычно мы смотрим их по схожим характеристикам. Например, мы хотим узнать, какое самое дешевое молоко из представленного в магазине. Или пиво. Или хлеб. Или что вы там вечером едите :)

  • В связи с этим у нас формируется некий "паттерн" поведения пользователя в реальной жизни. Ага, я увидел пельмени по 450 рублей за 500 грамм, теперь я хочу сравнить другие пельмени, и посмотреть, что дешевле в пересчете на килограмм.

  • По такой логике наше сравнение обуславливается тем, что у нас есть заведомо известные параметры товара (раз уж взяли пельмени, то это вес в граммах и цена), а также то, что сравнивается один товар из нескольких производителей, или марок.

  • Другими словами, было бы очень удобно "на лету" подсвечивать самое выгодное предложение (каким нибудь зеленым цветом), но при этом ограничить расчеты по одному типу (к сожалению, пельмени не измеряются в литрах, а жаль)

1.1 - Макет, рисуйся!

Как обычно, перед тем, чтобы где то нашкодить сверстать, надо представить "экран" будущей активности, чтобы прикинуть ее на существующих формах, и оценить внешний вид. И конечно нужно понять где будет "точка входа" для этой самой активности, и насколько это удобно для обывателей.

Волна по "Честной цене" - тру приложение для Android ч.3 Цены, Приложение на Android, Программирование, Rustore, Google Play, Длиннопост

На данный момент нам прекрасно подойдет слой с результатами, который мы видим после каждого расчета. Считаю это удобным, так как при необходимости мы начнем сравнивать сразу с этой цены, а еще нам не нужно выбирать тип сравнения (мы его выбрали ранее), а даже если в этом в расчете нет необходимости, можно просто вернуться назад как обычно.

Для этого немного немного поправим данный слой, добавим новую кнопку, и иконки для наглядности, и выделим функцию шеринга (если ей еще кто то пользуется в этом веке). Действия объясняются буквально одной строкой для вьюх типа Button:

android:drawableLeft="@drawable/back_48px"

1.2 Экран активности

Дальше интереснее. В текущем виде наше сравнение товаров, это как отдельная сущность, которая не должна нас связывать с основной функцией приложения. То есть, в данный момент мы именно сравниваем цены одинакового типа, поэтому экран тоже должен быть отдельный.

Для этого появляется активность CompareActivity со своими слоями, слушателями на физические (или виртуальные) кнопки, а также функцией передачи из одной активности в другую.

Передаем мы, напомню, сведения из последнего расчета

Волна по "Честной цене" - тру приложение для Android ч.3 Цены, Приложение на Android, Программирование, Rustore, Google Play, Длиннопост

Экран с тестовыми сведениями для наглядности

Что мы можем тут узреть:

  1. Приветственная карточка, которая повторяет функционал из главной формы, и служит напоминанием, что тут вообще происходит. Кстати, считается плохой практикой учить пользователя что делать (программа должна быть сразу интуитивно понятной), но для самых маленьких я не могу не оставить такую подсказку. И конечно, ее можно скрыть, посредством sharedPreferences, и она не будет надоедать.

  2. Немного переделанный слой из списка, в котором мы сразу назначили цвет для ценника, который будет "перескакивать" на выгодную цену, в зависимости от наших подсчетов. Но так как сейчас результат один, то вначале он и будет самым выгодным, поэтому заранее окрашен.

  3. Еще одна карточка для ввода значений, и добавления их к нашему списку. Постарался уместить ее в одну строку для быстроты ввода, при этом не нарушая читабельности (везде ясно что где вводится)

1.3 Принимаем и передаем сведения

Чтобы информация о последнем расчете попала в нашу активность, ее нужно передать из предыдущей. Для этого мы назначаем отдельный метод для кнопки "Начать сравнение", который остается в главной форме:

Intent intent = new Intent(MainActivity.this, CompareActivity.class);
intent.putExtra("get_compare_price", compare_price);
intent.putExtra("get_compare_weight", compare_weight);
intent.putExtra("get_compare_type", compare_type);
intent.putExtra("get_compare_result", compare_result);
startActivity(intent);

А в следующей активности мы уже запрашиваем эти сведения в onCreate, дополнительно убеждаемся в том что запрошенные поля не пустые (чтобы не получить NullPointerException, если приложение будет выгружено из памяти), и помещаем их на форму через метод добавления первого пункта.

get_compare_price = intent.getStringExtra("get_compare_price");
get_compare_weight = intent.getStringExtra("get_compare_weight");
get_compare_type = intent.getStringExtra("get_compare_type");
get_compare_result = intent.getStringExtra("get_compare_result");

Bundle extra = intent.getExtras();
if (extra !=null) {
SetFirstCompareItem();
}

1.4. Возвращаем значения расчетов к изначальному виду

Когда мы передавали результат из одного экрана на другой, то мы поневоле изменили тип передаваемых сведений. Был double при передаче, а стал String.

Нам нужно вернуть все обратно, чтобы приложение могло сравнивать одинаковые типы данных, а также для сохранения цен (у нас остается две цифры после запятой). Если оставить типы смешанными, расчет может производится некорректно, и подсвечиваться тоже

Поэтому мы меняем типы обратно, посредством

Double.parseDouble(имя_переменной)

1.5. Считаем!

Теперь, когда мы готовы к подсчетам, выполняем стандартные действия из предыдущего экрана, ограничивая размер списка 5 элементами.

Предыдущие действия = означает добавление показателей в массив списка как на первом экране, при этом мы сравниваем новый результат со всеми предыдущими, и если он меньше, мы перекрашиваем самый выгодный элемент в зеленый, а остальным назначаем стандартный.

Способ крайне неудобный, но быстрый в написании, и если бы элементов списка было.. ну штук 50, приложение бы офигело, и сожрало всю память вашего устройства.

При этом, обновился тип для формирования цены - раньше он указывался без привязки с региону, и в некоторых местах цена была с запятой (123,45), а где то с точкой (123.45)

Если для простого списка на главной пофиг, что показывать, то для сравнения такое нельзя оставлять, так как приложение сразу вылетит, информируя нас о несопоставимых типах данных, поэтому приведем их к общему знаменателю вообще везде, оставив в качестве разделителя точку, и указав регион:

String.format(Locale.ENGLISH, "%.2f", price) + " ₽"

1.6 Новые удобства

Чтобы считать было еще удобнее, добавим метод, который после каждого добавления по кнопке (или по клавише с клавиатуры) вновь активирует текстовые поля. Вроде мелочь, а необходимости тыкать по новой в графу цены больше не будет:

private void ClearInputs() {
getInputPriceItemCompare = findViewById(R.id.getInputPriceItemCompare);
getInputWeightGRCompare = findViewById(R.id.getInputWeightGRCompare);

getInputPriceItemCompare.setText("");
getInputWeightGRCompare.setText("");

getInputWeightGRCompare.clearFocus();
getInputPriceItemCompare.requestFocus();
}

2. Новые удобства из отзывов

Так как отзывы я читаю (и даже иногда отвечаю), то будем руководствоваться сразу скриншотами. Итак, рассмотрим вопрос, о котором я раньше не думал:

Волна по "Честной цене" - тру приложение для Android ч.3 Цены, Приложение на Android, Программирование, Rustore, Google Play, Длиннопост

Действительно, если на большом телефоне начинать тыкать в поля, которые выше клавиатуры, может быть неудобно. С заключениями соглашусь, поэтому пойдем доделаем этот момент.

Чтобы добавить такой способ на нажатие из экранной клавиатуры, воспользуемся объявлением слушателя для наших полей, которые уже есть в форме:

TextInputEditText.OnEditorActionListener

Он добавит в класс новый метод, которому мы будем говорить, что делать после нажатия определенных клавиш на клавиатуре.

К сожалению, устройств (и версий андроида) настолько много, что у одних может показываться галочка (ОК), а у кого то стрелка вперед (NEXT). Чтобы этого избежать, дайте два определим реакцию на обе клавиши:

public boolean onEditorAction (TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE || actionId == EditorInfo.IME_ACTION_NEXT) {
AfterStart();
return true;
}
return false;
}

Тут стоить дать несколько слов о методе AfterStart(), ведь ранее мы использовали другой способ BtnStart(View view)

Как не трудно догадаться, методы сами по себе отличаются, и один унаследован (и объявлен) в слое (View), где мы верстали экран, поэтому вызвать метод, который объявлен в коде мы не можем.

Но и добавлять дополнительные строки, с присвоением кнопки в коде, и создание для нее отдельного слушателя тоже не самая хорошая практика. Ну то есть хорошая конечно, но по времени устаревшая.

Поэтому было решено сделать "костыль" - метод, объявленный через View, вызывает программный метод в коде. Все довольны, добавлено.. ну три строчки кода

3. Что по багам?

3.1 Уже передав версии в релиз, я обнаружил, что часть сведений, которые мы меняли для нового экрана остались в старом формате. Это видно по скриншоту в самом начале:

Волна по "Честной цене" - тру приложение для Android ч.3 Цены, Приложение на Android, Программирование, Rustore, Google Play, Длиннопост

Этот тип данных поступает в формате String, поэтому часть текста будет обрезаться, если число само по себе ровное (без копеек)

А если же наоборот, передать сумму с копейками, то в новом экране покажется правильный формат, но он по все равно не тот, публикуется как String, а должен быть double

Так как эта часть кода не участвует в методе расчета, то ничего не поломается, но внутренний перфекционист недоволен, и я обязательно поправлю в будущем.

3.2 Для экрана сравнения хорошо бы добавить (в заголовке) что мы вообще сравниваем - килограммы, литры, или штуки. Думаю будет полезно, и главное наглядно

3.3. И возможно, стоит удалять элементы из списка, чтобы переписать что нибудь. Об этом я не подумал, но вы напомните в отзывах

И конечно же предлагайте свои варианты, смотрите, оценивайте, считайте.

Спасибо, что дочитали эту портянку текста, спасибо тем, кто оставляет теплые слова, а также тем, кто закидывает на пачку чипсов.

Всем бобра!

P.S. На обзорном скриншоте я ненароком засветил функцию, которую буду делать потом. Визуально она очень интересна, а сама по себе.. ну такое есть в любой программе, которыми вы могли пользоваться.

Теперь точно пока!

Показать полностью 4
[моё] Цены Приложение на Android Программирование Rustore Google Play Длиннопост
1
433
dadont
11 месяцев назад

RuStore, вы олени⁠⁠

Зачем у Вас кнопка "установить все", если все равно приходиться нажимать "установить" на каждом приложении?

Картинка с текстом Картинки Текст Rustore
81
2650
Skydisp
11 месяцев назад
Android

RuStore⁠⁠

Товарищи разработчики RuStore (Кто не в курсе - импортозамещенный магазин приложений для Андроид)!
Я честно пытался поддержать отечественного производителя и пользоваться вашим магазином, но вчера его удалил, потому что при включенных настройках "Обновлять автоматически", "загружать в фоне", отключённом у энергосбережении у рустора, отключённой проверке безопасности xiaomi эта падла все равно каждый день светит уведомлениями, что нужно обновить десяток приложений. И если ты забил на них на неделю, а потом тебе нужно что-то скачать, то минут 15 ты не сможешь им пользоваться, а будешь только отвечать на вопросы: Загрузить? Обновить? Установить? Это бесит. После удаления вашего чуда, зашёл в GetApps, нажал
"обновить все", закрыл и забыл.
Когда исправите - сообщите, попробуем поддержать ещё раз.

Android Rustore Импортозамещение Текст Бесит Негатив
318
serega.s4
serega.s4
11 месяцев назад

Продолжение поста «Ru store обновил приложения, потерял всё»⁠⁠1

запись экрана телефона, в первый раз не было установок с "гет аппс", просто улетели приложения. кэш и данные. на этом видео ру стор удаляет гугл приложение, после ставит от гет аппс, но приложение "чистое" без авторизации, без кэша сохранённого, даже настройки пуш или темы приложения стоят по стандарту. я долго настраивал свой хиаоми, чтобы было так как надо мне. а теперь обновления сказали заново настраивай

[моё] Rustore Потеря данных Видео Без звука Вертикальное видео Ответ на пост
10
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии