Как известно, наиболее популярные социальные сети в мире позволяют писать под себя специальные приложения. Одним из ярких примеров является 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="http://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="http://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="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;">
27: <img src="http://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>
Может кто сделает какое-то действительно интересное социальное приложение, которое можно будет опубликовать в каталоге и сделать популярным среди пользователей? Все оказалось действительно просто.
Как известно, наиболее популярные социальные сети в мире позвол
я таки не понял зачем это все пользователю мой мир? кто такие твиттер силверлайт? где собственно код сильверлайта? и зачем он в моем мире?
это все должны делать (а также знать и понимать) все пользователи мой мир чтобы быть успешными?
pet, пользователю МойМир нужны просто полезные и/или интересные приложения - не важно на чем сделанные.
В данном посте я показываю разработчикам, как для этого можно использовать Silverlight.
Собственно в конце поста я и призываю всех желающих заняться созданием интересного красивого приложения для пользователей.
Михаил, а Silverlight приложения пишутся на языке CSharp? Если да то не могли бы вы дать ссылку на какие-либо ресурсы, где можно почерпнуть знаний по этому языку!
В том числе и на C#.
Ресурсы по самому языку?
Например здесь:
http://msdn.microsoft.com/ru-ru/beginner/default.aspx
http://www.microsoft.com/Rus/Msdnaa/Curricula/Default.mspx
На самом деле отличный блог! Спасибо и… разумеется, пишите еще!
Да уж По моему мнению, минусы значительно превосходят плюсы. Думаю, не стоит заморачиваться.
Премного благодарен. Это именно то, что всем нужно было :)