• Как поступают фрилансеры с серверной частью в малых проектах?

    @nrgian
    1) как вы разговариваете с клиентами о серверной части, объясняя, что им нужно будет заниматься ею периодически оплачивая ?


    Стоимость оплаты сервера даже на год вперёд сразу в разы меньше чем стоимость моей работы.
    Поэтому никакой проблемы эта оплата не вызывает.

    Чаще оставляю на своих серверах. Хорошая доплата за ничего-не-делание. Ведь оплату беру больше, чем стоит хостинг для меня. И продлевают годами и годами. Хороший дополнительный заработок.

    2) как вы оформляете и передаете права доступа к консолям серверной части ? К примеру, на базе сервисов Firebase.

    Иногда никак не оформляю, всё на доверии.
    Иногда аккаунт сразу создан на имя клиента.

    при этом совсем не имея понятия

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

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

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

    Для этого не нужно брать у него пароль.
    Делаю и себя и его администратором проекта.
    Ну а оплату - разумеется с его аккаунта.
    Ответ написан
    1 комментарий
  • Как сделать приложение для сайта?

    NeiroNx
    @NeiroNx
    Программист
    Сделать вменяемую мобильную верстку и использовать webview.
    Ответ написан
    Комментировать
  • Как лучше осуществить работу с удалённой базой данных на Android?

    @rPman
    Настоятельно рекомендую, все, что гуляет через интернет, заворачивать через http (в т.ч. websocket), само собой лучше с шифрованием (https), меньше будет гемороя, так как провайдеры (россия), а чаще мобильные, старательно тормозят или даже блокируют остальной трафик (например почти полностью убит p2p, даже webrtc испоьлзовать нужна магия).

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

    На базе http берите либо готовые фреймворки и сериализаторы либо изобретайте свое. Популярные направления, использовать json, xml а если бинарный то Protobuf (вообще универсальная вещь). Для любого из указанных примеров в java есть библиотеки.
    Ответ написан
    Комментировать
  • Какую минимальную версию SDK ставить для новых приложений?

    newross
    @newross
    Product owner
    Есть смысл смотреть на то, какие девайсы у ЦА приложения и ориентироваться только на эти цирфы. Советы других разработчиков тут бесполезны, каждый будет исходить из своего опыта.
    Ответ написан
    Комментировать
  • Зачем нужны нативные языки для мобильной разработки?

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

    React Native и другие подобные средства лишь упрощают разработку, сокращая необходимое время и деньги на эту процедуру. Согласитесь, для заказчика дешевле будет написать один код (но с различными исключения под платформы) для iOS и Android, чем нанимать разработчиков под каждую платформу. Такие приложения имеют ограничения по разному функционалу, что приводит к написанию ещё большего кода.

    Вот пример.
    Много лет назад из любопытства написал два одинаковых по функционалу приложения под Android на Java и Delphi (да, он тоже теперь кроссплатформенный). На Java приложение работало намного быстрее - раза в 1.3-1.5 и занимало в 4 раза меньше физической памяти.
    И ещё один, но про Рокетбанк.
    Рокетбанк выпустили новое приложение на RN для iOS и Android. Возьмём платформу iOS.
    1. Функционал нового и старого приложений одинаков, но страница авторизации с подтверждением входа по TouchID в новой версии висит куда дольше - на пару секунд. Не думаю, что там такой огромный функционал, который увеличивает время инициализации приложения.
    2. Занимает в 2 раза больше физической памяти.
    3. Накатывали JailBreak на прошивку... доступ к данным старого приложения получить не удалось, из нового вытащили различную инфу, включая токен сессии.

    И гугл в помощь.
    Ответ написан
    Комментировать
  • Зачем нужны нативные языки для мобильной разработки?

    @abmanimenja
    Flutter, к примеру, отлично поддерживает элементы интерфейса (менюшки и т.п.). И приложение, основанное на обычном интерфейсе с пользователем, ты напишешь легко.

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

    Любое универсальное априори хуже в деталях.
    Ответ написан
    Комментировать
  • Почему не работает BroadcastReceiver на андроидах версии 7 и выше?

    thelongrunsmoke
    @thelongrunsmoke
    Программист
    Начиная с 7.0 RECEIVE_BOOT_COMPLETED рассылается после первой разблокировки устройства, используйте ACTION_LOCKED_BOOT_COMPLETED.
    Кроме того, эти броадкасты не присылаются, если приложение было установлено, но не запускалось.
    Ответ написан
    Комментировать
  • Индустриальная embedded система на базе Android-смартфона - как структурно правильно реализовывать?

    @kaftanati
    Инженер-энтузиаст
    Сталкивался со стендами, использующих Android устройства в качестве КВУ (контроллеров верхнего уровня).

    1. Стенд - большой железный ящик с кучей аппаратуры внутри.
    2. Снаружи закреплен обычный планшет с уходящим внутрь usb кабельком.
    3. Изнутри хаб с питанием. Питание постоянное от встроенного родного з/у, всегда воткнутого в сеть.
    4. К хабу подключены usb устройства, к которым обращается приложение для стенда (используется библиотека с гита).
    В т.ч. подключены устройства RS-485/RS-232.
    5. Для управления автоматикой используется отечественное программируемое реле ПР-200 (недорогое, простое, универсальное). Оно берет на себя в т.ч. защитные низкоуровневые задачи, обработку органов управления с панели стенда и т.д.
    6. Охлаждения дополнительного планшет не требует. Он снаружи - горячий, выключи, обдуй и т.д. Но так как он прикручен к железному корпусу (считай радиатор) - не проблема.
    7. В принципе можно использовать планшет полноценно - камера/передача данных и т.п. при наличии удобного подключения (гибкое и длинное).
    8. Стенды автономные, но вставленная симка, подключенный wi-fi - решают вопрос простой телеметрии и сбора статистики.
    9. Можно подключить принтер/ монитор/мышку/клавиатуру.

    Специализированные встраиваемые устройства:
    1. Или очень дороги (но встроенными интерфейсами RS485/232 и т.п.)
    2. Или дешевы и хрен работают (привет с али с устарелой осью и отсутствующей документацией)

    Готовые устройства потребительские:
    1. Или подороже покрасивше, но нежные. Все будет работать из коробки, в т.ч. OTG с питанием и т.п.
    2. Или подешевле обрезиненные с кривоватым ПО но с известными спецификациями и внятным описание на 4pda/xda. Но могут в силу дешевизны иметь кривоватую реализацию OTG (ограничения кол-ва устройств и т.п.).

    Если устройство снаружи - его легко заменить/обновить, вся периферия не трогается внутри стенда.
    Ответ написан
    4 комментария
  • Miui и пр. системы основанные от android'а подходят для android разработки?

    @Slavon93
    Ну, во-первых, следует понимать, что MIUI - это тоже Android, просто со своими нюансами. Поэтому, в плане того, подходит оно или нет - да, подходит, но с некоторыми оговорками.

    Первая оговорка заключается в том, что версия MIUI и версия Android, лежащая в ее основе живут параллельными жизнями. Это приводит к тому, что одна и та же MIUI 9.6 на Xiaomi Redmi Note 3 Pro имеет версию 6.0, а на Redmi Note 4 - 7.0. А на более новых телефонах может быть и 8.0. Так что проверки на версию API Android обязательны.
    Второй нюанс заключается в том, что дизайн приложений для MIUI немного отличается от такового, принятого в чистом Android, так что проверять в любом случае придется где-то еще, а не только на Xiaomi.
    Третий нюанс заключается в том, что у Xiaomi есть своя собственная система разрешений, оптимизаций энергопотребления и так далее, поэтому то, что нормально будет работать на обычном телефоне с чистым Android, может работать немного неожиданным образом на Xiaomi, особенно это касается всяких фоновых сервисов, которые запросто могут быть убиты, просто потому что система посчитает, что они тратят энергию, а пользователь не внес приложение в исключения. Аналогичная штука может происходить с Push уведомлениями.

    Таким образом, да, тестировать приложение можно и на Xiaomi, можно и основную разработку на них вести, но лучше параллельно проверять работу и на чем-то еще.
    Ответ написан
    Комментировать
  • Какие знания нужны, чтобы создать такой продукт под android?

    @Div100
    какими навыками я должен обладать

    Уметь все это разделить на мелкие компоненты. Так чтобы в связи представляли твой конечный результат. Большая цель она выглядит непонятной, не ясно как к ней подступиться. Поэтому попробуй разбить это на небольшие кусочки. И соединяй их постепенно. Для каждого кусочка тебе понадобятся определенные знания, уже будешь знать конкретно какие, и появятся конкретные вопросы, появятся вопросы, сможешь находить решения и идти дальше. Задавай вопросы, находи решения, делай и по новой.
    Если кажется это слишком простым, попробуй это сделать и уже сможешь выложить это как вопрос, например: "Правильно ли я декомпозировал мою идею на подзадачи?"
    Тогда тебе уже смогут поправить и подсказать более детально.
    Ответ написан
    1 комментарий
  • Есть ли online-сервис c API для автоподстановки терминов из словаря при произвольном вводе текста пользователями?

    @Snowdin
    Yandex.Wordstat не подойдёт для допсловаря? Но он выдаёт только контекстно близкие слова, а не полный список.
    Ответ написан
    1 комментарий
  • Как защитить API сервиса платного контента?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Шифруйте отдаваемый контент через RSA между сервером и приложением. (SSL/не SSL - это мы сейчас не рассматриваем!)

    1. Формируйте УНИКАЛЬНЫЙ! контент/трафик для каждого пользователя и расшифровывайте доставленный контент исключительно в памяти приложения, непосредственно перед моментом отображения на экране!

    2. Используйте платёжные данные при шифровании данных на сервере.
    3. Меняйте ключ при каждом запросе на основе номера пакета текущей сессии, времени, случайного числа и т.д.
    4. Отдавайте контент порциями с разным шифрованием - prefetch/segmentation.
    5. Обновляйте протокол внутреннего шифрования хотя бы раз в 1-2 месяца.

    Нет 100%-ой защиты на клиенте, которая не позволила бы сохранять контент.
    За то - можно это усложнить до нереальных трудозатрат.
    Ответ написан
    Комментировать
  • Как бесплатно сэмулировать медленный Интернет для отладки приложения Android?

    sim3x
    @sim3x
    https://www.google.com.ua/search?q=linux+proxy+for...

    https://stackoverflow.com/questions/614795/simulat...

    На самом деле проблема с медленными соединениями не в самой скорости, а в дропах пакетов

    Packet loss

    Random packet loss is specified in the 'tc' command in percent. The smallest possible non-zero value is:
    2−32 = 0.0000000232%

    sudo tc qdisc change dev eth0 root netem loss 0.1%
    Ответ написан
    Комментировать
  • Как осуществить возможность оплаты банковской картой в приложении Android?

    thelongrunsmoke
    @thelongrunsmoke
    Программист
    Через вэбвью и платёжный шлюз любого банка. На API 16 и выше особых проблем быть не должно.
    С PayPal проще, у них есть SDK.
    Просто помните, через внешние сервисы можно платить только за реальные товары. Иначе забанят.
    Ответ написан
    Комментировать
  • Как написать аналог Pokemon Go?

    riky
    @riky
    Laravel
    в PG насколько я знаю много хаков связанных с позиционированием. например в помещении спутники почти не видны. во вторых местоположение GPS может скакать на десятки и сотни метров даже когда юзер стоит, тем более что телефоны и качество датчиков у всех отличается. поэтому в чистом виде по координатам GPS это будет не юзабельно.
    PG по-моему активно используют датчики ускорения для определения перемещения на небольших расстояниях.
    в общем гемороя там хватит, в лоб задача вряд ли решится, по крайней мере с таким же более менее приемлимым качеством.
    Ответ написан
    Комментировать
  • С чего начинается разработка приложения?

    @aol-nnov
    написание мобильного приложения, как и любого другого программного продукта, начинается с блок-схемы (зачеркнуто) технического задания!
    Ответ написан
    Комментировать
  • Как измененить данных в файле apk?

    @ivanessence
    Android Developer
    В интернете куча статей, как декомпилить файл apk, затем менять строку и собирать его обратно. В журнале "Хакер" есть хорошая статья https://xakep.ru/2013/10/22/modify-and-packing-and...
    Ответ написан
    1 комментарий
  • Как заменить apk в GooglePlay с другим сертификатом?

    abler98
    @abler98
    Software Engineer
    Для загрузки apk нужно подписать его тем же ключом, значит тебе должны скинуть ключ, пароль к нему + возможно ещё пароль от хранилища.
    d52791f5027c4b8e9572951041a23cce.png
    P.S. Загрузить apk с другой подписью нельзя по причине того, что на Android попросту невозможно накатить обновление - возникнет конфликт подписей (разве что у всех пользователей отключена проверка подписи, но для этого нужны root права)
    Ответ написан
    Комментировать
  • Есть ли компилятор для Андроид в бинарный код?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    Про Android NDK вам уже сказали. Замечу, что можно написать андроид-приложение полностью на С++, без джавы вообще. Сложно, но можно.
    Java не интерпретируется. Байткод выполняется в виртуальной машине, это да, но это не интерпретация.
    Дальше, существуют такие вещи как JIT(just in time) и AOT(ahead of time) компиляции.
    Первая компилирует байткод в нативный код, прямо на лету, во время выполнения приложения. При этом JIT-компилятор может оптимизировать программу, опираясь на рантайм-анализ.
    Вторая компилирует байткод в нативный код перед выполнением, прямо при установке, если говорить про андроид. Тут учитывается конкретная архитектура устройства.
    Так что вам бы сначала изучить какие-то базовые вещи, чем гнаться за быстродействием.
    Ответ написан
    Комментировать
  • Почему андроид приложение приносит меньшую прибыть чем ios приложение?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    1. Посмотрите стоимость андроид устройств и apple устройств. Подумайте, сколько денег есть у тех и других пользователей.
    2. Посмотрите на количество приложений в гуглмаркете и в Appstore, а именно конкурентные предложения, бесплатные конкурентные приложения, подумайте.
    Ответ написан
    4 комментария