网站建设资讯

NEWS

网站建设资讯

ios开发配置,iOS开发配置表单

FFmpeg iOS开发配置和格式转换

集成方法这篇文章写得非常详细了,我就不再赘述。

十余年专注成都网站制作,成都定制网站,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于成都定制网站,高端网页制作,对成都发电机维修等多个方面,拥有丰富的营销推广经验。

有一点差异的地方,该文章集成后使用的是OC进行调用,我使用的是C语言,这样可以方便跨平台。因为FFmpeg本身是C语言的,我先用C封装成工具类,这样不依赖平台,上层用什么语言调都行。

这里实现一个简单的FFmpeg命令行格式转换功能。

新建my_test.c和头文件,在这个头文件里导入 #import "fftools/ffmpeg.h" ,因为ffmpeg.h头文件里导入了所有的模块,就不需要外面一个个导入了。

然后新建一个Demo-Bridging-Header.h头文件,导入上面创建的my_test.h的头文件

添加到工程配置里,这样就可以在Swift里调用了

要在Swift里使用C库,就要把文件路径传给C,接收C返回的结果。Swift里面的字符串是String,C里面一般是char*,它们之间相互转换方法如下(转换都是在Swift里进行的)。

在my_test.c里添加调用FFmpeg命令行的方法,上层直接传入完整的FFmpeg命令行str,用空格进行字符串分割后转换成字符串数组char *argv[50],调用ffmpeg_main方法处理。

将命令行cmd转换成UnsafeMutablePointerCChar后,直接调用C里面的do_cmd方法即可。

点击按钮,从手机相册里选一张gif动图,转换成mp4视频,保存到相册。

有两个小问题:

用来做iOS开发,需要什么样的配置

iOS开发环境:笔记本一台(最好Macpro 高配),iPhone手机一台(用于真机测试,开发工具里面也有模拟器可用)

有一定的自学能力和自控能力,有一套完整的教程资料(codingke上有iOS的完整教程),熟练使用stackoverflower,segmentfault等站点解决技术性的问题,自学起来难度不会太大。

反之,自学能力和自控能力弱一些,容易受环境影响,还是报个培训班学习吧,身边的同学都在努力学习,也可以带动自己的学习热情。

iOS开发多环境配置的方法

在做公司项目的时候,我们经常碰到多个开发环境的问题,比如内网环境,联调环境,外网环境等,这时候根据不同的环境,可能会设置不同的域名,但是每次切换起来比较麻烦。这时候,我们可以修改 Xcode 的配置,来达到切换环境的目的。首先我们先来了解一下 Xcode 相关的配置的具体含义:

1、创建新的 Target (如下图):

1、添加 Scheme (如下图),这时候我们就会发现,项目所有的配置中,都会多了一个 Beta 的配置,

1、跟创建普通的类文件一样,创建两个 xcconfig 文件,分别为 Debug 和 Release 对应的版本,并且设置不同的域名

iOS开发-iCloud环境配置及使用

配置iCloud,首先你就先要有一个真实的苹果开发者账号,没错,就是一年688的那个。开通了之后,在Xcode中新建一个项目。然后在 TARGETS - Capabilities - iCloud 中打开开关就可以了。

就像这样,是不是很简单啊。

诶,可是好像有什么地方不对,有些地方爆红了。

这是因为我们还没有给这个App ID 注册,所以接下来我们去苹果的 开发者官网 添加一个App ID,在添加的时候勾选 iCloud 服务就可以啦。

什么?你说你已经创建过App ID了???没关系,在管理App ID这边选择 Edit ,然后在勾选 iCloud 也是一样的。

这时候回到Xcode中在看一下,应该就已经没有爆红了吧。

什么???还有爆红??? 那你重启一下XCode试试吧。再不行,你重启一下电脑试试好了。

在Xcode中 iCloud 下边一共有三个可以勾选的服务,其中第一个就是 key-value storage ,这个也是最简单的 iCloud 使用方法了,他跟 NSUserDefaults 的使用方法基本一样,都是以键值对的方式存储数据。只不过处理iCloud的类为 NSUbiquitousKeyValueStore 。

存储数据的方式很简单,只要使用 setObject:forkey: 之后,使用 synchronize 同步一下就可以了。

获取数据的方式也一样,是要使用 objectForKey 就可以了。

看一下 NSUbiquitousKeyValueStore 的头文件,我们发现他还有一个通知消息

