SEO基础

SEO基础

Products

当前位置:首页 > SEO基础 >

如何将网站建设与管理的知识转化为实际操作中的精通?

96SEO 2026-02-19 10:34 5


如何将网站建设与管理的知识转化为实际操作中的精通?

将主流的GameFramework修改#xff0c;支持Addressable和AssetBundle#xff0c;已完善打包工具和流程。

(github.com)

新…GitHub:YMoonRiver/hybridclr_addressable:

开箱即用的商业游戏框架集成了主流的开发工具。

将主流的GameFramework修改支持Addressable和AssetBundle已完善打包工具和流程。

(github.com)

GameFramework[https://github.com/EllanJiang/GameFramework](https://github.com/EllanJiang/GameFramework)

UniRx:

[https://github.com/neuecc/UniRx](https://github.com/neuecc/UniRx)

UniTask:

[https://github.com/Cysharp/UniTask](https://github.com/Cysharp/UniTask)

---

DataTable为了配置修改不再动态生成或修改对应的序列化的类进行全动态的解析。

为了做到通用性解析配置表有一定的规则以Excel操作的配置表为例。

第三行为当前列的数据类型,[bool,int,long,float,double,string,Vector2,Vector3,Color],Vector2示例100,100,Color示例#F0F或者#FF00FF;

实际数据以第五行,第二列开始第二列的数据一定为int类型的唯一识别id

最后用excel导出为Unicode

|#|Id|LevelSort|UIFormId|LevelName|LevelDesc|Leveldubing|IsHide|

|#|int|int|int|string|string|int|bool|

|#|关卡Id|关卡排序|界面编号|关卡名称|关卡描述|配音|是否隐藏|

||20010001|1|300|测试名称|测试说明|2352|false|

||20010002|2|200|测试名称02|测试说明02|23521|false|

使用示例

GameMode.Event.AddListenerLoadDataTableEventArgs(OnLoadDataTable);

//加载DataTable

GameMode.DataTable.LoadDataTable(Assets/Game/DataTable/GameCheckpoint.txt);

//DataTable加载事件回调

Debug.Log($#################################:{ne.Message});

foreach

Debug.Log($-------------------------------------------------------);

TableData

GameMode.DataTable.GetDataTable(Assets/Game/DataTable/GameCheckpoint.txt);

IDataTable是当前配置表的所有数据的集合可使用foreach获取到数据的key值TableData是具体数据存储对象主要支持上述的第三行的基本类型。

####

整个框架以事件作为驱动以达到各个功能之间的解耦效果。

除了可以自定义扩展事件以外框架中还会自带一些事件后面再详细列表。

csharp

GameEventArgsSceneLoadingEventArgs

///

GameFrameworkMode.GetModuleEventManager().AddListenerSceneLoadingEventArgs(OnSceneLoadingCallbak);

取消事件订阅

GameFrameworkMode.GetModuleEventManager().RemoveListenerSceneLoadingEventArgs(OnSceneLoadingCallbak);

csharp

GameFrameworkMode.GetModuleEventManager()

.Trigger(this,

GameFrameworkMode.GetModuleEventManager().TriggerSceneLoadingEventArgs(this);

---

游戏状态是整个项目的核心逻辑建议将所有的逻辑都写再状态之中。

增加状态管理几乎将各个类型的项目的开发都能尽量模式话常用的状态:版本更新状态-配置加载状态-资源预加载-开始游戏-...

增加状态所有的状态都需要继承GameState,并在类名上添加类标记[GameState]

csharp

[GameState(GameStateType.Normal)]

[GameState(GameStateType.Ignore)]

[GameState(GameStateType.Start)]

csharp

GameFrameworkMode.GetModuleResourceManager().LoadAssetTextAsset(datatable,Assets/TextAssets/test.txt);

//实例化GameObject

GameFrameworkMode.GetModuleResourceManager().LoadAssetGameObject(player,Assets/Players/player.prefab);

GameObject

GameFrameworkMode.GetModuleResourceManager().LoadAssetBundle(hotfix);

//再加载资源

GameFrameworkMode.GetModuleResourceManager().LoadAssetSync(hotfix,main);

内置对象池

GameFrameworkMode.GetModuleResourceManager().AddPrefab(player,Assets/Prefab/Player.prefab,

new

GameFrameworkMode.GetModuleResourceManager().Spawn(Assets/Prefab/Player.prefab);

销毁对象

GameFrameworkMode.GetModuleResourceManager().Despawn(player);

加载场景,场景只支持异步加载

GameFrameworkMode.GetModuleResourceManager().LoadSceneAsync(mainscene,Assets/Scene/Main.unity);

支持编辑器内资源的直接读取和AssetBundle资源读取两种方式的一键切换避免测试的时候需要重复的打包AssetBundle资源

---

新建ui预设新建ui类继承类UIView,绑定并在类名上标明预设的资源路径

csharp

[UIView(ui,Assets/Prefab/UI/LoadingView.prefab)]

public

System.NotImplementedException();

///

System.NotImplementedException();

///

System.NotImplementedException();

///

System.NotImplementedException();

打开ui

GameFrameworkMode.GetModuleUIManager().PushLoadingUIView();

关闭ui,在看到pushpop的时候就知道UIManager是基于堆栈管理UI的pop自然关闭的是最新打开的界面

csharp

GameFrameworkMode.GetModuleUIManager().Pop();

---

数据节点只用来存储在运行中的数据,用法类似PlayerPrefs

存数据

GameFrameworkMode.GetModuleNodeManager().SetInt(Level,

10);

GameFrameworkMode.GetModuleNodeManager().GetInt(Level);

---

网页请求目前主要包含读取http上的文本文件和下载http服务器上的资源到本地两大功能

请求文本

GameFrameworkMode.GetModuleWebRequestManager().RequestText(http://nothing.com/AssetVersion.txt);

请求下载

GameFrameworkMode.GetModuleEventManager().AddListenerHttpReadTextSuccessEventArgs(OnHttpReadTextSuccess);

//文本请求失败

GameFrameworkMode.GetModuleEventManager().AddListenerHttpReadTextFaileEventArgs(OnHttpReadTextFaile);

//文件下载成功

GameFrameworkMode.GetModuleEventManager().AddListenerDownloadSuccessEventArgs(OnDownloadSuccess);

//文件下载失败

GameFrameworkMode.GetModuleEventManager().AddListenerDownloadFaileEventArgs(OnDownloadFaile);

//文件下载进度

GameFrameworkMode.GetModuleEventManager().AddListenerDownloadProgressEventArgs(OnDownloadProgress);

---

统一的声音播放管理支持默认的背景音乐、ui音效、其他音效已经物体绑定的AudioSource多种模式以下以播放ui音效为例

添加ui音效音频

GameFrameworkMode.GetModuleAudioManager().AddUISound(soundclip,Assets/Audio/UI/default.wav);

播放ui音效

GameFrameworkMode.GetModuleAudioManager().PlayUISound(soundclip,Assets/Audio/UI/default.wav);

csharp

GameFrameworkMode.GetModuleAudioManager().StopUISound();

移除ui音效音频

GameFrameworkMode.GetModuleAudioManager().RemoveUISound(Assets/Audio/UI/default.wav);

---

将配置文件中的本地化文件读取语言存为字典保存在LocalizationManager中使用LocalizationText绑定在UGUI的Text组件上。

同时支持动态设置

go.GetComponentLocalizationText().TextGameName;

---

默认封装PlayerPrefs,使用方法类似。

同时添加了SetQualitySetAllSoundVolumeSetBackgroundMusicVolumeSetUISoundVolumeSetSoundEffectVolume等默认的设置

具体使用GameFrameworkMode.GetModuleSettingMangaer()一目了然

---

正在增加中首先会封装局域网内的连接通信互联网后面增加。

目前使用kcp将udp转为可靠传输传输协议使用Protobuf

---

打包工具兼容unity自身右下角的assetbundle的标签设计

打包当前平台Tools/Build

工具栏AddressableMenu/...,一键打包一键增量打包

工具栏Tools/Asset

2020.3.33(任意后缀子版本如f1、f1c1、f1c2都可以)

版本**2019.4.x、2020.3.x、2021.3.x系列都可以但为了避免新手无谓的出错尽量使用2020.3.33版本来体验。

目录介绍

Packages/com.focus-creative-games/hybridclr_unity

为HybridCLR

HybridCLR为c实现只有打包后才可使用。

日常开发在编辑器下无需打包。

[快速开始](https://focus-creative-games.github.io/hybridclr/start_up/)。

运行流程

进入场景后Main场景中的LoadDll会按顺序加载StreamingAssets目录下common

AssetBundle里的Assembly-Csharp.dll。

接着运行App::Main函数。

体验热更新

根据你所使用的Unity年度版本**还需要额外**安装2019.4.40、2020.3.33或者2021.3.1版本必须包含il2cpp模块不限

**再次提醒**

组件。

如果未安装请自行在UnityHub中安装。

新手自行google或百度。

visual

2021版本2019、2020不需要打包iOS平台的开发者由于HybridCLR需要裁减后的AOT

dll但Unity

Editor未提供公开接口可以复制出target为iOS时的AOT

dll故必须使用修改后的UnityEditor.CoreModule.dll覆盖Unity自带的相应文件。

具体操作为将

HybridCLRData/ModifiedUnityAssemblies/2021.3.1/UnityEditor.CoreModule-{Win,Mac}.dll

{Editor安装有可能因为操作系统或者Unity版本而有不同。

每个Unity小版本都不相同我们目前暂时只提供了2021.3.1版本如需其他版本请自己手动制作详情请见

[修改UnityEditor.CoreModule.dll](https://focus-creative-games.github.io/hybridclr/modify_unity_dll/)

Unity

为了支持2019需要修改il2cpp生成的源码因此我们修改了2019版本的il2cpp.exe工具。

故Installer的安装过程多了一个额外步骤将

{package}/Data/ModifiedUnityAssemblies/2019.4.40/Unity.IL2CPP.dll

复制到

{package}/Data/LocalIl2CppData/il2cpp/build/deploy/net471/Unity.IL2CPP.dll

###

确保[com.focus-creative-games.hybridclr_unity](https://github.com/focus-creative-games/hybridclr_unity)

package已经正确安装**

为了使用HybridCLR需要安装hybridclr_unity插件。

[install

git](https://docs.unity3d.com/Manual/upm-ui-giturl.html)。

[com.focus-creative-games.hybridclr_unity](https://github.com/focus-creative-games/hybridclr_unity)

clone或者下载到本地然后再

disk](https://docs.unity3d.com/Manual/upm-ui-local.html)

目前需要几个配置文件

HybridCLRGlobalSettings.asset**

Unity

Definition形式存在的热更新模块。

不能与下面的Hotfix

HotUpdate

以dll形式存在的热更新模块。

不能与HotUpdateAssmblyDefinitions重复指定模块。

HotUpdateAssemblyManifest.asset**

###

[快速上手](https://focus-creative-games.github.io/hybridclr/start_up/)

点击菜单

如果安装界面没有错误或者警告则说明il2cpp路径设置正常否则需要你手动选择正确的il2cpp目录

install

**请确保你已经掌握了常规的il2cpp为backend的打包过程**

**请确保你已经在你电脑上对于一个未使用HybrildCLR的项目成功打包出il2cpp为backend的相应包**也就是打包环境是正常的

打包前需要先在

运行Release_Win64/HybridCLRTrial.exe会看到打出

hello,

HybridCLR/BuildBundles/Win64重新生成ab

将StreamingAssets下的ab包复制到Release_Win64\HybridCLRTrial_Data\StreamingAssets。

###

MonoPInvokeCallbackAttribute的预留桩函数

GenerateAll



SEO优化服务概述

作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。

百度官方合作伙伴 白帽SEO技术 数据驱动优化 效果长期稳定

SEO优化核心服务

网站技术SEO

  • 网站结构优化 - 提升网站爬虫可访问性
  • 页面速度优化 - 缩短加载时间,提高用户体验
  • 移动端适配 - 确保移动设备友好性
  • HTTPS安全协议 - 提升网站安全性与信任度
  • 结构化数据标记 - 增强搜索结果显示效果

内容优化服务

  • 关键词研究与布局 - 精准定位目标关键词
  • 高质量内容创作 - 原创、专业、有价值的内容
  • Meta标签优化 - 提升点击率和相关性
  • 内容更新策略 - 保持网站内容新鲜度
  • 多媒体内容优化 - 图片、视频SEO优化

外链建设策略

  • 高质量外链获取 - 权威网站链接建设
  • 品牌提及监控 - 追踪品牌在线曝光
  • 行业目录提交 - 提升网站基础权威
  • 社交媒体整合 - 增强内容传播力
  • 链接质量分析 - 避免低质量链接风险

SEO服务方案对比

服务项目 基础套餐 标准套餐 高级定制
关键词优化数量 10-20个核心词 30-50个核心词+长尾词 80-150个全方位覆盖
内容优化 基础页面优化 全站内容优化+每月5篇原创 个性化内容策略+每月15篇原创
技术SEO 基本技术检查 全面技术优化+移动适配 深度技术重构+性能优化
外链建设 每月5-10条 每月20-30条高质量外链 每月50+条多渠道外链
数据报告 月度基础报告 双周详细报告+分析 每周深度报告+策略调整
效果保障 3-6个月见效 2-4个月见效 1-3个月快速见效

SEO优化实施流程

我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:

1

网站诊断分析

全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。

2

关键词策略制定

基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。

3

技术优化实施

解决网站技术问题,优化网站结构,提升页面速度和移动端体验。

4

内容优化建设

创作高质量原创内容,优化现有页面,建立内容更新机制。

5

外链建设推广

获取高质量外部链接,建立品牌在线影响力,提升网站权威度。

6

数据监控调整

持续监控排名、流量和转化数据,根据效果调整优化策略。

SEO优化常见问题

SEO优化一般需要多长时间才能看到效果?
SEO是一个渐进的过程,通常需要3-6个月才能看到明显效果。具体时间取决于网站现状、竞争程度和优化强度。我们的标准套餐一般在2-4个月内开始显现效果,高级定制方案可能在1-3个月内就能看到初步成果。
你们使用白帽SEO技术还是黑帽技术?
我们始终坚持使用白帽SEO技术,遵循搜索引擎的官方指南。我们的优化策略注重长期效果和可持续性,绝不使用任何可能导致网站被惩罚的违规手段。作为百度官方合作伙伴,我们承诺提供安全、合规的SEO服务。
SEO优化后效果能持续多久?
通过我们的白帽SEO策略获得的排名和流量具有长期稳定性。一旦网站达到理想排名,只需适当的维护和更新,效果可以持续数年。我们提供优化后维护服务,确保您的网站长期保持竞争优势。
你们提供SEO优化效果保障吗?
我们提供基于数据的SEO效果承诺。根据服务套餐不同,我们承诺在约定时间内将核心关键词优化到指定排名位置,或实现约定的自然流量增长目标。所有承诺都会在服务合同中明确约定,并提供详细的KPI衡量标准。

SEO优化效果数据

基于我们服务的客户数据统计,平均优化效果如下:

+85%
自然搜索流量提升
+120%
关键词排名数量
+60%
网站转化率提升
3-6月
平均见效周期

行业案例 - 制造业

  • 优化前:日均自然流量120,核心词无排名
  • 优化6个月后:日均自然流量950,15个核心词首页排名
  • 效果提升:流量增长692%,询盘量增加320%

行业案例 - 电商

  • 优化前:月均自然订单50单,转化率1.2%
  • 优化4个月后:月均自然订单210单,转化率2.8%
  • 效果提升:订单增长320%,转化率提升133%

行业案例 - 教育

  • 优化前:月均咨询量35个,主要依赖付费广告
  • 优化5个月后:月均咨询量180个,自然流量占比65%
  • 效果提升:咨询量增长414%,营销成本降低57%

为什么选择我们的SEO服务

专业团队

  • 10年以上SEO经验专家带队
  • 百度、Google认证工程师
  • 内容创作、技术开发、数据分析多领域团队
  • 持续培训保持技术领先

数据驱动

  • 自主研发SEO分析工具
  • 实时排名监控系统
  • 竞争对手深度分析
  • 效果可视化报告

透明合作

  • 清晰的服务内容和价格
  • 定期进展汇报和沟通
  • 效果数据实时可查
  • 灵活的合同条款

我们的SEO服务理念

我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。

提交需求或反馈

Demand feedback