Под капотом

Недокументированные и скрытые возможности устройств и эмулятора.

Мини reverse engineering и модификация Windows Phone приложений

Как быстро поменять настройки WP приложения: Платное/Бесплатное, NoDo/Mango

Параметры приложения можно легко поменять через Visual Studio:

Чтоб создать такой список надо:

1. Зайти в ConfigurationManager, добавить "Free-Release" и "Free-Debug". Если необходимо - можно добавить конфигурацию для Mango.
2. Создайте папки Manifest/Free и Manifest/Paid (отдельно для Mango и NoDo).
3. Скопируйте файл WMAppManifest.xml из Properties в эти папки. Выставьте BuildAction = None, Copy = Don't Copy.

Должно получиться следующее:

4. Отредактируйте файлы WMAppManifest.xml и укажите нужные Guid (разные для каждой версии)

5. Создайте Pre-build команду:

if "$(ConfigurationName)" == "Free - Release" copy "$(ProjectDir)\Manifest\NoDo\Free\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Free - Debug" copy "$(ProjectDir)\Manifest\NoDo\Free\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Release" copy "$(ProjectDir)\Manifest\NoDo\Paid\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Debug" copy "$(ProjectDir)\Manifest\NoDo\Paid\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Mango Free - Release" copy "$(ProjectDir)\Manifest\Free\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Mango Free - Debug" copy "$(ProjectDir)\Manifest\Free\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Mango Release" copy "$(ProjectDir)\Manifest\Paid\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"
if "$(ConfigurationName)" == "Mango Debug" copy "$(ProjectDir)\Manifest\Paid\WMAppManifest.xml" "$(ProjectDir)\Properties\WMAppManifest.xml"

6. Если вы используете AdControl или другие библиотеки, которые работают по-разному в платной и бесплатной версии, то в файле проекта (.csproj):

<itemgroup condition=" $(Configuration.Contains('Free'))">
<reference include="Microsoft.Advertising.Mobile.UI">
<hintpath>C:\Program Files\Microsoft SDKs\Advertising for Phone\Microsoft.Advertising.Mobile.UI.dll</hintpath>
</reference>
</itemgroup>

7. Также можно объявить переменную FREE_WITH_ADS, которую потом в коде использовать - #if FREE_WITH_ADS. Аналогично с Mango.

Для простого переключения между NoDo и Mango вставьте в файл проекта (.csproj):

<TargetFrameworkProfile Condition=" $(Configuration.Contains('Mango')) ">WindowsPhone71</TargetFrameworkProfile>
<TargetFrameworkProfile Condition=" !$(Configuration.Contains('Mango')) ">WindowsPhone</TargetFrameworkProfile>

Источник: nokola.com

Дайте музыку. Секретные материалы

На Хабре опубликовал статью от том, как воспроизвести музыку на эмуляторе из встроенных файлов - Дайте музыку. Секретные материалы

Как запустить два эмулятора

Иногда приходится писать приложения, которые будут взаимодействовать между собой, например игра для двух и более пользователей. При этом возникает необходимость тестирования приложения. Хорошо, если у вас есть кого попросить запустить проект в студии и протестировать. Существует способ открытия несколько эмуляторов одновременно.

Установка приложения на устройство Windows Phone 7 из страны, не входящей в Marketplace

Install Windows Phone 7 Apps on Windows Phone from unsupported Marketplace countries | Ginktage

Реклама