开发者社区> 问答> 正文

回合制RPG页游《烽烟OL》客户端源码 SDK4.0 升级4.5 or 4.6 报错解决方案?报错

据说《烽烟OL》客户端源码由于当初开发时间紧迫所以才用了Flex SDK 4.0,感谢@9秒-大鸡蛋 他们团队的分享!


在提升版本前,一定要先把html-template目录里面的:
1. assets 目录;
2. config 目录;
3. res 目录;
4. gsConf.js 文件;
5. gsGame.js 文件;
6. keepFrameRate.js 文件
备份好,在更改Flex SDK后,html-templete目录会被重置,上面提到的6个东西会被删掉。


切记~~切记~~~


废话不说,直接上解决方案:

1. JSON冲突的问题:

有两个类使用了 com.adobe.serialization.json.JSON 导致报错,请修改如下:
1)sceneModule.rcommon.RLoadHelper
      删除 import com.adobe.serialization.json.JSON,大概在22行;
      修改 jsonObj = JSON.decode(jsonStr); 或 jsonObj = JSON(jsonStr); 这样的语句为:jsonObj = JSON.parse(jsonStr);,大概在293行,303行,418行和943行;
      搞定。
2)util.Logging
      删除 import com.adobe.serialization.json.JSON;
      修改 return JSON.encode(o); 为: return JSON.stringify(o);
      搞定。

2. css嵌入资源的问题:

    请无视报错的 global_css.css 和 textFormat_css.css,这两个问题报错是因为别的问题导致。

3. Skin皮肤类缺少必要的 state,主要针对 spark.components.TextInput 和 spark.components.TextArea 的子类
    
    在Skin类里面找到这样的代码:

  1.          <s:states>
  2.                 <s:State name="normal"/>
  3.                 <s:State name="disabled"/>
  4.         </s:states>
复制代码
修改为:

  1.         <s:states>
  2.                 <s:State name="normal"/>
  3.                 <s:State name="disabled"/>
  4.                 <s:State name="normalWithPrompt"/>
  5.                 <s:State name="disabledWithPrompt"/>
  6.         </s:states>
复制代码
这些类有(都在 style 包下面):
   1. Skin_CrotaBasicTextArea
   2. Skin_CrotaTextInput1
   3. Skin_CrotaChatTextInput
   4. Skin_CrotaChatTextLoginbar
   5. Skin_CrotaBasicShowInfoTextArea

   注:可能有遗漏的Skin类,请按照上述方法修改,编译后搞定。

如果您按照上面的方法修改了,基本上可以恭喜您成功的占有了它。
如果您按照上面的方法修改后,并且编译后,没有成功,请直接回帖,我们会以最快的速度帮您解决。

PS: 提供修改连接服务器方法:
请修改html-template->config->ServerConfig.xml文件(大鸡蛋他们做的很好,注释很全,一看就明白了)
      

展开
收起
爱吃鱼的程序员 2020-06-22 15:38:03 963 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    然后呢?没下文了?<atarget='_blank'>@bundles发给你地址了<arel='nofollow'target='_blank'>http://www.9miao.com/forum-14-1.html<atarget='_blank'>@bundles<arel='nofollow'target='_blank'>http://www.9miao.com/forum-14-1.html回复<aclass='referer'target='_blank'>@大鸡蛋:下载地址在哪.呵呵,你可以下载个跑跑啊:)<spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">请问下烽烟OL的客户端我也是升级到了sdk4.6。
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">但用flashdevelop编译的时候。总这个warnig:
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">警告:WebClientisamoduleorapplicationthatisdirectlyreferenced.ThiswillcauseWebClientandallofitsdependenciestobelinkedinwithsceneModule:SceneModule.Usinganinterfaceistherecommendedpracticetoavoidthis.

    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">然后在debugplayer里面就直接报错了:
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">VerifyError:Error#1053:在mx.core.Container中非法覆盖invalidateLayoutDirection。

    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atflash.display::MovieClip/nextFrame()
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atmx.managers::SystemManager/deferredNextFrame()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:278]
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atmx.managers::SystemManager/preloader_preloaderDocFrameReadyHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:2627]
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atflash.events::EventDispatcher/dispatchEventFunction()
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atflash.events::EventDispatcher/dispatchEvent()
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atmx.preloaders:<imgsrc="http://static.oschina.net/uploads/img/201506/17164032_lSZN.gif"alt=""><spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">reloader/timerHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\preloaders\Preloader.as:515]
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atflash.utils::Timer/_timerDispatch()
    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">    atflash.utils::Timer/tick()

    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">请问这是什么问题?

    <spanstyle="color:#939EAD;font-family:'MicrosoftYahei';font-size:14px;line-height:21px;background-color:#FFFFFF;">1.7版本客户端编译有问题的。

    2020-06-22 15:38:21
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
从 SDK 到编解码:视频直播架构解析 立即下载
跨平台的云服务SDK需要什么 立即下载
一个跨平台的云服务SDK需要什么 立即下载