热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

iPhone开发(一)HelloWorld初试

从没发现有哪个note软件有Evernote这么出色,不仅可以在win下使用,还可以在mac下使用,使用不同的平台时,根据账

      从没发现有哪个note软件有Evernote这么出色,不仅可以在win下使用,还可以在mac下使用,使用不同的平台时,根据账号,可以导入你以前写的note ,真是一号在手,走遍天下啊!


     好了,开始我的iphone开发入门!

     首先要注册一个Apple ID ,去官网上下载Xcode开发工具,并安装。

 --------------------------------------

iPhone SDK 包含哪些东西?


在使用Intel芯片的Macintosh计算机开发iOS应用程序所需的全部接口、工具以及资源全都包含于iPhone SDK。

苹果公司将大部分系统接口发布在框架这种特殊的数据包。一个框架就是一个目录,它包含一个动态共享库以及使用这个库所需的资源(例如头文件、图像以及帮助应用程序等)。如果要使用某个框架,则需要将其链接到应用程序工程,这一点和使用其他共享库相似。另外,您还需要告知开发工具何处可以找到框架头文件以及其他资源。

除了使用框架,苹果公司还通过标准共享库的形式来发布某些技术。 由于iOS以UNIX为基础,操作系统底层的许多技术都源自开源技术,这些技术的许多接口可以从标准库和接口目录访问。

SDK中还包含下述重要组件:


  • Xcode工具 -提供iOS应用程序开发工具,包括如下关键应用程序:
    • Xcode -是一个集成开发环境,它负责管理应用程序工程。您可以通过它来编辑、编译、运行以及调试代码。Xcode还集成了许多其他工具,它是开发过程中使用到的主要应用程序。
    • Interface Builder -以可视化方式组装用户接口的工具。通过Interface Builder创建出来的接口对象将会保存到某种特定格式的资源文件,并且在运行时加载到应用程序。
    • Instruments - 运行时性能分析和调试工具。您可以通过 Instruments 收集应用程序运行时的行为信息,并利用这些信息来确认可能存在的问题。
  • iPhone模拟器 -是Mac OS X平台应用程序,它对iOS技术栈进行模拟,以便于您可以在基于Intel的Macintosh计算机上测试iOS应用程序。
  • iOS参考库- SDK默认包含iOS的参考文档。另外,如果文档库有更新,则更新会被自动下载到本地。通过选择Help > Developer Documentation就可以看到参考库。

SDK提供编写应用程序所需的软件,而且Xcode和Instruments允许您直接与绑定设备进行交互,在目标硬件运行并调试代码。如果您需要在实际设备上开发,请加入苹果公司的收费iPhone开发者计划,并将设备配置成开发用途。如需进一步了解iPhone开发者计划,请访问http://developer.apple.com/iphone/program/页面。

如果您需要了解如何安装iPhone SDK以及如何使用iPhone SDK开发iOS应用程序,则请参考iOS开发指南。如果进一步了解iOS的框架,并且希望了解何处可以找到底层的系统库,则请参考“iOS框架”


------------------------

有效的使用ios提供的开发库


       iOS参考库包含各种文档、样例代码以及教程,这些材料可为编写应用程序提供帮助。不过参考库包含数千页的文档,上至起步介绍,下至API参考文档尽皆涵盖其中。因此,明白如何找到需要的信息是开发过程的重要步骤。参考库使用几种数种技术来组织内容,以使其更易于浏览。

您可以从苹果开发者网站访问iOS参考库,也可以从Xcode访问。 只要在Xcode中选择 帮助>开发者文档,就可以把XCode的文档窗口显示在屏幕上。此窗口是访问iOS开发信息的核心,您可以在其中浏览文档并执行搜索,还可以为稍后可能阅读的文档添加书签。各个文档早已按其内容进行归类,这样可为更新提供便利,也可以把搜索的范围精确至相关的文档。

在安装 iPhone SDK的时候,Xcode 会自动为您安装包含iOS参考库的文档集。(XCode也会自动为您下载文档更新,不过您可以在偏好设置中取消此行为。)iOS参考库包含非常多的信息。因而,对其排版设计稍作了解意义重大。图 1-3显示的是Xcode文档窗口中参考库的主。页面顶部的工具栏包含搜索框和按键,可用于导航至其他已安装的文档集或是已创建的书签。 您可以按主题、框架或者其他您正在查找的资源类型浏览文档,也可以使用过滤器来控制文档列表,减少显示的文档集。

Cocoa Touch 层

Cocoa Touch层包含创建 iOS应用程序所需的关键框架。上至实现应用程序可视界面,下至与高级系统服务交互,都需要该层技术提供底层基础。在开发应用程序的时候,请尽可能不要使用更底层的框架,尽可能使用该层的框架。


高级特性                                                                                                  



http://www.apple.com.cn/developer/iphone/library/documentation/iPhone/Conceptual/iOs_TechOverview/iPhoneOSTechnologies/iPhoneOSTechnologies.html#//apple_ref/doc/uid/TP40007898-CH3-SW1


下面章节描述一些常见特性,也许您也正打算在应用程序支持这些特性。

多任务

如果应用程序构建于iPhone SDK 4.0及其后续版本(且运行于iOS 4.0及后续版本操作系统),则点击Home键的时候,应用程序不会结束,而是切换到后台。对于大多数应用程序来说,进入后台,它们就会进入挂起状态。让应用程序驻留在后台可以避免以后的重新启动过程,应用程序可以直接将自己激活,这在很大程度上改善了整体用户体验。另外,将应用程序挂起也可以改善系统性能,因为挂起应用程序可以最小化电能使用,并可让前台应用程序获得更多的执行时间。

