Создаем Silverlight-приложение для сети Мой Мир@Mail.Ru
Как известно, наиболее популярные социальные сети в мире позволяют писать под себя специальные приложения. Одним из ярких примеров является Facebook, у которых есть своя разметка, доступ к данным и так далее. Мне было интересно написать сетевое прилоложение на Silverlight, и для Facebook для этого специальные проекты – например, Facebook Toolkit и Facebook.NET.
Среди российских сетей приложения позволяют писать ВКонтакте и Мой Мир, правда первый требует использования только Flash и все. Мой Мир же более дружественный – поддерживает обычный HTML, а значит и Silverlight. Собственно с ним я и решил экспериментировать.
На самом деле все просто – после регистрации в сервисе находим в меню “Мои приложения”, нажимаем на “Разработку приложений” и узнаем, как все это можно делать. Мой Мир поддерживает OpenSocial, так что мы можем программно получать информацию о нас самих, наших друзьях в сети и так далее.
При создании нового приложения нужно указать его имя, описание, выбрать картинку. После этого можно переходить к коду. В случае использования Silverlight код представляет собой просто объект <object>, который ссылается на соотествующий XAP-файл приложения в сети.
В качестве эксперимента я вставлял видео с Channel9 (код показывается по кнопке embed), твиттер-гаджет Silverster и gamertag для приставки XBox – XBox Friends Watch. Пример вставки двух последних можно найти на главной странице моего блога.
Я не стал создавать специальное Silverlight-приложение для работы с OpenSocial – хотя было бы интересно сделать визуализатор социальных связей или что-то в таком духе. Для проверки работы я просто над Silverlight-объектом в HTML вставляю текущее имя пользователя через вызов соответствующего метода.
Вот как выглядит код приложения для твиттера (не забудьте указать свои данные):
1: <?xml version="1.0" encoding="windows-1251" ?>
2: <Module>
3: <ModulePrefs title="test - Twitter" description="Отображает свой твиттер через гаджет Silverster"
4: height="451" thumbnail="https://content.foto.mail.ru/mail/mixen/_myapps/i-7.jpg"
5: author="YourName" author_email="YourMail@mail.ru">
6: <Require feature="opensocial-0.7" />
7: </ModulePrefs>
8: <Content type="html" view="profile"><![CDATA[
9: <html>
10: <head>
11: <meta http-equiv=content-type content="text/html; charset=windows-1251">
12:
13: </head>
14: <body>
15:
16:
17: <b><div id="myname" style="font-family: Arial, Helvetica, sans-serif;
18: "></div></b>
19: <object data="data:application/x-silverlight,"
20: type="application/x-silverlight-2" width="100%" height="100%">
21: <param name="source" value="https://www.silverlightshow.net/twitter/ClientBin/Silvester.xap"/>
22: <param name="enableHtmlAccess" value="true" />
23: <param name="onerror" value="onSilverlightError" />
24: <param name="background" value="white" />
25: <param name="initParams" value="twitterUser=mixen" />
26: <a href="https://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;">
27: <img src="https://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/>
28: </a>
29: </object>
30:
31: <script type="text/javascript">
32: var req = opensocial.newDataRequest();
33: req.add(req.newFetchPersonRequest('VIEWER'), 'viewer');
34: req.send(load);
35:
36: function load(dataResponse)
37: {
38: var viewer = dataResponse.get("viewer").getData();
39: document.getElementById('myname').innerHTML = viewer.getDisplayName();
40: }
41:
42: </script>
43: </body>
44: </html>
45: ]]></Content>
46:
47: </Module>
Может кто сделает какое-то действительно интересное социальное приложение, которое можно будет опубликовать в каталоге и сделать популярным среди пользователей? Все оказалось действительно просто.
Comments
Anonymous
February 23, 2009
Как известно, наиболее популярные социальные сети в мире позволAnonymous
February 24, 2009
я таки не понял зачем это все пользователю мой мир? кто такие твиттер силверлайт? где собственно код сильверлайта? и зачем он в моем мире? это все должны делать (а также знать и понимать) все пользователи мой мир чтобы быть успешными?Anonymous
February 24, 2009
pet, пользователю МойМир нужны просто полезные и/или интересные приложения - не важно на чем сделанные. В данном посте я показываю разработчикам, как для этого можно использовать Silverlight. Собственно в конце поста я и призываю всех желающих заняться созданием интересного красивого приложения для пользователей.Anonymous
February 26, 2009
Михаил, а Silverlight приложения пишутся на языке CSharp? Если да то не могли бы вы дать ссылку на какие-либо ресурсы, где можно почерпнуть знаний по этому языку!Anonymous
March 01, 2009
В том числе и на C#. Ресурсы по самому языку? Например здесь: http://msdn.microsoft.com/ru-ru/beginner/default.aspx http://www.microsoft.com/Rus/Msdnaa/Curricula/Default.mspxAnonymous
May 31, 2009
На самом деле отличный блог! Спасибо и… разумеется, пишите еще!Anonymous
June 26, 2009
Да уж По моему мнению, минусы значительно превосходят плюсы. Думаю, не стоит заморачиваться.Anonymous
June 28, 2009
Премного благодарен. Это именно то, что всем нужно было :)