资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

ios开发cocoa,IOS开发工程师

Cocoapods,让iOS开发更简单(三):实践经验汇总

相信各位读了之前的两篇文章,对pods的使用已经相当熟练了。不过在纷繁复杂的实际使用场景下,可能还是会遇到一些问题。本文就结合自己的实践经验,做一些快问快答,希望大家能多多补充交流。话不多说,那我们就即刻开始吧!

创新互联建站专注于润州企业网站建设,响应式网站建设,商城网站建设。润州网站建设公司,为润州等地区提供建站服务。全流程按需网站开发,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

pod系列文章

Cocoapods,让iOS开发更简单(一):走近Cocoapods

Cocoapods,让iOS开发更简单(二):创建私有库

Cocoapods,让iOS开发更简单(三):实践经验汇总

一文带你快速分清静态库-动态库-Framework

一般推荐使用指定版本或范围版本号,以确保依赖的稳定性。

总结 :能用pod install解决问题的,就不要用pod update。因为pod update会把依赖库全部检查一遍,不仅慢有时候还会出现坑。

忽略Pods警告,有些第三方Pod集成进来会有一大堆警告信息,在Podfile中对应的target或分组下加上关键字inhibit_all_warnings!就可以把警告忽略。

作用:

在pods中用frameworks替代.a静态库。

场景:

swift项目pods默认开启(use_frameworks!),OC项目pods默认关闭(#use_frameworks!),同时需满足以下两点,

解析:

swift工程依赖了OC工程的话,需要use_modular_headers!

示例:

为某个 Pods 使用模块化标头,可以使用以下语法:

pod 'TestPodLib', :modular_headers = true

另外,当全局使用 use_modular_headers! 属性时,同时还可以使用以下方法从模块化标头中排除特定的Pod:

pod 'TestPodLib', :modular_headers = false

版本格式:主版本号.次版本号.修订号,版本号递增规则如下:

常用的方式调用pod中的素材是不生效的,因为默认是从mainBundle中读取的,如

打在pod中的素材已经不在mainBundle中而在对应组件下的bundle 里面,所以应该这么调用:

在用CocoaPods集成第三方库之后,默认情况下,使用类似#import XXX/YYY.h的方式引入第三方库的头文件。

pod search只会搜索本地缓存的库,如果想搜索到最新的第三方框架或者某个框架的最新版本,必须先使用pod repo update。

iOS开发:SDK依赖第三方库及其踩过的坑

公司开发的SDK,是集成了各个平台的商品,包括购买、分享、提现等功能,为了加快进度,我是使用了一些第三方。但是有些需求,比如分享到微信朋友圈或者还有,必须用到微信的SDK。考虑到后期的维护成本和集成,笔者采用了cocoapods管理第三方库。

笔者有片文章专门介绍SDK的开发步骤的,大家可以参考,我这里就直接进入主题了。

首先,你创建一个静态的framework工程MyTestSDK,把这个工程集成cocpapods,至于如何集成cocpapods,网上有教程,自己搜索。这个时候把你项目中所用的第三方库添加到Podfile文件中,然后 pod install。这个时候你command + B 编译运行,如果你的第三方库中还有Bundle资源,那么编译后,第三方库的bundle资源会被编译,一起放到Products文件下的framework文件中,右键Show in Finder就会看到。如下图所示的MBProgressHUD文件夹,里面都是MBProgressHUD第三方的资源文件。

然后把你的项目放入SDK工程中,编译运行一下,看看有没有错误。之所以先把SDK工程选用cocoapods管理,就是怕你的项目放入SDK中运行报错。没有任何问题,直接编译即可。

由于SDK中的第三方是通过cocoapods管理的,所以接入者的项目也要用cocoapods管理。

1:把SDK工程中,Products文件夹下的framework文件copy到项目中,最好项目中建立一个文件夹,专门放SDK和bundle。我是放到了一个文件夹中,方便分类寻找。如下图所示:

2:打开终端,cd到SDK所在的文件夹下,执行如下命令,回车,创建spec文件。

其中,MyTestSDK是你的SDK名称。

创建出来的spec文件,是个很长的文件,但是大部分都是注释的,我这里只提取了有用的信息展示出来:

然后把spec中依赖的第三方库,逐个加入到项目中的Podfie文件中。然后 终端打开,cd到自己的项目中,pod install即可。

本人亲自测试过的,No Problem。当初感觉SDK如果依赖了第三方库,接入的项目中也有同样的第三方库,会不会冲突啊,感觉好难搞啊。事实证明,通过spec进行依赖,可以很好的解决这个问题,也就没有那么麻烦了。

首次开发SDK还是遇到了很多问题,运行出现很多bug,但是最后还是一一解决了,就是没有记录下bug和解决发的方法。

1;path路径不对,就会报错 ,如下

是因为我把路径写成了:

其实正确的写法是:把“/”放在前面

2:SDK中有第三方,但是项目中的Podfile里面没有这个第三方,报错如下所示:

解决办法是就是在项目中的 Podfile里面加入缺失的第三方库,重新 pod install。

ios游戏开发需要哪些知识

基础是要过关的,oop、多线程、db、基本算法或数据结构是必须的。

还要熟练掌握Objective-C语言,C/C++语言;3.熟悉Cocoa开发框架,包括UI、网络等方面,熟悉IOS开发工具和相关开发测试工具的使用,掌握常用的数据结构与常用算法,较好的逻辑思维分析和表达和沟通能力,要有一定的自学能力,较强的团队协作意识。

更多关于ios游戏开发需要哪些知识,进入:查看更多内容


分享标题:ios开发cocoa,IOS开发工程师
分享网址:http://cdkjz.cn/article/dscdidj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220