KBMMW 中 IOS IPv6 的解决

自从今年苹果强制新上架的APP 必须支持Ipv6,很多原来需要网络支持的APP 就没法上架了。

别的我们就不说了,先说说kbmmw 中,如何解决这个问题。

要测试你的app 是否支持ipv6, 首先要搭建IPv6 的测试环境,最简单的方法就是利用mac 来生成一个

共享的虚拟Ipv6 网络。具体搭建的方法参考此篇博文:

http://www.cocoachina.com/ios/20160525/16431.html

剩下的就是在你的APP 里面,是否可以通过这个网络访问远程服务器?如果没问题,就OK 了。

由于使用IPv6 访问远程服务器,那么就不能使用IPv4 的IP 地址访问服务器了,因此不管你的服务器运行在

什么环境下,请使用域名访问远程服务器!

Kbmmw 的的默认网络访问组件式indy.其实D10.1 带的Indy是支持IPv6 的。但是kbmmw 封装客户端Indy

时却没有考虑IPv6,导致了默认无法支持IPv6. 那么我们要解决的就是让TkbmMWTCPIPIndyClientTransport

支持IPv6.

我们来修改一下TkbmMWTCPIPIndyClientTransport 的父类及对应的函数。

当然还有其他一些对应部分的修改。

修改完后。kbmmw 客户端 就可以支持IOS 上通过Ipv6 访问了。

使用 IPv4 访问,表示无法连接

使用IPv6,正常访问

OK. 就是这么简单。

另外,多说两句:

1、使用httpsys 做为传输方式的同学,不用担心。

httpsys 可以不做任何修改就可以支持IOS 的IPv6 :)。

2、使用RTC 的同学,目前RTC 在IOS 的IPv6 暂时不行,作者准备

单独为IOS 实现IPv6.时间未定 。

时间: 2024-10-06 03:33:12

KBMMW 中 IOS IPv6 的解决的相关文章

IOS常见错误分析解决(一直更新) 你值得收藏-综合贴

-来自收藏总结 综合了好多的常见错误 1:clang failed with exit code 254 一:检测代码中 是否 有 NSLog 打印了 返回 void 的值. 2:Verify exit code of build task with internal identifier 'CopyPNGFile 123.png' 一:将出错的png,用PhotoShop重新转换一次,  如果PhotoShop打不开,改后缀为Jpg 试试. 转换时,请使用 :存储为Web或设备所使用的格式格式

在UNC(通用命名规范)路径和URL中使用IPv6地址

转自:http://www.ipv6bbs.cn/thread-348-1-1.html   虽然微软在支持IPv6上表现得很积极,但Windows却并没有完整地支持IPv6,例如,在Windows中,我们以往可以使用UNC(通用命 名约定)访问网络共享文件夹(如\\127.0.0.1\C$),但现在却不能使用IPv6这样做,因为Windows看到IPv6地址中的冒号时,它会 把它当做驱动器盘符对待. 为了解决这个问题,微软为IPv6地址转换建立了一个特殊的域,如果你在UNC路径中使用IPv6地

XCode 无法识别 iOS 设备的解决办法

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 现象: 如下图,左边的设备上,显示为黄点,而非绿点: 解析: 无法识别设备,有几种情况,其中一种最简单的是,在右侧直接点击按钮,用作开发即可: 再

在指定时间干,必须干(kbmmw 中的事件调度)

从去年开始,kbmmw 慢慢增加内涵,除了完善各种服务外,陆续增加和扩展了作为一个中间件必须有的功能, 例如,权限管理.日志系统.调度系统.内存调试等功能. 今天给大家介绍一下kbmmw 的调度事件,调度事件的主要目标就是”在指定时间干,必须干“,不是“爱干”,是“必须干” :). 在传统的delphi 中事件调度室通过两种方式,一种方式通过Ttimer 来实现,(我20年做的母校的食堂餐饮消费系统就是通过Ttimer来轮询 POS 机的).另外一种就是通过扩展Tthread 线程类,通过后台完

在Windows Server 2008 R2中禁用 IPv6

在本地连接属性中取消IPv6后,还应修改如***册表项: 找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\, 新建DWORD32位DisabledComponents键,值为十六 进制ffffffff,然后重启.

项目记录:spring+springmvc 项目中 @Transactional 失效的解决方法

第一步,修改spring的配置文件和springmvc的配置文件 --------------------------------applicationContext.xml <context:annotation-config/>  <context:component-scan base-package="com.xxx"> <context:exclude-filter type="annotation" expression=&

android ListView中CheckBox错位的解决

貌似已经很晚了,但是还是想记下笔记,想让今天完满. 在ListView中加了checkBox,可是发现点击改变其选中状态的时候,发现其位置错乱.状态改变的并不是你选中的,百思不得其解.后面通过上网查资料,可是个说纷纭,但是我还是找到了解决办法. 在自定义的适配器中,对checkBox的设置如下: 记住两者的顺序,先对checkBox进行事件监听,再设置其状态.前提在布局中对checkBox的状态设为false. android ListView中CheckBox错位的解决,布布扣,bubuko.

WCF中的错误及解决办法

一 .    HTTP 无法注册 URL http://+:8000/Users/.进程不具有此命名空间的访问权限今天按照网上的例子开始学习WCF程序,运行的时候却发现出如下问题:HTTP 无法注册 URL http://+:8000/Users/.进程不具有此命名空间的访问权限. 遇到这种问题,先不要慌,看一下错误内容:进程不具备此命名空间的访问权限,说明是访问权限的问题,所以我试着以管理员的身份重新打开了VS,结果就没报这个错 WCF中的错误及解决办法,布布扣,bubuko.com

CUDA程序编译过程中产生警告的解决方法

有时候经常使用别人用Tabhost+其它的实现demo.单纯利用Tabhost该如何使用呢? 下面看例子: public class MainActivity extends TabActivity { public TabHost tabHost; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 获取对象 tabHost = getTabH