Приветствую, Хабр!

Пост навеян новостью о прекращении поддержки Windows 10 mobile.

Являясь одно время обладателем Nokia Lumia 925, расскажу про одну из моих поделок на поприще мобильной разработки под Windows Phone 8.1.

Приложение: «Курсы валют ЦБ РФ». Предыстория


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

Не найдя ничего полезного на Windows Phone Market, решил попробовать написать что-нибудь «для себя».

В конце концов, это не так уж и сложно — сделал приложение на коленке, залил сборку на телефон и живешь себе хорошо. А если и самому понравится, то можно и загрузить на маркет, пусть и другим будет хорошо.

P.S. «Ничего полезного» подразумевало и фильтрацию приложений с ужасным количеством рекламы (ей-богу, люди, что с вами было не так?).

Версия №1


Цель: создать простое приложение с единственной возможностью — посмотреть курсы валют в приложении и создать тайл на главной странице

Чуть формальнее:

  1. Самый простой UI
  2. Таблица с ценой валюты на сегодня/завтра
  3. Возможность создать тайл на главной странице
  4. Никакой рекламы

Что получилось в итоге (к сожалению, не сохранились скриншоты первых версий тайлов):



Промежуточный сервис


Тайлы обращаются по ссылке на написанный сервис, который обращается к данным ЦБ и кэширует их на день, т.к. ЦБ не обновляет данные чаще. Т.е. приложение не работает с real-time данными, т.к. сама концепция тайлов не позволяет делать частые обновления.

Минимальная частота обновлений, насколько я помню, была в районе получаса.

Кто бы знал как много комментариев и минимальных звезд я получил за создание приложения с «неверными данными!». Добавление информации о частоте обновлений в следующих версиях ситуацию не изменили — пользователи продолжали периодически писать о плохих данных.

Кроме запросов к данным, сам сервис позволял собирать небольшую статистику использования приложения. На первых порах статистика запросов (каждый тайл = запрос) была следующей:



Версия №2


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

Что получилось в итоге:



Из интересного: пришлось забрать и пересобрать исходники библиотеки графиков, чтобы пройти сертификацию приложения.

Технические подробности
Уже в процессе подготовки к публикации приложения выяснилось, с помощью Windows App Certification Kit, что внутри компонента есть некие вызовы kernel32.dll. В частности, были две ошибки:
API CreateFileMappingA in kernel32.dll is not supported for this application type. Sparrow.Chart.WinRT.45.dll calls this API.
API MapViewOfFile in kernel32.dll is not supported for this application type. Sparrow.Chart.WinRT.45.dll calls this API.
Оказалось (после гугления и перебора исходников), что в компоненте, написанном для Windows phone присутствует директива #if WPF. Кусок кода не использовался, но при это ломал тест сертификации. Закомментировал директивы, скомпилировал и, вуаля, все тесты прошли. Было очень неприятно узнать о подобной ошибке в самом конце выпуска обновления. Но повезло.

Немного статистики запросов к июню:



Написанный сервис выдал примерно следующую информацию по использованию тайлов:

  • 125 пользователей с 0 тайлами — пользуются главным образом приложением напрямую
  • 260 пользователей с 1 тайлом
  • 175 пользователей с 2 тайлом
  • 61 пользователь с 3 тайлом
  • 7 пользователей с 4 тайлами
  • 1 пользователь с 6 тайлами

Версия №3


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

Что получилось в итоге:




Статистика:



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

Версия №4, заключительная


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

Что получилось в итоге:





Видно, что на этот момент захотелось немного заработать на добровольном донате. Заработать удалось что-то около 800-900 рублей, вывести которые так и не удалось. Спасибо Microsoft за минимальный размер вывода в 25 долларов.

Заключительная статистика:



В заключении


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

Запал же по разработке стал пропадать, когда стало появляться всё больше комментариев от пользователей на Windows Phone 10 с просьбами поправить размеры тайлов или специфичные проблемы новой системы. В то же время как мой девайс категорично не включался в список на обновление платформы с Windows Phone 8.1. Желания выкладывать наобум, тестируя только в эмуляторе, особенно не было.

Затем последовали новости что вообще обновлений системы не будет и «покупайте новые телефоны». А за приложения было обидно, особенно учитываю позитивные, в общей массе, отзывы пользователей.

На такой ноте и закончим ностальгии разработки пост. Спасибо за внимание.

Комментарии (5)


  1. AndrewN
    23.01.2019 19:01
    +1

    О, да, помню это приложение (у меня была Lumia 730 DS), некоторое время пользовался. Но в итоге написал свое, правда без дизайна внутри и прочего с единственной целью — выводить до 4 валют на одной плитке. Правда я сразу под Win10 делал (UWP телефон/ПК). До сих пор маркете висит, хотя телефона уже больше двух лет этого у меня нет, но на ПК пользуюсь. Даже запросы фич раз в пару месяцев приходят и я всё обещаю и обещаю, но никогда скорее всего в итоге ничего не допилю.


  1. avvor
    23.01.2019 20:30
    +1

    У меня помимо минимального порога в 25$, ещё проблема была что сколько кошельков PayPal не пытался вводить, каждый раз приходило сообщение что «ошибка вывода проверьте ваши настройки кошелька». А для вывода на расчётный счёт минимальный порог 200$ за минусом их комиссии 30%(вроде 30? не помню). Вобщем вывел я свои 200$ этим летом от игры которую мы выпустили в 2012)


  1. Iqorek
    23.01.2019 22:43

    Вспомнил про свое приложение, которое писал примерно в тоже время и уже несколько лет заброшено. Была подключена гугл аналитика, сейчас посмотрел, до сих пор кто то использует, целых 17 человек онлайн, в лучшие времена было около сотни. Те кто остались, Индия, Африка и Южная Америка, все до сих пор на 8ке, что странно, вроде ее давно отключили.
    Заработать не получилось ничего совсем, я конечно не рассчитывал на миллионы, но это было совсем обидно, хоть бы один доллар вернуть, за несколько месяцев, что я каждый вечер, иногда до 2х ночи, красноглазил.


  1. asmdk
    24.01.2019 05:34

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


  1. MMTRIX
    24.01.2019 22:24
    +1

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