Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Для отладки Android поддерживает протокол JDWP (Java Debug Wire Protocol). Эта технология позволяет некоторым средствам, например ADB, взаимодействовать с виртуальной машиной Java. Протокол JDWP очень важен на этапе разработки, но не забывайте отключить его перед публикацией приложения.
JDWP можно настроить с помощью значения атрибута android:debuggable в приложении Android. Выберите один из трех приведенных ниже способов установки этого атрибута в Xamarin.Android.
AndroidManifest.xml
Создайте или откройте файл AndroidManifext.xml и задайте в нем атрибут android:debuggable. Будьте осторожны: не отправляйте сборку выпуска с включенной отладкой.
<application android:label="@string/app_name"
android:debuggable="true"
android:icon="@mipmap/appicon">
...
</application>
Добавление атрибута класса Application
Если в приложении Xamarin.Android есть класс с атрибутом [Application], обновите атрибут до [Application(Debuggable = true)]. Задайте для него значение false, чтобы отключить его.
Добавление атрибута assembly
Если у приложения Xamarin.Android еще [Application] нет атрибута класса, добавьте атрибут [assembly: Application(Debuggable=true)] уровня сборки в файл c#, Properties\AssemblyInfo.csнапример. Задайте для него значение false, чтобы отключить его.
Итоги
Если присутствуют одновременно AndroidManifest.xml и ApplicationAttribute, содержимое AndroidManifest.xml имеет более высокий приоритет, чем ApplicationAttribute.
Если вы добавите атрибут класса и атрибут сборки, возникнет ошибка компилятора:
"Error The "GenerateJavaStubs" task failed unexpectedly.
System.InvalidOperationException: Application cannot have both a type with an [Application] attribute and an [assembly:Application] attribute."
По умолчанию , если ни тот AndroidManifest.xml , ApplicationAttribute ни другой атрибут не присутствует, значение атрибута android:debuggable зависит от того, создаются ли символы отладки. Если отладочные символы присутствуют, Xamarin.Android устанавливает для атрибута android:debuggable значение true.
Предупреждение
Значение атрибута android:debuggable НЕ всегда зависит от конфигурации сборки. Может случиться так, что для сборки выпуска атрибут android:debuggable имеет значение true. Если вы используете атрибут для установки этого значения, вы можете создать оболочку для атрибута в директиве компилятора:
#if DEBUG
[Application(Debuggable = true)]
#else
[Application(Debuggable = false)]
#endif