Ответы пользователя по тегу Android
  • Зачем загружать в стор все позиции магазина?

    alekseyHunter
    @alekseyHunter
    Android developer
    весь каталог позиций нужно заранее разместить в консоли разработчика.

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

    Зачем это нужно и можно ли это обойти?

    Для монетизации, зачем же еще) Так проще проверить покупку, меньше шансов на накрутку и т.д., и т.п.
    Ответ написан
    Комментировать
  • Как посредством подписок продавать digital content в android/ios приложениях?

    alekseyHunter
    @alekseyHunter
    Android developer
    Могу ли я просто проверять на бекенде куплена ли у пользователя эта подписка

    Так и делают.

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

    Кэш есть - если ты хранишь что-то в кэше. Можешь для актуализации посылать запрос на сервер, чтобы проверять наличие подписки. Можешь посылать Push-уведомление, а при его получении ставить тот же булевый флаг в Preferences и при его проверке чистить кэш. Можешь уменьшить время жизни кэша. Вариантов не так уж и мало.
    Ответ написан
    Комментировать
  • Можно ли в Android создать файл без сохранения на устройство?

    alekseyHunter
    @alekseyHunter
    Android developer
    Как-то все слишком сложно. Если нужно прям 100% хранить копию изображения в БД, конвертни картинку в Base64 и сохрани полученную строку в БД. А на обратном пути верни во View картинку в Base64 и преобразуй ее в Bitmap. Easy
    Ответ написан
    Комментировать
  • Возможно ли сделать вечное уведомление Unity?

    alekseyHunter
    @alekseyHunter
    Android developer
    Возможно ли в unity сделать вечное уведомление, которое невозможно скрыть

    Если уведомление внутри приложения - легко, посмотри как работает Toast или Snackbar в Android.

    А вот если хочешь уведомление в системе Android, лучше отказать от этой идеи. Это не user-friendly. После первого такого уведомления пользователь или запретит показывать любые уведомления приложению, или снесет приложение.
    Ответ написан
    Комментировать
  • Какую базу данных выбрать для Андроид приложения?

    alekseyHunter
    @alekseyHunter
    Android developer
    Если хотите хранить данные в приложении, используйте библиотеку Room. Это обертка для базы данных SQLite, но у нее ограниченный функционал.
    Если на удаленном сервере будете хранить данные, то там, скорее всего, будет установлена MariaDB или MySQL.
    Ответ написан
    Комментировать
  • Хранение базы данных?

    alekseyHunter
    @alekseyHunter
    Android developer
    Хранить базу данных на стороне клиента - то еще удовольствие.

    Во-первых, вам нужно будет у пользователя запросить разрешение на чтение/запись данных с устройства. Пользователь уже после этого запроса с 99% вероятностью удалит приложение, если это только не сверх-нужное приложение без аналогов или функционал приложения предусматривает работу с фалами. Ну а если не предоставит разрешение, то ваше приложение просто работать не будет. И его также удалят.
    Во-вторых, база данных используется не только для чтения, но и для записи. Что будет с сохраненными данными, если Вы выкатите новую версию приложения?

    Реальный пример, сейчас в одном моем приложении локальная база данных содержит айдишники локализованных строчек(переведены на несколько языков), так после каждого добавления новой строчки в файл ресурсов все айдишники слетают, и все значения в БД становятся неактуальными. Приходится после каждого обновления делать миграцию данных.
    Ответ написан
    Комментировать
  • Как наложить эффект экрана камеры на телефон android?

    alekseyHunter
    @alekseyHunter
    Android developer
    Ну, если этот вопрос относится к Instagram, то это или сделали через какую-то маску, или картинку сначала отфотошопили в графическом редакторе, а потом ее опубликовали.
    Ответ написан
    Комментировать
  • Как правильно задать прогрессБар?

    alekseyHunter
    @alekseyHunter
    Android developer
    Ох, зачем такие велосипеды?? А если вы решите еще 100 уровней добавить, будете для каждого новый блок кода писать?

    Используйте не абсолютную шкалу, а относительную. У вас система уровней, для каждой следующей нужно N-опыта + 30. Храните в отдельном массиве/HashMap пары значений "уровень/требуемый опыт, считая от 0", в отдельной переменной храните текущий опыт, и еще в одной локальной переменной текущий уровень, чтобы не пересчитывать по несколько раз.

    Плавно переходим к прогресс бару. Установите минимальное значение - 0, максимальное - 100. А для увеличения значения прогресс бара используйте формулу: текущее значение += полученный_опыт / (требуемый_опыт_на_текущем_уровне / 100). Требуемый_опыт_на_текущем_уровне считается как разница между предыдущем уровнем и текущим. Если текущее значение прогресса >= 100, устанавливаем значение 100 и запускаем метод по повышению уровня "Поздравляем, вы повысили лвл..." (в нем обнуляем прогресс бар). После этого потребуется повторная инициализация прогресс-бара - берем текущий уровень опыта, вычитаем из него макс. значение предыдущего уровня и передаем получившееся значение в метод по увеличению прогресса.

    Как-то так.
    P.S. О том, как определить текущий уровень - обращаемся к HashMap, фильтруем значения, отбрасывая те, которые меньше текущего опыта. Из найденных выбираем минимальное. Это и будет текущий уровень.
    P.P.S. А теперь ответ на ваш вопрос. У вас знаки неправильно стоят, постоянно выполняется второе условие (progress <= 60). Уберите для верхних ограничений знак равно. Вот в первом условии правильно (progress < 30).
    Ответ написан
    Комментировать
  • Android\Ios Приложение для классификации и распознавания текста на картинках?

    alekseyHunter
    @alekseyHunter
    Android developer
    Мобилку то легко сделать - RecyclerView + SearchView + Retrofit, а вот AI - это разворачиваете Сервак, создаёте бд с данными из фото и пишите rest Full api для связи с мобилкой.
    Ответ написан
  • Как развернуть и свернуть CardView в Android?

    alekseyHunter
    @alekseyHunter
    Android developer
    Можешь использовать готовые библиотеки, например эту
    Ответ написан
    Комментировать
  • Какие приложения можно написать под android, используя только firebase?

    alekseyHunter
    @alekseyHunter
    Android developer
    Хоть что можно написать. Логика будет только не на сервере, а в приложении. Данные будут браться из Firebase.
    Примеры: крестики-нолики с рейтингом игроков, Википедия по какой-то предметной области, изучение английского и т.д. и т.п.
    Ответ написан
  • Как начать работать в сфере андроид разработки?

    alekseyHunter
    @alekseyHunter
    Android developer
    знаю всякие полезные библиотеки современные по типу RecyclerView, Retrofit и тд. Теперь следующим этапом хочу начать уже собственно разрабатывать

    Если Вы "знаете", то почему уже что-то не написали? Если у человека есть желание писать программы, он сделает это и без подсказок на форумах.
    Фриланс для новичков - трата времени и нервов. Создавайте проекты и выкладывайте в Play Market, а спустя пару таких опубликованных приложений можно уже думать о работе.
    Ответ написан
    Комментировать
  • Какое решение выбрать для сохранения данных?

    alekseyHunter
    @alekseyHunter
    Android developer
    Идеальное решение - удалённый сервер с развёрнутой базой данных и Rest API к нему.
    Можно использовать Firebase бесплатно.
    Ответ написан
  • Почему выдает ошибку import android.support.v7.app.AlertDialog; в android studio и как это испривить?

    alekseyHunter
    @alekseyHunter
    Android developer
    Может создали проект на AndroidX без поддержки старинных библиотек?
    Удалите их и подключите подходящие, без support.v7.
    Ответ написан
    Комментировать
  • Почему при перелистывании фрагментов есть небольшой лаг?

    alekseyHunter
    @alekseyHunter
    Android developer
    Кода и зрелищ нам.
    В каком методе инициализируете?
    Правильно, адаптер Хранит текущую вкладку и по одной слева/справа. Он создал вкладки и держит их в памяти, поэтому после первой инициализации лагов нет, если вы адаптеру скажете перерисовать вкладки каждый раз, будут лаги постоянно.
    Ответ написан
  • Как поймать нажатие клавиши Back в EditText?

    alekseyHunter
    @alekseyHunter
    Android developer
    Вариант 1. Добавить обработчик onKeyListener для EditText.
    Вариант 2. Добавить обработчик onBackPressed во Fragment/Activity.
    Ответ написан
  • Android Studio Каким методом лучше реализовать Многократные Запросы на сервер?

    alekseyHunter
    @alekseyHunter
    Android developer
    1. Не буду цитировать своего преподавателя из универа. Вкратце, у вас плохой подход.
    2. Используйте push-уведомления. Бесплатно - Firebase.
    3. Если отслеживать в приложении в динамике - web-сокеты.
    Ответ написан
    2 комментария
  • Как переписать этот код на Kotlin?

    alekseyHunter
    @alekseyHunter
    Android developer
    R.layout.fragment_crime

    1) Импортируй не android.R, а com.your_package.R
    2)Нажми File->Invalidate/Restart
    Ответ написан
    2 комментария
  • Нужны ли эмуляторы для Android разработки?

    alekseyHunter
    @alekseyHunter
    Android developer
    Скажите, насколько необходимо запускать эмуляторы со всеми версиями Android в реальной промышленной разработке?

    Android Studio подсказывает, если используешь метод, который поддерживается с версией выше, чем текущая минимальная. Поэтому почти всегда заменяю такие методы, чтобы не тестировать на разных смартах.
    Эмуляторы полезны для подгона UI к разным размерам устройств. Например, сейчас делаю Custom View, размеры отступов у внутренних блоков зависят от общего количества dp на смарте. На стандартных HD, Hd+, Full HD все корректно обрабатывает, а на кастомных размерах - нет. Спасибо создателям смартов xD

    эмуляторы очень сильно тормозят начиная с Android 6.0.

    Это норма. Слабый проц, мало оперативки выделено под эмулятор. У меня летает на i5-9600k + 16gb ddr4 2600 МГц.

    боюсь, что ноут пыхнет.

    Ну, пыхнуть - не пыхнет, но при хорошей нагрузке может синий экран появится, если охлаждение не справится.
    Засеки временя на крафт релизных билдов с оптимизацией кода. У меня ~2 минуты с 5 проходами.

    Если нужны несколько эмуляторов, в Firebase можно бесплатно прогонять до 10 виртуальных устройств и 5 физических, с разными версиями оси и размерами экрана.
    Ответ написан
    Комментировать
  • Насколько удобно вводить данные голосом?

    alekseyHunter
    @alekseyHunter
    Android developer
    Если телефон заблокирован

    Юзать AppWidget для экрана блокировки, который будет слушать все. Хотя так батарея будет разряжаться.

    разблокирован,

    Юзать AppWidget для главного экрана.

    включен, выключен и т.д.

    Никак

    А если программа не запущена моя?

    Сидеть в трее, оттуда слушать, по нажатию на кнопку.
    Ответ написан
    Комментировать