我正在使用Xamarin.Forms创建一个Android应用程序,我正在使用ConfuserEx进行混淆。我想在此example中使用声明性混淆,因此我可以更改每个类的Obfuscation属性。
但是,Xamarin.Forms中的System.Reflection命名空间无法识别System.Reflection.ObfuscationAttribute类。我是否需要使用其他NuGet包,或者我错过了什么?
否则,有没有办法以不同的方式在不同的类中包含或排除混淆功能?
答案 0 :(得分:0)
ConfuserEx
仅查看属性的名称:
if (ca.TypeFullName != "System.Reflection.ObfuscationAttribute")
所以我只想在PCL(System.Reflection.ObfuscationAttribute
)项目中创建一个Xamarin.Forms
类。
即。
using System.Runtime.InteropServices;
namespace System.Reflection
{
[AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Interface | AttributeTargets.Parameter | AttributeTargets.Delegate, AllowMultiple = true, Inherited = false), ComVisible(true)]
public sealed class ObfuscationAttribute : Attribute
{
//
// Fields
//
private bool m_strip = true;
private bool m_exclude = true;
private bool m_applyToMembers = true;
private string m_feature = "all";
//
// Properties
//
public bool ApplyToMembers
{
get
{
return this.m_applyToMembers;
}
set
{
this.m_applyToMembers = value;
}
}
public bool Exclude
{
get
{
return this.m_exclude;
}
set
{
this.m_exclude = value;
}
}
public string Feature
{
get
{
return this.m_feature;
}
set
{
this.m_feature = value;
}
}
public bool StripAfterObfuscation
{
get
{
return this.m_strip;
}
set
{
this.m_strip = value;
}
}
}
}