那些年我们踩过的RN坑——IOS篇

30164705dq1b.jpg

万事开头坑,然后一路坑。。。
现在进入RN踩坑的新篇章——ios
1.ld: library not found for -lRCTOrientation
模块找不到,然后。。。
如下图解决:

DingTalk20161213153035.png

2.IOS 网络请求失败
默认RN只支持https,使用http请求必须使用hack技术,更改Info.plist文件。参考:https://segmentfault.com/a/1190000002933776
在Info.plist中添加NSAppTransportSecurity类型Dictionary。
在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES
看到很多同学修改后还是不能用添加一下截图:
在Filter中搜索Info.plist,选择Info.plist进行编辑:

![Uploading B4FC24E8-676D-4225-832E-CD502C1A03CF_079985.jpg . . .]

按照上面提到的方式添加信息,正确的修改会看到下图这个样子,注意类型NSAppTransportSecurity为Dictionary,NSAllowsArbitraryLoads为Boolean,复制粘贴的时候,不要多了空格,segment fault 页面上直接复制,经常会多一个出空格!
[图片上传中。。。(3)]


B4FC24E8-676D-4225-832E-CD502C1A03CF.jpg

3.注意️,单元测试下面也有一个Info.plist,修改那个文件是没有作用的!
补充说明
上面介绍的方法虽然解决了网络访问的问题,但是苹果提供的安全保障也被关闭了。
不过,按照国内的现状,关闭这个限制也许是更实际的做法。
至于原因就太多了,第三方SDK(几乎都是访问HTTP),合作伙伴接入(不能要求它们一定要支持HTTPS)。
如果你的App没有受到这些原因的限制,还是更建议你增加HTTPS支持,而不是关闭限制。
请大家根据项目的实际情况作调整。
出于安全考虑我们提倡使用HTTPS,退而求其次,优先考虑使用例外:将允许访问的域加入到配置列表中
@banxi1988补充了配置的方法
对于实在不支持HTTPS的应该首先考虑添加例外
添加例外的方式也很简单:
左键Info.plist选择open with source code
然后添加类似如下的配置:

<key>NSAppTransportSecurity</key>
 <dict>
 <key>NSExceptionDomains</key>
 <dict>
 <key>qq.com</key>
 <dict>
 <key>NSIncludesSubdomains</key>
 <true/>
 </dict>
 <key>sina.com.cn</key>
 <dict>
 <key>NSIncludesSubdomains</key>
 <true/>
 </dict>
 </dict>
 </dict>

根据自己需要的域名修改, NSIncludeSubdomains 顾名思义是包括子域的意思。

4.Picker组件选项的默认高度需通过picker的itemStyle来设置,参考:http://blog.csdn.net/codetomylaw/article/details/53019541

5.IOS真机运行:http://www.jianshu.com/p/75eb44ccd4f0

DingTalk20161227115620 2.png
DingTalk20161227115620 2.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 10,032评论 0 12
  • 热更新:https://github.com/crazycodeboy/RNStudyNotes/https://...
    安静的猫null阅读 11,912评论 1 7
  • iOS 10 适配 ATS 一. HTTPS 其实HTTPS从最终的数据解析的角度,与HTTP没有任何的区别,HT...
    made_China阅读 5,636评论 0 12
  • 新人打卡第二天.这是临摹二亭姐姐的有趣的驴,用了两个半小时,感觉还是有点怪怪的。继续努力,哈哈,画画的时候时间过的...
    糖宝宝803阅读 2,875评论 4 3
  • 喜欢一件事情,就豁出一切去做。喜欢一个人,就尽心尽力去爱。极致纯粹,干净利落,从来不喜欢拖泥带水。 最不善于改变,...
    伶寒阅读 4,204评论 2 2