• Как сделать цвет на macbook retina менее насыщенным и спасти зрение?

    @sapl
    Привет,
    Столкнулся с этой проблемой после перехода на macbook pro 15' retina (вернее переход пока не удался, думаю, придется сдавать). Пробовал все что можно: разные калибровки, яркости, флюксы и прочее.
    Глаза не могут читать черный текст на белом фоне. Рядом стоит asus матовый, при переводе взгляда на тот же текст глаза расслабляются. У жены ровно такой же mac, там также (у жены проблем таких нет).

    Пока все что выяснил опытным путем - что дело именно в высокой контрастности черного текста на белом.
    Инвертированные цвета воспринимаются нормально, или если фон текста хотя бы серый, ну и работа с графикой не напрягает глаза.
    При выставлении нештатного разрешения (чуть крупнее), текст становится менее четкий - кажется, что это чуть снижает эффект.
    Ответ написан
    Комментировать
  • Redux-Store Best practice: как лучше в store разделять данные от состояния UI?

    @sapl Автор вопроса
    Спасибо, за ответы Максим и Илья Ростопка
    Думаю я плохо сам вопрос сформулировал.
    Когда использовать state и когда store - более менее понятно.
    Вопрос скорее по именованию полей и структуре самого дерева (даже если это все хранится в state - вопрос также актуален).

    У меня проблема такая: сами компоненты при рендеринге изобилируют
    во такими конструкциями:
    {entityA!=null ? <EntityA name={entitiA.name}/>:null}

    <Input error={error!=null?error.message:""}

    {isDialogAOpen?<Dialog/>:null}

    Это все приходит в props (redux) или как-то хранится в state.
    Порядка не получается, разобраться потом проблематично.
    Мне кажется не хватает каких-то гайдлайнов по именованию как props значений так и структур store/state. Вот я и хотел найти ссылочки на подобное
    Ответ написан
  • Зачем нужен Dependency Injection в Android разработке?

    @sapl
    У меня не ответ, а уточнение вопроса.
    Зачем DI на сервере (Spring) понятно.
    Но в Android всегда один пользователь, одна сессия и всегда есть singleton Application, где многое инициализируется и который везде доступен через Context. И как не крути Context везде есть и ничего в этом нет страшного.
    Чем плох вариант использования одного модуля (Application), который отдается все нужные зависимости?
    Мало того даже при использовании dagger все равно везде дергается тот самый Application чтобы получить компонент для вызова inject.
    PS. Также немного путают примеры по Dagger где инжектится этот самый context, зачем его инжектить, если он итак везде есть?
    Ответ написан
    5 комментариев
  • Какие есть способы реализации анимации ui в стиле Material Design на Html5/CSS/JS?

    @sapl Автор вопроса
    Из ваших советов нашел по анимация полезный css tool,
    оставлю здесь: daneden.github.io/animate.css
    Ответ написан
    Комментировать
  • Какое приложение постоянно включает GPS на Android?

    @sapl
    Это жесткий косяк в Android, по сравнению с iPhone.
    Нет способа увидеть, кто в данный момент использует GPS.
    Мало того - часто расход батареи приложением использующем GPS приписывается не ему,
    а Google Services - так как они отвечают за работу с провайдерами местоположения.

    Единственный способ - по одному отключать запущенные приложения и так вычислять, кто использует GPS.

    PS. Не в курсе как дела обстоят на версиях > Kitkat
    Ответ написан
    Комментировать
  • Google Analytics на Android: отправка данных статистики после удаления приложения?

    @sapl Автор вопроса
    Никто мне не ответил.

    Очень странно, но похоже гугл ничего не передает после удаления приложения.
    Хотя SDK сейчас встроено в Google Services и нет технической проблемы эти данные передать, даже если уже нет приложения на телефоне.

    Выяснил это тестированием на голом счетчике.
    НУ и после того как поставил dispatch-период на 10 секунд - данные в общих отчетах стали похожи на правду.
    GoogleAnalytics.setLocalDispatchPeriod() - начиная с 4 версии метод снова открыт (не Deprecated)

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

    Решение пока такое: для новых пользователей ставить короткий dispatch-период (10 секунд), для повторных большой (30 минут).
    Ответ написан
    Комментировать
  • За что блокируют аккаунты разработчиков Google Play?

    @sapl
    Есть печальный опыт.
    К сожалению за год мытарств и экспериментов логику Google вычислить не удалось.

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

    Перевыложили с пару десятков сборок с разными пакетами, именами, адресами серверов, подписочными сертификатами, с чистых аккаунтов, с разных IP, с урезанными до нельзя правами:
    итог один приложение блокируется через 3-7 дней.
    Техподдержка если отвечает, то отвечает односложно и без указания реальной причины

    Есть лишь предположения:
    - Есть модерация роботом и ручная
    Если робот пропустил приложение то оно появится через 2-3 часа.
    дальше уже через 2-3 дня может быть заблокировано уже ручной модерацией.
    - Робот хитрый.
    - Обязательно прописывайте все возможное в Условиях использования и Политике конфиденциальности.
    Например если приложение имеет доступ к списку контактов, это нужно прописать.
    - Соблюдать правила для разработчиков, хотя конкретики там не хватает
    https://play.google.com/intl/ALL_ru/about/develope...
    Например после блокировки саппорт ссылался вот на этот пункт:
    "Не отправляйте SMS, письма электронной почты и другие сообщения от имени пользователя, пока он не подтвердит их содержание и список получателей."

    При этом , что они хотят совершенно не понятно (у нас был обычный мессенджер,
    дошло до того что мы и фото стали посылать в виде ссылки , чтобы ее видел пользователь)
    Ответ написан
    Комментировать
  • Чем чревато отсутствие графики в Android -приложении под все экраны (ldpi, mdpi, hdpi)?

    @sapl Автор вопроса
    А если отбросить OutOfMemory вообще?
    речь не идет о приложениях злоупотребляющих графикой.
    Стандартное приложение - это 200-400кб графики в разрешении xhdpi
    Ужатие иконок 2 раза погоды не сделают.
    Ответ написан
    Комментировать