• Как в приложении проверить баннерорезку?

    thelongrunsmoke
    @thelongrunsmoke
    Программист
    Написать свой ротатор-обёртку. Существуют события onAdFailedToLoad() если они получают 0, 1 или 2 (ERROR_CODE_INTERNAL_ERROR, ERROR_CODE_INVALID_REQUEST, ERROR_CODE_NETWORK_ERROR), и при этом соединение с интернетом есть, значит это работа баннерезки.
    Ответ написан
    Комментировать
  • Android Stuido, WebView - почему приложение не спрашивает разрешения на местоположение при установке, как исправить?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    Разрешение на местоположение это runtime permission. На Android 6+ оно должно запрашиваться во время выполнения и нормальные приложения это делают. Также нормальное приложение готово к тому, что пользователь в произвольный момент времени запретил доступ к местоположению.
    Подробнее rtfm. https://developer.android.com/training/permissions...
    Ответ написан
    5 комментариев
  • Какие технологии выбрать для максимально быстрого создания элементарного сервера для мобильного приложения?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Jooby.org или sparkjava.com
    Ответ написан
    Комментировать
  • Прилинкован не известный домен?

    @lehha
    Домен не прилинкован, а просто отображает копию вашего сайта. Скорее всего кто-то проксирует ответ вашего сервера на своем с целью попасть в индекс поисковиков и продавать трафик/ссылки.

    Ищите у себя в access_log откуда идут запросы, например, открывая случайную или уникальную страницу и баньте.

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

    thelongrunsmoke
    @thelongrunsmoke
    Программист
    Используя flavor. Кроме того, это неплохая причина раздать пинки всем кто захардкодил имя пакета.
    productFlavors {
            flavorDimensions "build"
            product {
                dimension "build"
            }
    
            develop {
                dimension "build"
                applicationIdSuffix ".dev"
                versionNameSuffix "-dev"
            }
    }
    Ответ написан
    1 комментарий
  • Android dev: какие действия выполнять при отключении от интернета, gps?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    Ты видел хоть одно приложение, которое молча закрывается?
    Кешируй данные и работай оффлайн
    Говори пользователю, что не можешь работать без интернета и гпс.
    Второе тебе всё равно делать придётся, когда будешь запрашивать пермишин на локацию.
    Ответ написан
    Комментировать
  • Как защитить Rest API от использования третьими лицами?

    bro-dev
    @bro-dev
    Проблема скорее всего не в том что левые люди будут использовать, а в злоупотреблении, но тоже самое можно делать и прямо из вашей проги, так что лучшее решение сделать публичное апи но внести количественные и частотные ограничения.
    Ответ написан
    Комментировать
  • Парсить через свой сайт или напрямую в приложение?

    Stalker_RED
    @Stalker_RED
    Мне кажется, или вы хотите изобрести RSS агрегатор? Посмотрите, они готовые есть. Даже если они не подойдут - почитайте как устроены.
    Ответ написан
    Комментировать
  • Парсить через свой сайт или напрямую в приложение?

    @santaatnas
    Java, Python, Php
    Лучше пусть это делает сервер, и клиент общается по АПИ, из плюсов вижу: экономия ресурсов, возможность хранения на сервере, быстрый клиент( клиент сделал один запрос, сервер может сходить в несколько источников, либо уже сходил и отдал из кэша/хранилища), возможность реализовать на любом серверном языке программирования.
    Ответ написан
    3 комментария
  • Как зарабатывать на своем расширении для браузера?

    @vanyamba-electronics
    Сделал плагин, который подкачивает файлы по ссылкам на странице. Чтобы ускорить сёрфинг.
    Плагин оказался популярен.
    Потом служба безопасности пришла выяснять, каким образом какие-то секретные файлы закэшировались у них во внутренней сети отдела.
    С рекламой ещё хуже вопрос обстоит. 46% пользователей используют резалки рекламы и спам-фильтры, чтобы траффик экономить. Те клиенты, кто больше всего баннеров показывают, по ним фильтры автоматически настраиваются.
    Твой рекламодатель смотрит, что ты траффик генеришь, а пользователи рекламу не видят, и тебя с твоим плагином вносят в список, что у тебя рекламу показывать не надо. И твоя программа вместо рекламы показывает заглушку.
    А ты смотришь на показатели - народ плагин скачивает, но рекламу он не показывает больше. А почему - и спросить не у кого.
    Ответ написан
    2 комментария
  • Случайно показывается Activity, в чем проблема?

    @klim76
    android/java/sql
    Куда стоит покапать?

    очевидно в методы который явно или не явно вызывают активити
    Ответ написан
    Комментировать
  • Перестанет ли показывать рекламу в admob?

    @davidnum95
    7.5 > 7.0 ? "Будет показываться" : "Не будет"
    Ответ написан
    Комментировать
  • ТЗ + документы, ответственность, как не пролететь?

    Kewa2008
    @Kewa2008
    Программист
    1) По факту занимаюсь embedded программированием на с++ и си, а вместо оформления программистом оформили инженером. Это нормальная практика для гос контор? И часто такое встречается?

    То, что ты не программиста, а инженер - нормальная практика. Точнее это конечно не нормально, но для гос структур - обычное дело. Я сам долгое время был "лаборантом", "инженером", "заведующим лабораторией" (это тип так повышали меня =) ). Пока не пошел в коммерческую структуру и не понял как оно должно быть на самом деле.

    2) В штате нет администраторов, devops-ов и как результат сборка виртуальных машин для компиляции ложиться на плечи программистов.

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

    3) Тз нет в принципе, их никому не выдавали НИКОГДА. Все формулируется устно, при этом правки в "устное тз" могут вносится по настроению начальника в любое время и на любой стадии проекта.

    Тоже знакомая ситуация =) Опять же это не нормально, но для госСлужбы - привычное дело.

    4) В конторе нет документации, вообще нет.

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

    5) Нет дизайнеров, разработка ui и рисование картинок лежит на плечах программистов. Графики в приложении много.


    Ты спроси у руководителей, знают ли они о существовании людей с такой должностью? =) Скорее всего нет. Для них программист - как шампунь (все в одном =) ): и тестировщик, и аналитик, и дизайнер, и сисАдмин, и кодер. А при необходимости он (программист) еще может вытащить застрявшую бумагу из принтера, установить драйвера для него, заправить картридж тонером. И я это все говорю из ЛИЧНОГО опыта.

    6) Устанавливают сжатые сроки на проекты.


    Такого у меня не было. Обычно когда дают задачу, через пару дней про нее забывают
    или откладывают, потому что появилась более срочная задача. Ну и 3-4 месяца - это конечно не "сжатые" сроки. Это прям лафа =) В коммерческих организациях все должно быть сделано "вчера, ну или на крайний случай сегодня вечером".

    7) Сроки устанавливаются сверху и спускаются на отдел. Меня даже не спрашивают смогу ли я это сделать за такой срок или нет.


    Опять же это делается из-за уровня профессионализма "начальства". С этим ничего не поделаешь, если собираешься там продолжать работать - смирись

    8) В связи с пунктами 2-7 вопрос какая на мне будет ответственность если что-то пойдет не так? К примеру программа упадет в продакшене и клиент подаст в суд, какая на меня ляжет ответственность?


    Ну приготовься к тому, что пока ты джуниор ты во всем виноват и везде крайний. А твой начальник будет говорить "я же тебе говорил!", "А я тебя предупреждал!" и т.п.
    Если будет все очень плохо и дело пойдет в суд, то при самом плохом раскладе тебя уволят. Ничего сверх тебе сделать не смогут. Ну уволят по нехорошей статье (но это КРАЙНЕ маловероятно. Если тебя конечно увольнять будет не Путин =) ). В этом случае (как и сказал Сергей Горностаев) выкидываешь ее подальше и устраиваешься заново. Но, повторюсь, это крайне маловероятно.

    9) Свалить возможности нет, по условиям контракта придется выплатить неустойку, если сам уйду или если уволят, работать осталось около года.Подскажите как себя вести в юридическом плане. Какие документы желательно не подписывать в такой ситуации?


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

    10) Как вести себя в профессиональном плане, какие плюсы можно извлечь из ситуации?

    Плюсы в госСлужбе на должности джуниора... дай подумать... Боюсь что никаких =) Хотя есть вариант (но тут в зависимости от твоего возраста, семейного положения и т.п.), можно найти руководителя женского пола и жениться (ну или на дочке жениться). Тогда карьерный рост тебе обеспечен =)

    Я сам долгое время работал в госСлужбе, потом работал по совместительству (и в коммерческой и в гос). Потом совсем ушел от госУчреждений. Боюсь что в профессиональном плане программисту многого там не получится добиться. Но может я и ошибаюсь.
    Ответ написан
    Комментировать
  • Как защитить свою работу фрилансеру?

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

    Отдавать 10% всяким защитным посредникам --- жаба душит.
    Ответ написан
    1 комментарий
  • Как защитить свою работу фрилансеру?

    @McBernar
    Не работайте с такими людьми. Сейчас, может, и нормально будет, но в следующий раз обязательно что-нибудь случиться.

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

    Он может поставить проект на паузу или вообще пропасть — предоплату-то не вносил, поэтому пофиг.

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

    НИКОГДА не работайте без предоплаты с новым клиентом. Только с проверенными ребятами — там уж пофиг. Хотя, как показывает практика, и у проверенных ребят может легко что-то поменяться и денег ты не увидишь. Например, когда менеджер уходит из компании, бизнес прекращается не начавшись, просто проект ставится на паузу. Но такое бывает не часто.

    По вашему вопросу — никак. Код доступен всегда. Можете напихать в JS какого-нибудь говно-кода, который будет тянуть с удаленного сервера ваш скрипт, в который можно будет подсунуть любую бяку — замедлять загрузку сайта, например, или вообще затирать весь хтмл. Но это же не вернет вам денег. Да и легко правится простым удалением нужных строк в js-файле.
    Ответ написан
    Комментировать
  • FirebaseDatabase error: failed to convert Hashmap to String в Android приложении, как исправить?

    zagayevskiy
    @zagayevskiy Куратор тега Java
    Android developer at Yandex
    data это не строка, а хэшмап, как тебе и пишут в логах.
    Ответ написан
    Комментировать
  • Как указать контекст (или обойтись без него) при вызове метода в паблик классе (не активити)?

    @red-barbarian
    Использовать getApplicationContext
    Получать его как говорили в конструкторе или как синглтон из application сделать. Application живет дольше вьюх, поэтому уменьшается риск утечек памяти.
    Ответ написан
    Комментировать