forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   С# (http://forum.boolean.name/forumdisplay.php?f=128)
-   -   Universal Apps (http://forum.boolean.name/showthread.php?t=19223)

cherepets 06.06.2014 22:36

Universal Apps
 
Давайте поговорим про новый тип приложений, доступных в студии - Universal Apps.
По большому счету суть близка к старому PCL - есть проекты под каждую платформу отдельно и есть проект с shared кодом. Отличие в том, что shared код во-первых не выносится в отдельную бибилиотеку и по дефолту находится в том же namespace что и основные проекты => может вызывать код из них. Более того, для этого даже не надо создавать interface, достаточно просто чтобы сигнатуры вызываемых из shared кода методов в проектах под каждую платформу совпадали. Ну и во-вторых, его создали в первую очередь для Windows 8 и Windows Phone (но есть поддержка и прочих современных .Net-based платформ), а между ними сейчас до 99.5% общего кода. Лично у меня вышло собрать hello world без платформозависимого кода вообще (не будем учитывать App.cs - все равно он сам генерится и никто в него не смотрит, главное что вся разметка и логика вынесена в shared). Причем из интересного - несмотря на то что код и разметка общие между платформами, выглядят они по разному на конечных устройствах и на каждом - нативно для своей платформы. Короче, я под впечатлением.

Кто нибудь еще разбирался уже? Какие впечатления?

Кстати, я наткнулся на один не решенный для вопрос: в Windows 8 контракт Share обязательно требует Title, иначе его вызов просто ничего не делает. В Windows Phone он же сейчас используется для отправки SMS и в приложении Сообщения этот Title оказывается на первой строчке сообщения, а дальше идет собственно Body. Естественно, мне этого не надо. Есть ли какой-то некостыльный способ решения данной проблемы?

Жека 07.06.2014 11:07

Ответ: Universal Apps
 
Может, поставить title="" или title=" ". Вроде как установил, но смысла не несёт.

cherepets 08.06.2014 01:15

Ответ: Universal Apps
 
Можно, но проблема в том что смс в таком случае будет иметь в начале лишний символ пробела и лишний "\r\n".
Вообще ответ уже нашелся: есть отдельный API для работы с смс в Windows.ApplicationModel.Chat.ChatMessageManager.


Часовой пояс GMT +4, время: 07:34.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot