新聞中心

iOS技術(shù)概述

作者: 時(shí)間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

iPhone SDK 包含哪些東西?

本文引用地址:http://butianyuan.cn/article/201609/304769.htm

蘋果公司將大部分系統(tǒng)接口發(fā)布在框架這種特殊的數(shù)據(jù)包。一個(gè)框架就是一個(gè)目錄,它包含一個(gè)動(dòng)態(tài)共享庫以及使用這個(gè)庫所需的資源(例如頭文件、圖像以及幫助應(yīng)用程序等)。如果要使用某個(gè)框架,則需要將其鏈接到應(yīng)用程序工程,這一點(diǎn)和使用其他共享庫相似。另外,您還需要告知開發(fā)工具何處可以找到框架頭文件以及其他資源

除了使用框架,蘋果公司還通過標(biāo)準(zhǔn)共享庫的形式來發(fā)布某些技術(shù)。 由于iOS以UNIX為基礎(chǔ),操作系統(tǒng)底層的許多技術(shù)都源自開源技術(shù),這些技術(shù)的許多接口可以從標(biāo)準(zhǔn)庫和接口目錄訪問。

Cocoa Touch 層

Cocoa Touch層包含創(chuàng)建 iOS應(yīng)用程序所需的關(guān)鍵框架。上至實(shí)現(xiàn)應(yīng)用程序可視界面,下至與高級(jí)系統(tǒng)服務(wù)交互,都需要該層技術(shù)提供底層基礎(chǔ)。在開發(fā)應(yīng)用程序的時(shí)候,請(qǐng)盡可能不要使用更底層的框架,盡可能使用該層的框架。

多任務(wù)

盡管應(yīng)用程序進(jìn)入后臺(tái)就會(huì)被掛起,但可以通過下述的技術(shù)讓其在后臺(tái)繼續(xù)運(yùn)行:

應(yīng)用程序可以請(qǐng)求一定的時(shí)間完成某些重要的任務(wù)。

應(yīng)用程序可以聲明自身支持的某種服務(wù)需要獲得定期后臺(tái)執(zhí)行時(shí)間。

應(yīng)用程序可以使用本地通告在指定時(shí)間向用戶發(fā)通知。這種方式對(duì)于應(yīng)用程序是否運(yùn)行沒有要求。

不管應(yīng)用程序是被掛起還是在后臺(tái)運(yùn)行,支持多任務(wù)不需要付出額外的工作。但是在某些情況(例如內(nèi)存不足)下,應(yīng)用程序可能會(huì)被結(jié)束運(yùn)行。因此,應(yīng)用程序應(yīng)該可以在任何時(shí)候退出。這就意味著許多在退出應(yīng)用程序時(shí)需要執(zhí)行的任務(wù)必須改為在應(yīng)用程序切換到后臺(tái)的時(shí)候執(zhí)行。這就要求您在應(yīng)用程序委托中實(shí)現(xiàn)一些新的方法以響應(yīng)程序的狀態(tài)切換。

數(shù)據(jù)保護(hù)

和敏感用戶數(shù)據(jù)打交道的應(yīng)用程序可以使用設(shè)備內(nèi)建加密功能(有些設(shè)備可能不提供內(nèi)建加密功能)對(duì)數(shù)據(jù)進(jìn)行保護(hù)。如果應(yīng)用程序指定某個(gè)文件受保護(hù),系統(tǒng)會(huì)以加密格式將該文件保存在磁盤。當(dāng)設(shè)備鎖住的時(shí)候,您的應(yīng)用程序以及其他潛在的闖入者都不能訪問該文件,而當(dāng)用戶解鎖設(shè)備后,系統(tǒng)會(huì)生成一份密鑰以便您的應(yīng)用程序就訪問該文件。

如需實(shí)現(xiàn)數(shù)據(jù)保護(hù),應(yīng)用程序應(yīng)在待保護(hù)數(shù)據(jù)的創(chuàng)建和管理方式下一些功夫。它必須能夠在數(shù)據(jù)創(chuàng)建之時(shí)保證其安全,而且需要適配設(shè)備上鎖或未上鎖造成的文件可訪問性的變化。

蘋果推送通知服務(wù)

從設(shè)計(jì)角度看,讓應(yīng)用程序支持推送通知包含兩個(gè)部分。首先,iOS應(yīng)用程序需要請(qǐng)求系統(tǒng)向其發(fā)送通知,然后要合理配置應(yīng)用程序委托使其可以對(duì)通知進(jìn)行恰當(dāng)處理。這些工作可以通過應(yīng)用程序委托以及UIApplication對(duì)象合作完成。第二,您需要提供一個(gè)服務(wù)器端進(jìn)程用于產(chǎn)生最初的通知。該進(jìn)程運(yùn)行在您自己的本地服務(wù)器,它和蘋果推送通知服務(wù)協(xié)同工作以產(chǎn)生最初的通知。

本地通知

iOS 4.0引入了本地通知。本地通知是對(duì)已有推送通知的補(bǔ)充,通用程序可以通過它在本地生成通知,不再需要依賴外部服務(wù)器。當(dāng)有重要的事件發(fā)生時(shí),后臺(tái)應(yīng)用程序可以利用本地通知獲得用戶關(guān)注。舉個(gè)例子,運(yùn)行于后臺(tái)的導(dǎo)航應(yīng)用程序可以使用本地通知提醒用戶要轉(zhuǎn)彎。應(yīng)用程序也可以安排在未來的某個(gè)時(shí)刻向用戶發(fā)送本地通知,而且發(fā)送這些通知并不要求應(yīng)用程序處于運(yùn)行狀態(tài)。

