当前位置: 首页 > news >正文

杭州租房网站建设网站的meta标签优化

杭州租房网站建设,网站的meta标签优化,难道做网站的工资都不高吗,丰和园林建设集团网站目录 一、导入工具 二、各种混淆形式介绍 2.1 程序集混淆 2.2 命名空间混淆 2.3 类混淆 2.4 函数混淆 2.5 参数混淆 2.6 字段混淆 2.7 属性混淆 2.8 事件混淆 三、安全混淆 四、兼容性处理 4.1 动画方法兼容 4.2 GUI方法兼容 4.3 协程方法兼容 五、选项 5.1 调…目录 一、导入工具 二、各种混淆形式介绍 2.1 程序集混淆 2.2 命名空间混淆 2.3 类混淆 2.4 函数混淆 2.5 参数混淆 2.6 字段混淆 2.7 属性混淆 2.8 事件混淆 三、安全混淆 四、兼容性处理 4.1 动画方法兼容 4.2 GUI方法兼容 4.3 协程方法兼容 五、选项 5.1 调试日志输出目录定义 5.2 标签属性设置 5.3 混淆映射文件 一、导入工具 收费版Obfuscator Pro | Utilities Tools | Unity Asset Store  免费版Obfuscator Free | Utilities Tools | Unity Asset Store  Unity 2019.4.0f1 使用免费版 注意AssetStore点击添加到的是5.0版本实际可能会不兼容你所在的Unity版本故需要重启Unity再次打开My Assets找到Obfuscator Free再Import若网络不正常请检查是否开启了代理需关闭代理。 导入成功后会看到如下内容  再导入一个NewtonsoftJson插件com.unity.nuget.newtonsoft-json 准备一个查看dll的工具 ILSky本次测试只看Window平台打包后的混淆代码 https://sourceforge.net/projects/ilspy.mirror/files/v9.0/ILSpy_Installer_9.0.0.7889-x64.msi/download 注意这个ILSky也有版本区分上面是是给window系统用的其他系统对应找对应的版本下载。 创建Test.cs脚本添加如下常用代码TestA是一个程序集文件 using Newtonsoft.Json; using UnityEngine; namespace TestA {public class Space{public int width;public int height;public int depth;}public class Test : MonoBehaviour{string json {\width\:666,\height\:777,\depth\:1000};void Start(){Space space JsonConvert.DeserializeObjectSpace(json);PrintSpace(space);}void PrintSpace(Space space){Debug.Log(space.width);Debug.Log(space.height);Debug.Log(space.depth);}} } 二、各种混淆形式介绍 2.1 程序集混淆 混淆后 屏蔽TestA.dll混淆 2.2 命名空间混淆 将Test.cs脚本的命名空间从Test改为TestA_NameSpace方便观察区分混淆后 屏蔽TestA_NameSpace混淆 尚不清楚有何作用的选项不需要开启这个。 2.3 类混淆 可能由于是免费版故有这种黄底颜色的混淆无法使用。 屏蔽混淆泛型类例如上面的Space_GenericT泛型类其他类会正常混淆。 2.4 函数混淆 屏蔽Public类型函数 2.5 参数混淆 正常混淆 屏蔽混淆函数参数后会如下 2.6 字段混淆 2.7 属性混淆 屏蔽公共属性混淆 2.8 事件混淆 屏蔽公共事件混淆 三、安全混淆 四、兼容性处理 4.1 动画方法兼容 动画帧调用的脚本方法不会被混淆 测试取消这个兼容也一样会忽略混淆。 4.2 GUI方法兼容 4.3 协程方法兼容 关闭兼容后 其中CoroutineFunc2和CoroutineFunc3会找不到报错所以需要开启兼容即不会对协程方法进行混淆处理。 即使添加传参也是没有对参数进行混淆的不过有些局部参数名有混淆。 因此如果想对协程方法进行混淆要保证全部调用协程方法的形式是 StartCoroutine(CoroutineFunc1()); 并关闭兼容协程方法处理 五、选项 5.1 调试日志输出目录定义 默认日志文件 5.2 标签属性设置 参考Attributes | GuardingPearSoftware documentation 原有[DoNotRename]标签忽略混淆名称现在可以自定义标签属性如下name参数是非必要的 作为一个忽略混淆名称使用例如忽略混淆这个方法名。 5.3 混淆映射文件 如上图我启动了映射文件并设置了一个文本文件路径作为保存的文件路径内容是保存各种映射关系。 测试映射文件作用可以将错误日志反混淆显示 案例故意搞一个错误的代码如下 使用Log Viewer调试插件看打包后报错日志 Log Viewer | Integration | Unity Asset Store 导入后需要创建调试器物体在场景上 打包查看 打包运行 查看报错日志发现是混淆名称 开启混淆映射文件 测试发现依旧没有变化即并没有改动实际运行时的日志输出只能通过这个工具查看反混淆后的日志 通过ILSpy查看ErrorStackEditor内容可以通过如下方法动态执行上面这个过程来加速我们的反混淆日志文件速度。 public string Deobfuscate(string obfuscatorText) {//OPS.Obfuscator.Editor.dll是ErrorStackWindow所在的程序集文件Assembly assembly1 Assembly.LoadFile(Assets/OPS/Obfuscator/Editor/Plugins/OPS.Obfuscator.Editor.dll);Type type assembly1.GetType(OPS.Obfuscator.Editor.Gui.ErrorStackWindow);var instance EditorWindow.GetWindow(type);//1、填写 File Path 字符串对象如果想了解可以打开ILSky查看 可能不同版本的混淆情况不同//1.1 从程序集找到232类型相当于Text组件)Type type232 assembly1.GetType(232);//1.2 找到232类型的1550属性相当于Text.text属性var property232_1550 type232.GetProperty(1550, BindingFlags.Instance | BindingFlags.Public);//1.3 获取ErrorStackWindow类的名为1382的私有字段相当于Text组件字段var field1382Info type.GetField(1382, BindingFlags.Instance | BindingFlags.NonPublic);//1.4 获取instance实例的1382字段相当于获取ErrorStackWindow对象里的名为1382字段它是一个Text组件对象var v1382 field1382Info.GetValue(instance);//1.5 将映射文件路径填充到v1382.text字段v1382是一个Text对象property232_1550.SetValue(v1382, E:\UnityProject\UnityHunXiaoObfuscatorProDemo\Assets\Scripts\TestA\ObMapFile.json);//2 填写输入文本混淆内容文本//2.1 获取程序集的221类型相当于Area组件Type type221 assembly1.GetType(221);//2.2 获取221类型的1550属性相当于Area.text属性)var property221_1550 type221.GetProperty(1550, BindingFlags.Instance | BindingFlags.Public);//2.3 获取ErrorStackWindow类的名为1383的私有字段相当于Area组件类型名为1383的字段var field1383Info type.GetField(1383, BindingFlags.Instance | BindingFlags.NonPublic);//2.4 获取instance实例的1383字段var v1383 field1383Info.GetValue(instance);//2.5 将混淆内容文本填充到v1383.text字段v1383是一个Area对象property221_1550.SetValue(v1383, obfuscatorText);//3 执行ErrorStackWindow的662方法会将ObMapFile.json文件反序列化 准备解析混淆内容文件var method662 type.GetMethod(662, BindingFlags.Instance | BindingFlags.NonPublic);method662.Invoke(instance, null);//4 执行ErrorStackWindow的667方法会将混淆内容文本解析完成输出到1384Area组件var method667 type.GetMethod(667, BindingFlags.Instance | BindingFlags.NonPublic);method667.Invoke(instance, null);//5 将Area组件的文本获取并返回//获取1384Area组件的1550字段内容Area.text) var field1384Info type.GetField(1384, BindingFlags.Instance | BindingFlags.NonPublic);var v1384 field1384Info.GetValue(instance);return (string)property221_1550.GetValue(v1384); } 使用方法 Debug.LogError(Deobfuscate(NullReferenceException: Object reference not set to an instance of an object at TestA_NameSpace.Test.cl (TestA_NameSpace.h1[a] a) [0x00003] in 7a98e657ea8f45a0ac3ccc399b375f23:0 at TestA_NameSpace.Test.Start () [0x00026] in 7a98e657ea8f45a0ac3ccc399b375f23:0 )); 若无法正常使用说明你的Obfuscator Free版本和我不一样它的混淆情况也不一样。
http://www.w-s-a.com/news/475545/

