我正在使用 xamarin 表单开发 xamarin 应用程序。
我在 xaml 文件中有一个按钮,在 c# 中有一个 onclick 函数。
XAML
<Button Content="Button!" Click="OnButtonClick" />
隐藏代码
void OnButtonClick(object sender, EventArgs e)
{
//some logic.
}
在混淆之前,应用程序运行良好。
但经过混淆后,
在C#中,函数名称(OnButtonClick)被混淆了
在 xaml 中,名称 (OnButtonClick) 保持不变。
由于此冲突,应用程序会抛出错误。
开发工具
Visual Studio 2015
Dotfuscator 社区版
xamarin 4.0.4.4
最佳答案
在大多数情况下,XAML 将被正确重命名。不过,我们最近意识到一个错误,Xamarin 生成带有异常版本字符串的 XAML/XML,而 Dotfuscator 无法处理它。我们正在计划修复,但要等到新版 Visual Studio 发布并修复 Dotfuscator CE 后才能使用。 (如果您可以选择,我们的下一个专业版将提供修复程序。)要解决此问题,您可以 exclude the method from renaming .
此外,您的 XAML 语法似乎可能有错误 - 我相信它应该是 Clicked=
,而不是 Click=
。
全面披露:我为 PreEmptive Solutions 工作。
关于c# - Xamarin C# xaml混淆数据绑定(bind)冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39147869/