本地通知的優(yōu)點(diǎn)是它獨(dú)立于您的應(yīng)用程序。一旦某個(gè)通知被安排好后,系統(tǒng)會(huì)負(fù)責(zé)通知發(fā)送。而且在發(fā)送通知的時(shí)候,您的應(yīng)用程序無需處于運(yùn)行狀態(tài)

手勢(shì)識(shí)別器

iOS 3.2引入了手勢(shì)識(shí)別器。手勢(shì)識(shí)別器是一個(gè)綁定到視圖的對(duì)象,用于檢測(cè)常見的手勢(shì)類型。將手勢(shì)識(shí)別器綁定到視圖后,您可以告訴它某個(gè)手勢(shì)發(fā)生的時(shí)候執(zhí)行何種動(dòng)作。之后,手勢(shì)識(shí)別器就可以對(duì)原始事件進(jìn)行跟蹤,根據(jù)系統(tǒng)定義的試探方式識(shí)別手勢(shì)。在引入手勢(shì)識(shí)別器前,如果要識(shí)別一個(gè)手勢(shì),您需要跟蹤視圖的原始觸摸事件流,然后再使用復(fù)雜的試探方法來判斷這些事件是否表示某種手勢(shì)。

現(xiàn)在,UIKit框架中包含一個(gè)UIGestureRecognizer 類,它定義了所有手勢(shì)識(shí)別器的基本行為。您可以使用自定義的手勢(shì)識(shí)別器子類或者系統(tǒng)定義的某個(gè)子類處理下面這些標(biāo)準(zhǔn)手勢(shì):

拍擊 (任意次數(shù)的拍擊)

向里或向外捏 (用于縮放)

搖動(dòng)或者拖拽

擦碰 (以任意方向)

旋轉(zhuǎn) (手指朝相反方向移動(dòng))

長按

如需進(jìn)一步了解您可以使用的手勢(shì)識(shí)別器

文件共享支持

應(yīng)用程序可以使用文件共享讓用戶訪問程序的用戶數(shù)據(jù)文件。文件共享允許應(yīng)用程序通過iTunes向用戶顯露應(yīng)用程序/Documents目錄的內(nèi)容。這樣,用戶就可以在iPad和桌面計(jì)算機(jī)來回移動(dòng)文件。但是,該功能不允許應(yīng)用程序和同一設(shè)備上的其他應(yīng)用程序共享文件。如果希望在程序間共享文件,請(qǐng)使用剪貼板或者文檔交互控制器對(duì)象。

您可以通過如下步驟來讓應(yīng)用程序支持文件共享:

在應(yīng)用程序的Info.plist文件中添加UIFileSharingEnabled鍵,并將鍵值設(shè)置為YES。

將您希望共享的文件放在應(yīng)用程序的Documents目錄。

一旦設(shè)備插入到用戶計(jì)算機(jī),iTunes 9.1就會(huì)在選中設(shè)備的Apps標(biāo)簽中顯示一個(gè)File Sharing區(qū)域。

此后,用戶就可以向該目錄添加文件或者將文件移動(dòng)到桌面計(jì)算機(jī)中。

如果應(yīng)用程序支持文件共享,當(dāng)文件添加到Documents目錄后,應(yīng)用程序應(yīng)該能夠識(shí)別并做出適當(dāng)響應(yīng)。例如說,應(yīng)用程序可以將新文件的內(nèi)容顯示界面上。請(qǐng)不要向用戶展現(xiàn)目錄的文件列表并詢問他們希望對(duì)文件執(zhí)行什么操作。

點(diǎn)對(duì)點(diǎn)服務(wù)

在iOS 3.0 及后續(xù)版本,Game Kit框架支持經(jīng)由藍(lán)牙進(jìn)行點(diǎn)對(duì)點(diǎn)連接。您可以使用點(diǎn)對(duì)點(diǎn)連接啟動(dòng)與某個(gè)鄰近設(shè)備的通訊會(huì)話,也可用它實(shí)現(xiàn)多種多玩家游戲的常見特性。雖然點(diǎn)對(duì)點(diǎn)連接主要應(yīng)用于游戲,但您也可將之應(yīng)用于其他類型應(yīng)用程序。

標(biāo)準(zhǔn)系統(tǒng)視圖控制器

Cocoa Touch層許多框架含有展現(xiàn)標(biāo)準(zhǔn)系統(tǒng)界面的視圖控制器。我們提倡您在應(yīng)用程序中使用這些視圖控制器,這樣可以讓您的程序和系統(tǒng)具有一致的用戶體驗(yàn)。如果您需要執(zhí)行下述任務(wù),請(qǐng)從相應(yīng)的框架中選擇一個(gè)視圖控制器使用:

顯示或者編輯聯(lián)系人信息 - 請(qǐng)使用Address Book UI框架中的視圖控制器。

創(chuàng)建或者編輯日歷事件 - 請(qǐng)使用Event Kit UI框架的視圖控制器。


上一頁 1 2 3 下一頁

關(guān)鍵詞:

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