Arm1.ru

Получение номера дня недели на Objective-C

Шпаргалка по получению номера дня недели из NSDate:

/* берём Григорианский календарь*/
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
/* NSDateComponents позволяет вытащить из NSDate номер дня недели, день месяца и пр. */
NSDateComponents *comps = [gregorian components:NSWeekdayCalendarUnit fromDate:[NSDate date]];
// получаем номер дня. Он будет от 1 до 7
NSInteger weekday = [comps weekday];

В iOS, в зависимости от того, какой выбран регион в настройках устройства,неделя начинается или с понедельника, как в России, илис воскресенья, как в США. Если нужно вывести лишь короткое название дня недели, например: пн, вт, ср, чт, то можно так:

NSDateFormatter *weekdayDateFormatter = [[NSDateFormatter alloc] init];
[weekdayDateFormatter setDateFormat: @"EE"];
NSLog(@"%@", [weekdayDateFormatter stringFromDate:dateFromString]);
comment comments

Симуляция плохого соединения с интернетом в OS X

Network Link Conditioner

Оставлю ещё одну шпаргалку в виде ссылки. Network Link Conditioner - тулза от Apple из набора Hardware IO Tools for Xcode. Позволяет лимитировать в макоси скорость соединения. Можно протестить, например, как приложение ведёт себя в условиях EDGE-соединений или хуже. То же самое есть в разделе Developer в настройках iOS, но то на девайсе, а тут в OS X.

Кстати, в том же наборе лежит симулятор для HomeKit.

comment comments

Автоувеличение номера билда в Xcode

Автоувеличение номера билда в Xcode

Ещё одна шпаргалка, чтобы потом быстро найти, в случае чего. В Xcode, как известно, можно при билде проекта запускать свои bash-скрипты.

Эти 2 строчки кода позволяют автоматически увеличивать номер билда в приложении:

buildNumber=$(git rev-list --all | wc -l)
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${PROJECT_DIR}/${INFOPLIST_FILE}"

Первая строка считает количество коммитов в git-репозитории. Вторая - пишет их количество в .plist-файл таргета как номер билда. Каждый новый коммит увеличивает номер билда на единицу. Это один из способов.

Пихать в Build Phases нужного таргета.

comment comments

Итог айПодписок

айПодписки

Итак, в феврале Яндекс всех пользователей Яндекс.Подписок насильно перетащил на сервис Яндекс.Новости. Без предупреждения и как-то по-свински всё это получилось. Веб-версия стала недоступна. Но API работало, про его судьбу яндексоиды лишь говорили, что оно будет работать. Но про сроки и планы молчали. Собственно, сначала перестали подсасываться новые RSS-записи и API давал доступ только к старым записям, а потом разослали всем письма, что 31 марта 2015 года API они тоже убьют. Что и произошло. Поэтому я убрал из App Store приложение айПодписки и хочу подвести какие-то итоги для себя и для истории.

Приложение я написал весной 2014 года примерно за неделю, кодя по вечерам. В App Store оно появилось 17 апреля 2014 года, о чём я радостно писал у себя и в посте на Хабре. Пост набрал рейтинг +15 и принёс какое-то количество скачиваний и запросов на фичи. Приложение не дотянуло 17 дней до своего первого дня рождения :)

За этот год было:

Итог айПодписок

1321 скачивание приложения и всего 496 обновлений, когда я выпускал новые версии. Негусто, но это и приложение не массовое. RSS вообще считается технологией для роботов и гиков. Абсолютное большинство пользователей из России. 2 и 3 место - США и Украина, там поровну. Рекорд: 77 установок за сутки.

Итог айПодписок

1431.42 р. дохода на внутренних покупках. Изначально приложение было бесплатным, но с рекламой и её платным отключением. Из моих 4 приложений в App Store, это худший результат. С другой стороны, получить какие-то деньги за то, что учишься, получаешь опыт и решаешь какую-то свою проблему - тоже неплохо :)

Итог айПодписок

Большую часть времени приложение находилось в Топ-200 в своей категории (Новости) в России. На скрине выше - самые высокие позиции, на которые оно заползало в топах.

Итог айПодписок

С оценками всё не очень. Я нигде не просил людей поставить оценку приложения, поэтому ставили её либо энтузиасты и друзья, либо недовольные. Я, к сожалению, пропустил глюк очень досадный. Когда приложение запускалось в портретном режиме - кнопка «Все подписки» просто не появлялась. В итоге пользователь видел только приветственный экран и кнопку «убрать рекламу» за деньги :) И грустно, и смешно. Сам я постоянно приложением пользовался в горизонтальном режиме и попросту эту проблему не замечал, зато получил отзывы типа «работает только реклама».

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

В приложении показывается реклама из AdMob. За год было всего 71135 показов рекламы, которые принесли $23.87. То есть внутренняя покупка отключения рекламы принесла больше денег, чем сама реклама :)

Такие вот скромные, но итоги.

comment comments

айПодписки и закрытие Яндекс.Подписок

Так как Яндекс закрыл свой сервис Яндекс.Подписки и всех насильно перевёл всех в Яндекс.Новости, я думаю на этом айПодписки закончатся. Разве что они сделают публичный API для Яндекс.Новостей. Если он будет годным для перевода, то попробую перевести айПодписки на новый API. Но пока API нет. API самих Яндекс.Подписок пока работает, но сбор новых новостей из RSS-лент они остановили. У меня там последние новости за 5-6 февраля. Сам я перешёл на Feedly. Спасибо всем, кто пользовался :)

UPDATE: пришло письмо, что 31 марта API подписок закроется. Видимо, придётся и приложение из App Store убирать.

comment comments

Изменения в Core Location Manager в iOS 8

Изменения в Core Location Manager в iOS 8

Заметка про то, что в iOS 8 теперь нужно запрашивать разрешение на использование геолокации иначе.

Читать далее...

comment comments

Пост про поиски работы

Весь январь ищу работу. Не самый активный месяц, учитывая сколько в этом году было новогодних выходных - половина месяца, но тем не менее. Заметка-наблюдения.

Читать далее...

comment comments
local_offer работа