相关文章:

  • 本溪网站建设兼职wordpress lapa
  • 官网网站设计费用vue大型网站怎么做路由
  • 青海省安建设管理部门网站厦门网站快照优化公司
  • 张家港建网站公司网站开发 认证
  • 网站建设方式优化兰州医院网站制作
  • 怎么创造网站wordpress伪静态规则怎么写
  • 自己怎么做一元购物网站信誉好的合肥网站推广
  • 做网站的骗术有什么好的网站设计思想的博客
  • 网站建设工作 方案企查查企业信息查询在线
  • 上海外贸建站商城定制软件安卓
  • 成都网站建设_创新互联wordpress 相邻文章
  • 电子商务网站制作步骤免费建网站知乎
  • 龙岩有什么招聘本地网站团购网站 方案
  • 服务器运行一段时间网站打不开注册公司名字核名查询系统
  • 企业网站改版的意义响应式网站建设新闻
  • 大连金州新区规划建设局网站金坛市建设局网站
  • 有哪些做排球比赛视频网站wordpress 教师工作坊
  • 深圳好点的网站建设公司互联网企业信息服务平台
  • 下载空间大的网站建设哈尔滨网站制作软件
  • 南城网站仿做无锡网站制作哪家价格便宜
  • c做的网站营销策划课程
  • 免费网站404免费进入重庆的公需科目在哪个网站做
  • 网站空间租用费用网站建设公司怎么宣传
  • 镇江网站建设优化案例分析dw2018网页制作步骤图文
  • 网站开发一个多少钱为什么前端都不用dw
  • 网站降权的原因北京中小企业网站建设公司
  • 个人域名能做网站吗wordpress
  • 手机网站设计只找亿企邦工业设计公司简介
  • 腾讯云主机做网站免费网站怎么做啊
  • 网站建设推广销售话术广州网页定制多少钱