Freigeben über


Программируем Windows Phone 7–Silverlight

В свете недавних новостей о сотрудничестве Microsoft и Nokia, платформа Windows Phone 7 представляется всё более перспективной. Уже сегодня российские студенты могут разрабатывать приложения для Windows Phone 7 и бесплатно размещать их для продажи в магазине приложений Windows Phone 7 Marketplace. Самое время, чтобы начать зарабатывать на новой платформе, под которую пока ощущается нехватка приложений!

В этой статье мы расскажем вам, как начать программировать для Windows Phone 7. Для телефона поддерживаются две технологии создания приложений: Silverlight и XNA. XNA в первую очередь предназначена для создания игр и приложений, работающих с 2D- и 3D-графикой – про программирование таких приложений мы расскажем в следующем месяце. Сейчас же поговорим про создание приложений на Silverlight.

Создание Silverlight-приложения для Windows Phone 7

Silverlight удобно использовать для бизнес-приложений, простых игр и прочих программ, имеющих "традиционный" управляемый событиями интерфейс (т.е. набор элементов управления типа строк ввода, списков и т.д.). Он приходит на смену более старым технологиям создания приложений Windows Forms. В основе Silverlight лежит принцип разделения разметки графического дизайна приложения и программного кода – интерфейс программируется с помощью XML-языка разметки XAML, а с действиями пользователя связываются события, программируемые отдельно на любом из .NET-языков (обычно на C#). Если интересно – вы можете ознакомиться с технологией Silverlight поподробнее.

Что приятно – для рисования интерфейса простого приложения вам не нужно почти ничего знать! Можно воспользоваться визуальным дизайнером Visual Studio, перетаскивая элементы управления на поле приложения (этого должно быть достаточно для большинства приложений с “классическим” интерфейсом), либо более специализированным инструментом  Expression Design, который потребуется для создания более “продвинутых” и красочных интерфейсов. И то, и другое доступно для студентов в рамках программы DreamSpark (при этом инструменты можно использовать и для создания приложений, размещаемых в Marketplace на продажу).

imageИтак, с чего начать:

  1. Заходим на “главный” сайт для разработчиков под телефон https://create.msdn.com
  2. Скачиваем и устанавливаем инструменты разработчика
  3. Разрабатываем приложение. Немного об этом – ниже.
  4. Тестируем приложение. Обратите внимание – для этого не нужен телефон! Большинство возможностей приложения можно протестировать на эмуляторе, который распространяется вместе с инструментами разработки.
  5. Регистрируем аккаунт на MarketPlace, размещаем приложение в магазине и получаем profit. Об этом мы поговорим отдельно, но для нетерпеливых могу предложить почитать англоязычный пост с инструкциями.

Рассмотрим простейшее приложение на Silverlight, которое будет полезно студентам: предсказатель оценки на экзамене. Для того, чтобы создать такое приложение, запустим Visual Studio, создадим новый проект Windows Phone Application, и поместим на поле два элемента управления из панели с доступными элементами: TextBlock и Button. Далее исправим в свойствах название элементов и заголовка, чтобы получился интерфейс подобным тому, который показан на рисунке справа.

В результате Visual Studio сама сгенерирует XAML-код для этого интерфейса, упрощенный вариант которого показан ниже:

     <Grid x:Name="LayoutRoot" Background="Transparent">
        <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
            <TextBlock x:Name="ApplicationTitle" Text="MY APPLICATION"/>
            <TextBlock x:Name="PageTitle" Text="Предсказатель"/>
        </StackPanel>
        <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
            <TextBlock Name="textBlock1" Text="Нажмите кнопку"/>
            <Button Content="Предсказать" Name="button1" Click="button1_Click" />
        </Grid>
    </Grid>

Далее, чтобы добавить к приложению функциональность, нам достаточно дважды нажать кнопку – будет сгенерирован код на C#, который будет вызван при нажатии на кнопку. Чтобы приложение работало, добавим код для генерации случайного числа и записи его в качестве содержимого текстовой строки:

 private void button1_Click(object sender, RoutedEventArgs e)
{
   Random R = new Random();
   textBlock1.Text = "Моя оценка будет: "+R.Next(2,5).ToString();
}

Для запуска приложения достаточно нажать F5 (или кнопку со стрелкой в Visual Studio) – будет автоматически запущен эмулятор Windows Phone, и на нём развёрнуто и запущено приложение. Большую часть функциональности приложений можно протестировать в эмуляторе. Если у вас есть аппарат Windows Phone 7 – в следующий раз мы расскажем, как запустить приложение на телефоне и поместить его в Marketplace.

Таким образом, за несколько минут мы можем создать работающее полезное приложение для Windows Phone 7. Попробуйте тоже написать простое приложение – вам это наверняка понравится! Расскажите нам о своих экспериментах в комментариях к блогу, или в твиттере. Для дальнейшего изучения этой темы рекомендую:

Потратив несколько часов, можно создать вполне интересное законченное приложение, которое можно будет разместить в Windows Phone Marketplace, а также поучаствовать с ним в конкурсе Imagine Cup Windows Phone 7 Challenge! До окончания соревнований осталось чуть менее месяца (последний срок подачи заявок – 7 марта 2011 г. ) – в самый раз, чтобы успеть разработать прототип и загрузить его на сайт!

Удачи вам в экспериментах, и доброго кода!

WP7_SL.zip

Comments

  • Anonymous
    March 15, 2011
    Занятная статья, спасибо

  • Anonymous
    March 21, 2011
    Подход по защите контента  как в zune неподходит лучше взять китайский телефон хоть с телевизорм