尽管应用程序进入后台就会被挂起,但可以通过下述的技术让其在后台继续运行:


  • 应用程序可以请求一定的时间完成某些重要的任务。
  • 应用程序可以声明自身支持的某种服务需要获得定期后台执行时间。
  • 应用程序可以使用本地通告在指定时间向用户发通知。这种方式对于应用程序是否运行没有要求。

不管应用程序是被挂起还是在后台运行,支持多任务不需要付出额外的工作。但是在某些情况(例如内存不足)下,应用程序可能会被结束运行。因此,应用程序应该可以在任何时候退出。这就意味着许多在退出应用程序时需要执行的任务必须改为在应用程序切换到后台的时候执行。这就要求您在应用程序委托中实现一些新的方法以响应程序的状态切换。

如果需要进一步了解如何对后台状态切换进行处理以及如何让应用程序在后台继续运行,请查看iOS应用程序编程指南

数据保护

和敏感用户数据打交道的应用程序可以使用设备内建加密功能(有些设备可能不提供内建加密功能)对数据进行保护。如果应用程序指定某个文件受保护,系统会以加密格式将该文件保存在磁盘。当设备锁住的时候,您的应用程序以及其他潜在的闯入者都不能访问该文件,而当用户解锁设备后,系统会生成一份密钥以便您的应用程序就访问该文件。

如需实现数据保护,应用程序应在待保护数据的创建和管理方式下一些功夫。它必须能够在数据创建之时保证其安全,而且需要适配设备上锁或未上锁造成的文件可访问性的变化。

如需进一步了解应用程序如何为文件添加数据保护,请查看iOS应用程序编程指南中的实现标准的应用程序行为一章。

苹果推送通知服务

iOS 3.0及后续版本的系统中,不管应用程序是否运行,苹果推送通知服务可用于通知用户某个应用程序具有新信息。利用这项服务,您可以向系统推送文本通知,可以触发声音提醒或者在应用程序图标上添加一个数字化标记。这样用户就知道他们应该打开应用程序接收相关信息。

从设计角度看,让应用程序支持推送通知包含两个部分。首先,iOS应用程序需要请求系统向其发送通知,然后要合理配置应用程序委托使其可以对通知进行恰当处理。这些工作可以通过应用程序委托以及UIApplication对象合作完成。第二,您需要提供一个服务器端进程用于产生最初的通知。该进程运行在您自己的本地服务器,它和苹果推送通知服务协同工作以产生最初的通知。

如需进一步了解如何配置应用程序以便使用远程通知,请查看本地通知及推送通知编程指南。 

本地通知

iOS 4.0引入了本地通知。本地通知是对已有推送通知的补充,通用程序可以通过它在本地生成通知,不再需要依赖外部服务器。当有重要的事件发生时,后台应用程序可以利用本地通知获得用户关注。举个例子,运行于后台的导航应用程序可以使用本地通知提醒用户要转弯。应用程序也可以安排在未来的某个时刻向用户发送本地通知,而且发送这些通知并不要求应用程序处于运行状态。

本地通知的优点是它独立于您的应用程序。一旦某个通知被安排好后,系统会负责通知发送。而且在发送通知的时候,您的应用程序无需处于运行状态

如需进一步了解本地通知的使用方式,请查看本地通知及推送通知编程指南

手势识别器

iOS 3.2引入了手势识别器。手势识别器是一个绑定到视图的对象,用于检测常见的手势类型。将手势识别器绑定到视图后,您可以告诉它某个手势发生的时候执行何种动作。之后,手势识别器就可以对原始事件进行跟踪,根据系统定义的试探方式识别手势。在引入手势识别器前,如果要识别一个手势,您需要跟踪视图的原始触摸事件流,然后再使用复杂的试探方法来判断这些事件是否表示某种手势。

现在,UIKit框架中包含一个UIGestureRecognizer 类,它定义了所有手势识别器的基本行为。您可以使用自定义的手势识别器子类或者系统定义的某个子类处理下面这些标准手势:


  • 拍击 (任意次数的拍击)
  • 向里或向外捏 (用于缩放)
  • 摇动或者拖拽
  • 擦碰 (以任意方向)
  • 旋转 (手指朝相反方向移动)
  • 长按


如需进一步了解您可以使用的手势识别器,请查看iOS事件处理指南


内容来自与Apple官方文档






推荐阅读
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 20211101CleverTap参与度和分析工具功能平台学习/实践
    1.应用场景主要用于学习CleverTap的使用,该平台主要用于客户保留与参与平台.为客户提供价值.这里接触到的原因,是目前公司用到该平台的服务~2.学习操作 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 本文介绍了C++中省略号类型和参数个数不确定函数参数的使用方法,并提供了一个范例。通过宏定义的方式,可以方便地处理不定参数的情况。文章中给出了具体的代码实现,并对代码进行了解释和说明。这对于需要处理不定参数的情况的程序员来说,是一个很有用的参考资料。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • 本文介绍了多因子选股模型在实际中的构建步骤,包括风险源分析、因子筛选和体系构建,并进行了模拟实证回测。在风险源分析中,从宏观、行业、公司和特殊因素四个角度分析了影响资产价格的因素。具体包括宏观经济运行和宏经济政策对证券市场的影响,以及行业类型、行业生命周期和行业政策对股票价格的影响。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • 展开全部下面的代码是创建一个立方体Thisexamplescreatesanddisplaysasimplebox.#Thefirstlineloadstheinit_disp ... [详细]
  • 有没有一种方法可以在不继承UIAlertController的子类或不涉及UIAlertActions的情况下 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
author-avatar
自由常飞_337
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有