IOS 9 于17号早上正式开始推送,早上起来立马安装,这次升级包只有1G,
安装空间也大大降低(想起IOS 8 升级时,几乎把手机里面的东西删光了,满眼都是泪)。
虽然安装后,网上几乎是铺天盖地的吐槽,但是如果不安装的话,拿什么吐呢?:)
回到正题,既然IOS 9出来了,那么前几天刚出来的delphi 10 会怎么想?是支持呢,还是不支持?
昨天晚上把所有的准备条件搞好(xcode7+ios 9 SDK).
把以前的几个程序重新编译发布,基本上没有问题,可以正常运行。以为大事已定。突然发现
原来一个使用webbrowser调用百度地图的app不能显示地图了。
打开调试工具(谢天谢地,Delphi 10 支持ios64 调试了 ,虽然是个半成品),运行时出现了下面的提示。
大概说的就是ios9阻止了使用明文传输的http. 怎么回事呢?
打开度娘,查了一下,原来确实是真的。
有兴趣的话,可以看一下。
文中也给了解决办法。
就是在Info.plist 里面加一段话。
<key>NSAppTransportSecurity</key><dict> <key>NSAllowsArbitraryLoads</key> <true/></dict>
问题来了,在delphi 10 里面如何加这个呢? 让我们回到delphi 10 里面,打开发布管理器。
可以看见,delphi 为这个工程自动建立了一个 工程名+.info.plist 文件,并要发布到手机里面, 文件的名字叫Info.plist现在到这个目录下,找到这个文件,拷贝到其它目录。用文本编辑器打开,加上上面的语句,如图:
保存。回到发布管理器
点增加按钮,选择新保存的文件。并把老的文件勾选去掉,如图
OK. 现在重新编译运行,问题解决了。 注意,由于每次对工程文件的修改,都有可能会重新生成新的info.plist 文件,因此修改了工程属性后,需要重新做一下以上的步骤。以便工程的修改生效。下面是工程修改的主要地方。
切记,切记。
时间: 2024-10-20 15:40:07