Если у вас есть строка состояния, вы должны проектировать 320x460 (меньше 20 пикселей).
Несмотря на то, что вы можете оставить его равным 320x480 и оставить реальную строку состояния закрашенной над default.png, она будет выглядеть странно, когда телефон находится в режиме интернет-модема или удерживает вызов (еще 20 пикселей) .
Обрезка до 320x460 выглядит лучше в режиме модема.
Не помещайте зависимость в настройки проекта CC.NET. Вам необходимо контролировать порядок сборки проекта через скрипт NAnt. Вам не нужно строить на уровне решения, вы можете строить на уровне отдельного проекта.
<target name="Project1" depends="Projects2" description="Builds project 1">
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
<workingDirectory>C:\dev\ccnet</workingDirectory>
<projectFile>CCNet.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
<targets>Build;Test</targets>
<timeout>900</timeout>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
</target>
<target name="Project2" depends="Projects3" description="Builds project 2">
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
<workingDirectory>C:\dev\ccnet</workingDirectory>
<projectFile>CCNet.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
<targets>Build;Test</targets>
<timeout>900</timeout>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
</target>
<target name="Project3" description="Builds Project 3">
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
<workingDirectory>C:\dev\ccnet</workingDirectory>
<projectFile>CCNet.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
<targets>Build;Test</targets>
<timeout>900</timeout>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
</target>
Вы можете запускать свои модульные тесты на уровне отдельного проекта, поэтому вам не нужно делать дублирующие прогоны для нескольких проектов.
Я предлагаю вам не пересекать концепцию проекта CruiseControl с проектом визуальной студии! Обычно я создаю проект CC, который включает в себя совокупность работ. Для меня это означает, что проект CC будет запускать сценарий NAnt. Скрипт NAnt очень тонко контролирует, что я делаю и когда. Это означает, что я могу создать свое решение (которое знает, какой проект создать первым!), Запустить свои модульные тесты, сбросить базу данных, развернуть некоторый код, разослать несколько электронных писем, провести некоторый анализ кода (NDepend и NCover великолепны!), и т. д. Это означает, что у меня есть один проект, отображаемый в CCTray, и это сохраняет все более верным тому, чем они являются на самом деле. Затем я могу создать новый проект в CC для управления переходом от DEV к STAGING и от STAGING к PROD, чтобы мы могли «нажать кнопку» для этой задачи.
Хотя вы уже приняли ответ, я бы предложил кое-что еще: вам не следует иметь прямую зависимость между двумя проектами. Под «прямым» я подразумеваю, что каждый раз, когда бинарные файлы в проекте A изменяются, это не должно означать, что вы автоматически используете их для сборки проекта B.
Процесс обновления этих ссылок должен контролироваться (вами), в противном случае вы неизбежно закончится множеством неработающих сборок для проекта B.
Я стараюсь держать все внешние двоичные файлы в каталоге lib (и подкаталогах) под контролем исходного кода и обновлять их только тогда, когда я решу это сделать. Под «внешними» я подразумеваю как сторонние библиотеки, так и библиотеки из других проектов моей компании (пример: http://code.google.com/p/projectpilot/source/browse/#svn/trunk/lib )