Прошло много времени с тех пор, как я написал оригинальный пост Простой пример использования WCF. Это было еще до выхода Visual Studio 2008, и с тех пор многое изменилось. Поскольку множество людей по-прежнему задают вопросы в комментариях к тому посту, давайте посмотрим, что в настоящее время мы должны сделать, чтобы поднять и запустить службу (service), а также обратиться к ней из клиентского приложения.
Написать этот пост я решил, после прочтения многочисленных комментариев о том, что многим пришлось поменять роутер, так как он стал мигать всеми лампочками подряд, перестал загружаться и прошиваться! Упорно используя «Поиск», описания этой проблемы, к моему великому удивлению, я не нашел на Хабре. Хотя проблема известна давно и описана в Рунете. Бывает такое, по закону подлости, на следующий день как закончится гарантия. А обычно через 1.5-2.5 года эксплуатации. Всему виной, в 90% случаев, лишь блок питания (далее по тексту — БП). В сервисных центрах в ремонте отказывают, т.к. гарантия закончилась или впаривают новый БП по цене от 700 до 1200 рублей. Данная проблема случается в 3 роутерах из 10, оборудованных этими источниками питания. Обычно БП производят сторонние фирмы, а все «восторженные» отзывы пользователей о надежности оборудования, достаются именно D-Link и Asus! Стоимость деталей для ремонта — 10 рублей!
Итак, начнем!
Настройке Asterisk посвящены сайты, форумы и целые порталы типа voip-info.org. Но всегда есть люди, для которых эта тема – дремучий лес, а запустить продукт надо «вчера». Ещё полтора месяца назад я про Asterisk знал только то что он есть. Данный труд призван лишь несколько облегчить жизнь тем, кто окажется в такой же ситуации после меня. В нём могут быть ошибки любой степени «чайниковости». Если вы гуру настройки Asterisk – укажите на ошибку, я поправлю, потомки будут вам благодарны.
Рекомендации по созданию UI виджетов и некоторых блоков приложений для ОС Android предписывают нам использовать блоки с закруглёнными углами и/или с эффектом объема, отбрасывающие тени. Какие же инструменты нам дает SDK для реализации таких интерфейсов?
При описании простых векторных форм без дополнительного оформления углов и краев блока рекомендуется использовать shape формы. Если в блоке имеются сложные графические элементы по углам или с краев блока можно использовать Nine-patch изображения, о которых и пойдет речь в этой статье. На случай сложного оформления блока, например в виде единого объекта, остается использовать только фиксированное изображение, что уменьшит рамки масштабирования и не даст изменить соотношение сторон блока.