Памятка новичку в разработке мобильных приложений
Памятка новичку в разработке мобильных приложений
66 показов
54K54K открытий

Хорошая статья! Я бы ещё сюда добавила branch.io . Помимо простой реализации deeplink-ов, позволяет ставить метки на ссылки и отслеживать при установке, откуда пришёл пользователь. В зависимости от источника можно менять поведение приложения.

Ответить

Виктория, спасибо. А чем отличается от любого другого трекера? Как это менять поведение приложения? Можете чуток рассказать? Сегментация на основе источника трафика?

Ответить

Когда заходишь в офис, тебе под ноги кинут полотенце. Не подбирай его, вытри о него ноги. Если поднимешь или переступишь - станешь опущенным.

Если кинут в руки клавиатуру и скажут: "Сыграй на гитаре", ты кинь ее обратно со словами "Сначала настрой".

Спросят: Ты летишь на парашюте, справа - лес дебильных фич, слева - море багов. Куда будешь садиться? Отвечай: В каждом лесу есть поляна, а в каждом море - островок.

Ответить

Ненативные ("кроссплатформа") приложения имеет смысл делать в двух случаях:

1) Игры - тут всё очевидно и, понятное дело, никакого webview тут не используется - только натив (в смысле компилируемые языки, а не js/html/css), только хардкор!

2) Приложения без платформенного UI или практически без него. Классический пример в данном случае - это навигаторы, да и то большая часть из них выглядит не очень и всё равно имеет ненулевое количество платформенного кода.


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

Ответить

Благодаря спорам в комментариях понял, наконец, как нужно правильно сформулировать возможность применения ненативных инструментов для "приложений с нативным UI": если приложение - это бонус к вашему основному бизнесу, то можно начинать с кроссплатформы (но аккуратно). Сюда относится B2B и прочий энтерпрайз (какое-нибудь приложение лучше отсутствующего, конечно), приложение сети кинотеатров (деньги зарабатывают на билетах всё-таки, а не чисто самим приложением), приложение интернет-магазина (но тут уже есть нюансы, а конкурентов много). Да собственно мобильный фейсбук вполне можно было считать лишь приложением к сайту пять лет назад, им пользовались единицы процентов в лучшем случае. Если же ваш бизнес - само приложение на конкурентное рынке (100501-й менеджер задач, мессенджер, тиндер или даже фонарик), то делайте только натив, на кроссплатформу только зря деньги потратите.

Ответить

Я вот тоже пришел сюда, чтобы поговорить о нативном UI.
Например воспроизвезти гладко и без глюков новый material в android с помощью webview будет стоить очень дорого и все равно не выйдет так же гладко. Можно посмотреть http://fezvrasta.github.io/bootstrap-material-design/ как пример. Совсем не огонь же :)
В результате придется пилить UI под две платформы все равно и везде извращаться что в итоге выйдет дороже.

Ответить

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

Ответить

Прикольно когда приложение вначале спрашивает сама все ли ок или есть проблемы.

И только тех кто ответил "ок" отправляет оставлять отзыв в store, а тех кто ответил "не ок" в форму обратной связи.

Часть приложений которые такой способ не юзают сами провоцируют появление негативных отзывов

Ответить

Тут есть нюанс. Я пробовал такой подход - делал в окне 2 кнопки "Нравится? Оцените!" и вторая "Сообщить о проблеме". Делал их разными цветами и пр. Но результат был не совсем ожидаемым. Из-за наличия сразу 2 кнопок конверсия в оценки снизилась почти в 2 раза.
Короткие четкий призыв оценить работает намного эффективнее. Главное протестировать хорошо.

Ответить

Такое уже Apple запретила.

Ответить

Вопросы кроссплатформа вызывает только у тех, кто за свои деньги ни разу не делал проект под несколько платформ. По статье же, можно уточнить, основываясь на опыте разработки на Xamarin:
- Проблем с плагинами и SDK нет. Всегда можно написать свой wrapper и работать с ними. И уж точно нет никаких проблем с Material Design, работа с ним никак не отличается.
- И бэкэнд и мобильные клиенты могут писать одни и те же люди. Нет затрат времени на выяснения, на чей же строне косяк. в своем проекте Android, iOS и бэкэнд в одно лицо тяну без особых проблем. Платформенного кода всего около 20%.
- Про производительности тоже тема давно раскрыта на практике http://magenic.com/Blog/Post/4/Mobile-Development-Platform-Performance http://stackoverflow.com/questions/17134522/does-anyone-have-benchmarks-code-results-comparing-performance-of-android-ap