注册这个通知,就可以在数据修改的时候接收到通知,然后做对应的处理。最好的验证方法就是在存储了数据之后直接删除掉这个app,然后再次安装,这个时候就会触发该通知。

先放一下demo的[ 地址 。

以上就是关于配置iCloud和key-value存储的简单使用,后边我们再看看其他两种服务是怎么样使用的。

相较于key-value的存储类型,Documents是用来管理一些比较大的文件,比如用户创建的文档等等。

在我们打开iCloud选项的时候,系统就是自动为我们添加一个 xxx.entitlements 的文件,这个东西用来保证应用的安全性,确保只有你的应用才能访问你自己创建的文档,系统也是依赖于他来区分用户的iCloud账户中每个应用的文档。

查看这个 xxx.entitlements 我们会发现在他里边有这样的一个key Ubiquity Container Identifiers ,对应的value为 iCloud.$(CFBundleIdentifier) 。其实这个 $(CFBundleIdentifier) 就代表这你的APP ID。所以也可以看成是 iCloud.com.zzr.ZZRiCloudDemo 。

NSFileManager 主要是对文件的操作,我们用它来获取iCloud的存储地址。

根据我们的entitlements,通过 NSFileManager 就可以获得iCloud的存储地址,在获取地址之后,我们要先判断一下获取的地址是否为空,如果这个地址为空,则说明用户的iCloud暂时不可用,接下来一切的操作都没办法进行下去。

UIDocument 主要是用于对文件内容的操作。

其实获取了文件的地址之后,我们已经可以直接对文件进行操作了,但是官方还是让我们通过 UIDocument 来操作,因为当我们在对iCloud进行操作的时候,不止是只有我们自己对他进行操作, iCloud daemon 也会对iCloud操作,用 UIDocument 操作能够保证存取安全。

在使用 UIDocument 之前,我们新建一个类,继承于 UIDocument ,并且重写两个方法:

NSMetadataQuery 主要用来查询数据。

有了之前的准备工作,创建一个文档就非常简单了,只要创建好我们要保存的文件,通过

就可以将文档上传到iCloud中了。

我们以一个txt文件作为示范。

修改文档,其实就是重写文档,就是将上边创建文档中的 UIDocumentSaveForCreating 改为 UIDocumentSaveForOverwriting 。

删除文档其实就是通过之前的地址获取到文件,然后调用remove方法即可。

之前讲了增加、删除、修改,好像增删改查中只剩下查询这个方法没有介绍了。查询和前边几个有点不同,他需要用到 NSMetadataQuery 。

直接调用 startQuery 开始查询,iCloud就已经开始帮我们查询了,查询好之后,iCloud会通过通知来告诉我们查询到了东西。

所以我们注册两个通知

并相应他们

其中

就是查询到的内容的数组,遍历他,就可以获取到对应目录下的全部文件了。

先放一下demo的 地址 。

demo简单的制作了一个text文档的存储功能,一些交互没有完善,但是基本的增删改查功能都已经实现了。

以上就是 iCloud Document 的简单使用。此文章仅供个人学习使用,如有不当,希望大佬指出。

iOS开发需要哪些设备

ios开发硬件配置环境

工具:使用到 Xcode 和 iOS SDK(Apple 提供的开发工具)。

硬件配置:

首先有一台Mac电脑,然后有一个iDevice——iPhone、iPad、iPod Touch均可,最好拥有以上三者,以便适配和测试。

软件设置:

在开发应用程序时,会使用到 iOS 软件开发套件 (SDK) 以及 Xcode,即 Apple 的集成开发环境 (IDE)。

Xcode 包括源代码编辑器、图形用户界面编辑器及其他许多功能,为您开发完美的 iPhone、iPod touch 和 iPad 应用程序,提供了所需要的全部资源。

应用程序开发工具集中显示在一个窗口中,Xcode 称之为工作区窗口。在此窗口内,可以顺畅地从代码编写转换到代码调试,再到用户界面设计。

iOS SDK 扩展了 Xcode 工具集,包含 iOS 专用的工具、编译器和框架。

其他

无需加入该计划也可编写应用程序并在 iOS Simulator 中测试。只有加入该计划,才能在设备上测试与分发应用程序,还可以全权访问 iOS Dev Center 和 iOS Provisioning Portal。


网页标题:ios开发配置,iOS开发配置表单
分享链接:http://njwzjz.com/article/phshpi.html