Ответить

А покажите ваше приложение, пожалуйста.

Ответить

100500 за! Это именно тот ответ, которого я ждал. На собственном недавнем опыте с цифрами и примерами. Спасибо!

Ответить

Что конкретно подразумевается под "кроссплатформой"? Если основанные на webview (PhoneGap и т.д.), то о какой "такой же" производительности речь? Это тормозящий кусок говна, который нормально работает только на айфонах (да, в Андройдах использовался webview Хрома, а не родной). Про Ксамарин ничего не знаю. Если речь про React Native, то все очень круто, но пока тоже очень тупит и те приложения, которыми люди пользуются (а не те, которые "просто так"), либо переписывают отдельные компоненты нативно, либо полностью переделывают приложения.

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

Ответить
Комментарий удалён модератором

Да я вроде даже перечислил всё, что в таком ключе рассматриваю. Там 6 кроссплатформенных поименованы. Юнити в том числе.

Ответить

Спасибо, хорошая статья, буду шерить) На самом деле, для новичков действительно ничего нет, да и нетворкинг у нас не развит, поэтому все путём проб и ошибок.


От себя добавлю, что Google Firebase в комплекте с GA смотрится вполне прилично.

Ответить

Спасибо. А я вот всё хочу попробовать. Какие возможности дает, если кратко?

Ответить

Кросс платформ технология для игр это нормальный подход. Делать нативную версию под каждую платформу это слить кучу времени и денег. Это я уже молчу про синхронизацию версий.

Ответить

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

Ответить
Комментарий удалён модератором

Интересно. А можно примеры?

Ответить

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

Ответить

Согласен. Я вообще в последнее время от всех игровиков только и слышу что про Юнити. Прямо спасение.

Ответить

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

Ответить

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

Ответить

Тарас, спасибо. Рад, что информация показалась полезной. Я не думаю, что здесь модно подписаться, стучитесь ко мне в Фейсбук. https://www.facebook.com/profile.php?id=100003469386187

Ответить
Комментарий удалён модератором

Дв просто не влезло. Я всё это расскажу во второй части. Просмотр видео за награду сейчас уже чуть ли не 30-40% дохода в игра. А иногда и того больше. В моих это 30%. Баннеры внизу экрана ооочень малодоходны, поэтому их просто убирают, чтобы не раздражать пользователей.

Ответить

Я думаю если Google воплотит свои задумки осенью, которые анонсировал на конференции Google I/O 2016 https://www.youtube.com/watch?v=OJQch56tb4s&list=PLxZXKy8AjvN8FADF0tVGx9JAlNbeWznUF&index=4 (Константин, там как раз инфа есть про Firebase). То Андроид надо будет поставить в приоритет, но в чём и прелесть кроссплатформы, то что можно выпустить сразу под 3 системы.

Ответить

Очень надеюсь! На самом деле, Google УЖЕ ИМХО целевая платформа №1. Ещё бы как-то всё таки с поисковой выдачей поколдовали, было бы просто отлично. Я вот уже в следующих релизах установлю Firebase. Посмотрю, что дает и какими плюшками балует. Очень интересно. Посылать нотификации, тест-лаб - уже одно это интересно. Пока не понимаю, как там с оплатой, нужно разобраться.

Ответить

Спасибо за статью. Ещё пара вопросов есть...

1. Можно ли сейчас ограничиться какой-нибудь одной платформой? (если выбирать между - аёс и андроид). Они же вроде щас уже набрали огромные аудитории.

2. В последнее время часто вижу негативные отзывы от разрабов, якобы мобильные маркеты совсем уж стухли в плане заработка. Имеет ли смысла кому-то (если это не разработчик серии GTA) писать своё приложение с целью заработать?

Ответить

1. Андроид - это 80-85% устройство в России, но где-то 50% денег. Если вы делаете бизнес, то отказываться от одной из платформ неразумно.
2. Имеет смысл любой бизнес, в котором доход больше затрат. "Стухли" - что это означает? Да, в России падение в 2 раза из-за кризиса. Но не только валовый доход определяет эффективность бизнеса.

Ответить
Комментарий удалён модератором

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

Ответить

Это Гелекси Эпс?

Ответить

А про нативные - будет интересно обсудить. Может какие-то конкретные примеры и кейсы появятся, тогда картинка будет более полной.

Ответить

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

Ответить

Это не про плохого танцора? )) Не всё зависит от Андроид, согласитесь.

Ответить

Константин, а можно поинтересоваться, что именно показалось неудобным или непонятным в интерфейсе AppMetrica? Мы всегда рады пользовательскому фидбэку и стараемся учитывать пожелания.

Ответить

Только что Александру Сибиркову в Фейсбуке ответил. Давайте вот сходу:
1. Вы ссылки называете "Трекерами". Я нигде больше такого не встречал, и сначала путаешься, потому что ищешь возможность создать именно ссылку. Это усугубляется п.2.
2. Как только попадаешь на главную страницу, тут же видишь "Добавить приложение". Но приложения добавляются ОЧЕНЬ редко. В 99% случаев мне нужно создать новую трекинговую ссылку (на 1 приложение их создаются десятки, согласитесь), а такой возможности сделать сходу у вас нет. По-хорошему кнопку "добавить приложение" нужно поменять на "добавить трекер". Саму кнопку сделать поярче, я в первый раз очень долго её искал по интерфейсу. Помогите новичкам, акцентируйте внимание на наиболее частых сценариях.
3. Заходя в меню трекеров видишь полупустой список трекеров. Зачем он вообще? Теряешься и пытаешься как-то сориентироваться, вспомнить, который тебе нужен. Выведите сюда сразу показатели на последний месяц (клики, инстоллы хотя бы) и отсортируйте (либо дайте возможность сортировки) по времени создания, активности, партнеру, названию. А ниже можно добавить сводный график по трекерам, он очень помог бы видеть общую картинку. График даже нужно выше списка.
4. Кликаешь на трекер и попадаешь в его настройки. Я в 99% случаев настройки трекера не меняю, но хочу видеть его статистику. Зачем мне по клику на настройку показывать его внутренности? Я их и так вижу уже на сводной странице. Показывайте по клику статистику. Это прямо в замешательство вводит.
5. В продолжение предыдущего пункта, у вас там "скопировать трекер" на странице списка, но без статистики по трекеру она мне бесполезна. У меня их десятки, я не помню просто, какой мне нужен. Приходится прокликивать все (или я не нашел возможности смотреть все в одном месте) есть такая?
6. Потом создаешь трекер. Если я выбрал уже Андроид приложение, почему автоматически не делать селект платформы? То же самое с целевой ссылкой. Она же всегда неизменна, почему не подставлять её сразу после выбора приложения? Зачем выпадающее меню, в котором одна единственная целевая ссылка и так будет всегда?
7. Я не могу создать ссылку без партнера. Если я хочу просто трекинг внутри приложения сделать, то мне нужно обязательно "добавить партнера". Это вообще не понятная формулировка для новичка. Куда добавить? Какого партнера? Напишите "Создать свою трекинг-ссылку" или что-то вроде и сделайте эти кнопки "выбрать партнера" и "создать партнера" равнозначыми. На этом этапе часто как то, так и другое.
8. И под конец нажимаешь "создать", но ничего не создается. Для этого зачем-то нужно ещё и сохранить. И у меня не всегда это выходило, ссылка не работала, что-то было не так, но понять было сложно. Однажды я просто плюнул и сгенерил ссылку в AppsFlyer за 20 секунд. Кнопка "Сохранить" становится бесцветной, как будто неактивна. Рядом с ней кнопка "создать и дублировать". Но я ведь уже создал. Что будет, если нажму? Ещё одна создастся?

Ну вот как-то так ))

Ответить

>Что выпустить первым — iOS или AndroidВы сравниваете совершенно не по тем критериям.
Сравните приложение для таксистов или асфальтоукладчиков и приложение для "модного" журнала.
>Сниженная производительностьНапример, длинный список с картинками. Скролите и получаете лаги. Это про phonegap и кросплатформенную разработку.
>Кроссплатформа будет очень дорога в обслуживанииОпять же про phonegap. Можно потратить не один день, в поисках причины на конкретной версии android и webview, почему компонент работает неправильно.
Для крешей сейчас на Android используют Firebase - стоит упомянуть.

Ответить

или Crashlytics - для крашей

Ответить

Не очень понял. Я говорю, что в Плее есть инструменты, которых в Коннекте просто нет. При чем тут типы приложений?

Ответить

Кроссплатформа плоха, если вы хотите развиваться в одном темпе с целевой платформой. Новые API приходят во всякие замарины с большим опозданием.

Ответить

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

Ответить

" Это может быть, например, игра или ещё одна соцсеть."

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

Ответить

Конечно. На Юнити уже 3 игры выпустил. А вы какой информацией располагаете? Давайте свое мнение, обсудим.

Ответить