專利名稱:基于聲明和同意的訪問代理的制作方法
基于聲明和同意的訪問代理相關(guān)申請
這個申請涉及由Ganapathy等人于2011年5月2日提交且題為“BINDINGAPPLICATIONS TO DEVICE CAPABILITIES” 的美國申請第 13/099,260 號。
背景技術(shù):
安裝在計算系統(tǒng)上的硬件提供各種能力(capability),諸如打印、設(shè)備管理、位置服務(wù)、消息傳遞、視頻捕獲等等。所安裝的應(yīng)用訪問這些與其他能力來給計算系統(tǒng)提供功能。但是,應(yīng)用有可能未經(jīng)用戶同意或在用戶不知道的情況下訪問潛在風(fēng)險的能力。例如,具有現(xiàn)有的以位置服務(wù)、消息傳遞服務(wù)以及其他服務(wù)為目標的利用(exploit)。這些利用能夠損害用戶的隱私或者在用戶不知道的情況下或未經(jīng)用戶同意而導(dǎo)致用戶被其網(wǎng)絡(luò)服務(wù)供應(yīng)商收取費用。甚至在應(yīng)用開發(fā)人員方面沒有邪惡意圖的情況下,應(yīng)用訪問潛在風(fēng)險能力也能夠無意地損害計算系統(tǒng)的安全或用戶的隱私。并且,甚至在用戶被允許同意利用應(yīng)用進行的能力訪問的情況下,用戶也可能難以明白一并且可能難以向用戶解釋一該應(yīng)用將在什么上下文中訪問該能力。用戶可能沒有意識到允許應(yīng)用訪問特別能力的衍生物(ramification)。用戶可能因此或者欠許可(under-permit)或者過許可(over-permit)應(yīng)用訪問能力,從而潛在地破壞用戶體驗或損害用戶的隱私與安全。
發(fā)明內(nèi)容
提供這個發(fā)明內(nèi)容部分,以便介紹下面在詳細描述部分中進一步描述的能力代理服務(wù)的簡化概念。這個發(fā)明內(nèi)容部分并不打算標識所請求保護的主題的基本特性,也打算用于確定所請求保護的主題的范圍。訪問代理(broker)控制應(yīng)用訪問計算系統(tǒng)能力,諸如硬件設(shè)備能力。訪問代理從應(yīng)用接收對于訪問能力的請求,并應(yīng)用策略來確定是否準許(grant)該訪問。為了該應(yīng)用被準許訪問該能力,該策略可能要求該應(yīng)用具有聲明(declare)該能力的應(yīng)用清單(manifest)。并且,為了該應(yīng)用被準許訪問該能力,該策略可能要求用戶同意該請求。用戶界面組件提供包括應(yīng)用特定的能力設(shè)置以及改變這些設(shè)置的可選選項的用戶界面。這些用戶界面在用戶與應(yīng)用交互期間被啟動,從而給用戶提供單獨的位置來查看和配置用于特別應(yīng)用的能力設(shè)置。因為這些用戶界面是操作系統(tǒng)界面,所以給用戶提供更大的操作系統(tǒng)正在控制針對潛在風(fēng)險能力的應(yīng)用訪問的置信度(measure ofconfidence)。
參考附圖來闡述詳細描述部分。在附圖中,參考數(shù)字最左側(cè)的(一個或多個)數(shù)字標識該參考數(shù)字首次出現(xiàn)在其中的附圖。在不同的附圖中相同的參考數(shù)字的使用指示相似或相同的項。
圖1是可用于提供訪問代理服務(wù)的示例系統(tǒng)的示意圖。圖2是根據(jù)實施例的可用于提供訪問代理服務(wù)的示例計算設(shè)備的框圖。圖3是顯示用于基于應(yīng)用聲明和用戶同意來代理能力訪問的示例處理的流程圖。圖4是顯示用于提供應(yīng)用內(nèi)(in-application)能力界面設(shè)置配置的示例處理的流程圖。圖5是顯示用于查看和配置能力特定的設(shè)置的示例處理的流程圖。圖6示出用于針對敏感能力的應(yīng)用請求而獲得用戶同意的示例用戶界面顯示。圖7示出包括能力的顯示的示例應(yīng)用獲取用戶界面顯示。圖8示出用于顯示應(yīng)用內(nèi)能力設(shè)置信息的示例用戶界面顯示。圖9示出用于顯示能力特定的設(shè)置信息的示例用戶界面顯示。
具體實施例方式綜述
如上所述,應(yīng)用訪問各種能力,以便給用戶提供功能。這些能力之中的一些能力諸如設(shè)備位置、消息傳遞、視頻捕獲、因特網(wǎng)接入和其他能力是潛在有風(fēng)險的,并且用戶可能想控制或禁止對它們的訪問。并且,用戶必須能夠確定應(yīng)用被配置成訪問什么能力,以便用戶能夠確定是否獲取或執(zhí)行該應(yīng)用。在實施例中,訪問代理控制針對諸如設(shè)備能力之類的能力的應(yīng)用訪問。在受保護的應(yīng)用容器內(nèi)運行的應(yīng)用通過訪問代理來請求訪問能力?;趹?yīng)用于被請求的能力的策略的類型,訪問代理在每個應(yīng)用的基礎(chǔ)上采取措施來實施該策略。例如,訪問代理的策略可以指示為了應(yīng)用被準許訪問能力,應(yīng)獲得用戶同意。該策略可以指示為了應(yīng)用被準許訪問能力,該能力要求該應(yīng)用在其應(yīng)用清單中聲明該能力。該策略可以要求以便應(yīng)用被準許訪問特別能力,該應(yīng)用在特許(privileged)許可記錄中應(yīng)被明確地標識為被允許訪問該特別能力(至于有關(guān)使用特許許可記錄的訪問代理的細節(jié),參見由Ganapathy等人于2011年 5 月 2 日提交且題為“BINDING APPLICATIONS TO DEVICE CAPABILITIES”的美國申請第13/099,260 號)。因而,取決于應(yīng)用于特別能力的策略類型,訪問代理可以導(dǎo)致具有同意該能力的可選選項的用戶界面元素被顯示。這個用戶界面元素由操作系統(tǒng)在用戶與應(yīng)用交互的上下文中進行顯示。這使得用戶更容易明白何時和為什么該應(yīng)用將訪問該能力。在實施例中,當在與應(yīng)用交互的上下文中的同時,給用戶提供調(diào)用操作系統(tǒng)用戶界面元素的選項。操作系統(tǒng)用戶界面元素顯示應(yīng)用能夠訪問的能力。用戶界面元素允許用戶啟用或禁用針對各種能力的訪問。這個應(yīng)用特定的視圖(view)給用戶提供單個位置來查看該應(yīng)用能夠訪問的所有能力,諸如設(shè)備能力,而不必打開多個配置頁面來確定該應(yīng)用能夠訪問什么能力。在實施例中,操作系統(tǒng)設(shè)置模塊給用戶提供能夠訪問特別能力的所有應(yīng)用的視圖。這個能力特定的視圖允許用戶在每個應(yīng)用或全局的基礎(chǔ)上控制訪問,從而進一步增強用戶體驗。這些特性即用戶同意、應(yīng)用清單中的能力聲明、應(yīng)用特定的能力配置以及能力特定的配置設(shè)置的組合給用戶提供更大的應(yīng)用訪問潛在風(fēng)險能力被充分地控制的置信度。遍及這個詳細描述部分,術(shù)語“被配置”當被用于描述應(yīng)用的能力功能時意味著該應(yīng)用被編程而具有訪問特別能力諸如硬件設(shè)備的設(shè)備能力的功能。遍及這個詳細描述部 分,術(shù)語“被啟用”當被用于描述應(yīng)用的能力功能時意味著該應(yīng)用被允許或被許可訪問該 能力。應(yīng)用因此可以被配置成訪問某個能力,而同時沒有“被啟用”來訪問該同一能力。
本文描述的處理、系統(tǒng)和設(shè)備可以采用許多方式來實現(xiàn)。下面參考以下附圖來提 供示例實現(xiàn)方式。
用于提供訪問代理服務(wù)的示例環(huán)境圖1是可用于提供訪問代理服務(wù)的示例系統(tǒng)100的示意圖。系統(tǒng)100可以在能夠?qū)?現(xiàn)訪問代理服務(wù)的各種合適的計算設(shè)備類型上進行實現(xiàn)。一個或多個合適的計算設(shè)備可 以包括下列各項或者可以是下列各項的一部分一個或多個個人計算機,服務(wù)器,服務(wù)器群 (farm)、數(shù)據(jù)中心,專用計算機、平板計算機,游戲機,智能電話,這些的組合或任何其他的 能夠存儲和執(zhí)行設(shè)備代理服務(wù)的全部或其中一部分的(一個或多個)計算設(shè)備。
在圖1的說明性示例中,系統(tǒng)100包括訪問代理102。訪問代理102包括策略104, 其中策略包括屬于(falI under)各種訪問級別的能力的列表。示例的訪問級別包括“始終 允許(always allow)”、“聲明(declare)”、“敏感 / 限制(sensitive/restricted)”和 / 或 “特許/未知(privileged/unknown)”。這些示例級別為了討論的方便而在本文進行使用, 并且不應(yīng)被視為具有限制意義。在各個實施例中,訪問級別可以是其他訪問級別的子級別。 在一個非限制示例中,能力可能屬于“聲明”和“敏感/限制”二者。在另一非限制示例中, 能力可能屬于“敏感/限制”和“特許” 二者。
應(yīng)用容器組件106提供能力來在控制應(yīng)用訪問各種系統(tǒng)資源的安全執(zhí)行模式中 實施應(yīng)用的執(zhí)行,其中系統(tǒng)資源諸如是存儲器、應(yīng)用、應(yīng)用編程接口(API)或設(shè)備。應(yīng)用108 和110被配置成在由應(yīng)用容器組件106實施的安全模式中執(zhí)行。這些應(yīng)用包括被配置成與 諸如設(shè)備112和設(shè)備114之類的系統(tǒng)100的各個設(shè)備交互的各種功能。設(shè)備112被啟用來 提供各種能力,諸如設(shè)備能力116-1到116-N。并且,設(shè)備114被啟用來提供各種能力,諸如 設(shè)備能力118-1到118-N。設(shè)備能力的非限制示例包括位置服務(wù)(諸如全球定位系統(tǒng)(GPS) 服務(wù))、消息傳遞服務(wù)(諸如短消息服務(wù)(SMS))、視頻捕獲服務(wù)以及其他服務(wù)。
策略104根據(jù)各種訪問級別列出設(shè)備112和114的各種能力。例如,設(shè)備能力 116-1,116-2和118-1被列在“始終允許”之下,設(shè)備能力116-3和118-2被列在“聲明”之 下,設(shè)備能力118-3和116-4被列在“敏感/限制”之下,以及設(shè)備能力118-4被列在“特 許”之下。
訪問代理102被配置成接收來自應(yīng)用108和110的訪問設(shè)備112和114的各種能 力的請求。在第一示例中,應(yīng)用Iio請求訪問設(shè)備112的設(shè)備能力116-1。訪問代理102針 對策略104執(zhí)行查找操作,并且確定設(shè)備能力116-1屬于“始終允許”級別。結(jié)果,訪問代 理102向應(yīng)用110提供設(shè)備句柄(handle),以訪問設(shè)備能力116-1。應(yīng)用110隨后能夠利 用該句柄來與設(shè)備能力116-1交互,這包括發(fā)送和接收數(shù)據(jù)和命令。屬于“始終允許”級別 的能力被視為最少風(fēng)險的。在一個非限制示例中,打印服務(wù)可以被列在“始終允許”或等效 訪問級別之下。
在第二示例中,訪問代理102接收來自應(yīng)用108的訪問能力諸如設(shè)備114的設(shè)備 能力118-2的請求。訪問代理102針對策略104執(zhí)行查找操作,并且確定設(shè)備能力118-2 屬于“聲明”訪問級別。訪問代理102因此確定與應(yīng)用108相關(guān)聯(lián)的應(yīng)用清單112內(nèi)的設(shè)備聲明120是否包括應(yīng)用108被啟用來訪問設(shè)備114的設(shè)備能力118-2的聲明。設(shè)備聲明120可以包括用于諸如“SMS消息傳遞”或“視頻捕獲”之類的能力的“友好”名稱以及用于該能力的唯一標識符,諸如全局唯一標識符(⑶ID)。一旦確定該聲明出現(xiàn)在應(yīng)用清單122中,訪問代理102將給應(yīng)用108提供可用于訪問設(shè)備114的設(shè)備能力118-2的設(shè)備句柄。一旦確定該聲明沒有出現(xiàn)在應(yīng)用清單122中,訪問代理向應(yīng)用108返回例外句柄(或某種其他的錯誤消息或代碼),從而拒絕該訪問請求。規(guī)定應(yīng)用在其清單包括某些能力,以便允許該應(yīng)用訪問這些能力,這要求該應(yīng)用預(yù)先知曉(up-front about)它被配置成訪問這些能力的事實。這轉(zhuǎn)而允許用戶在知曉應(yīng)用被配置成訪問的能力一包括設(shè)備能力一的情況下確定是否訪問、獲得、下載、安裝和/或執(zhí)行該應(yīng)用。在第三示例中,應(yīng)用108請求訪問能力,諸如設(shè)備112的設(shè)備能力116-4。訪問代理102針對策略104執(zhí)行查找操作并確定設(shè)備能力116-4屬于“敏感/限制”級別。結(jié)果,訪問代理102導(dǎo)致用戶界面同意模塊124顯示具有同意訪問請求的可選選項的用戶界面。一旦接收到指示用戶同意該請求的輸入(或者一旦確定先前提供過用戶同意),訪問代理102給應(yīng)用108提供可用于與設(shè)備能力116-4的實例交互的設(shè)備句柄。在實施例中,策略104可以規(guī)定屬于“敏感/限制”級別的能力也應(yīng)在應(yīng)用清單中被聲明(除了用戶同意之外),以便提供針對這些能力的訪問。在第四示例中,應(yīng)用110請求訪問能力,諸如設(shè)備114的設(shè)備能力118-4。訪問代理102針對策略104執(zhí)行查找操作并確定設(shè)備能力118-4屬于“特許”級別。結(jié)果,訪問代理102針對特許許可記錄126執(zhí)行查找,以確定是否應(yīng)用110在其中明確地被列為被允許訪問設(shè)備能力118-4。(至于有關(guān)使用特許許可記錄的訪問代理的細節(jié),參見由Ganapathy等人于 2011 年 5 月 2 日提交且題為 “BINDING APPLICATIONS TO DEVICE CAPABILITIES”的美國申請第13/099,260號)。在上述的示例中,訪問能力的請求是針對特定設(shè)備的特定能力的。在實施例中,應(yīng)用可以請求訪問通用能力,并且訪問代理102可以確定哪些設(shè)備(若有的話)提供通用能力。例如,在用戶的計算設(shè)備上可能安裝一個以上的網(wǎng)絡(luò)攝像頭,并且訪問代理102在接收到來自應(yīng)用的訪問網(wǎng)絡(luò)攝像頭的請求之后代理針對一個網(wǎng)絡(luò)攝像頭或另一個網(wǎng)絡(luò)攝像頭(有可能提示用戶選擇其中一個)的訪問。訪問代理102在繼續(xù)進行之前也檢查以確保計算系統(tǒng)包括網(wǎng)絡(luò)攝像頭。系統(tǒng)100包括應(yīng)用獲取組件128,其為在線或離線商店提供界面來獲取諸如應(yīng)用108和應(yīng)用110之類的應(yīng)用。例如,在呈現(xiàn)選項以獲取應(yīng)用108時,應(yīng)用獲取組件128被配置成導(dǎo)致在與應(yīng)用108相關(guān)聯(lián)的應(yīng)用清單122內(nèi)的能力聲明120的顯示。因而,用戶能夠部分基于應(yīng)用108被配置成訪問的那些能力來確定是否獲取該應(yīng)用。系統(tǒng)100包括操作系統(tǒng)設(shè)置模塊130,其包括應(yīng)用內(nèi)能力設(shè)置界面模塊132以及能力特定的用戶界面模塊134。操作系統(tǒng)設(shè)置模塊130被配置成接受用戶輸入,以便在用戶與應(yīng)用交互的上下文中顯示應(yīng)用內(nèi)能力設(shè)置界面模塊132。應(yīng)用內(nèi)能力設(shè)置界面模塊132提供能力訪問設(shè)置的可配置列表。應(yīng)用內(nèi)能力設(shè)置界面模塊132列出該應(yīng)用被配置成訪問的能力,而不論這些能力當前針對那個應(yīng)用是否被啟用,并且也列出針對該應(yīng)用啟用或禁用這些能力的可選選項。例如,在與應(yīng)用108交互的上下文中,用戶可以請求顯示應(yīng)用內(nèi)能力設(shè)置界面模塊132。應(yīng)用內(nèi)能力設(shè)置界面模塊132可以隨后接收用戶輸入,以禁用應(yīng)用108訪問設(shè)備114的設(shè)備能力118-3。因而,即使用戶先前已同意允許應(yīng)用108訪問設(shè)備114的設(shè)備能力118-3,訪問代理102也可以撤銷當前訪問并且拒絕來自應(yīng)用108的對于設(shè)備能力118-3的進一步請求,或者作為選擇,訪問代理102可以要求用戶同意來自應(yīng)用108的訪問設(shè)備能力118-3的未來請求。操作系統(tǒng)設(shè)置模塊130被配置成導(dǎo)致能力特定的用戶界面模塊134顯示。能力特定的用戶界面模塊134導(dǎo)致列出被配置成訪問特別能力的應(yīng)用的用戶界面元素的顯示。用戶界面元素也包括可選選項,以便針對被配成訪問該能力的所有或任何應(yīng)用禁用或啟用該能力。在實施例中,一個或多個能力對于操作系統(tǒng)而言在其實現(xiàn)的時間可能是已知的。在實施例中,操作系統(tǒng)可以借助于一個或多個聲明處理來啟用所支持的能力的集合的擴展。在一些情況中,添加到能力集合上的能力可能被限制到操作系統(tǒng),而在其他情況中,操作系統(tǒng)可以允許諸如第三方設(shè)備之類的第三方供應(yīng)商聲明新的能力。(至于有關(guān)擴展能力集合的細節(jié),參見由Ganapathy等人于2011年5月2日提交且題為“BINDING APPLICATIONSTO DEVICE CAPABILITIES” 的美國申請第 13/099,260 號)。在各個實施例中,設(shè)備能力通常根據(jù)在其中實現(xiàn)這些設(shè)備能力的設(shè)備來表示。這樣的實施例使得用戶能夠選擇被允許由應(yīng)用使用的設(shè)備。通過這樣做,用戶同意應(yīng)用使用設(shè)備的所有能力。例如,連接到用戶的計算機的多功能設(shè)備可以是支持SMS能力、地理定位能力以及由手機制造商定義的定制能力的手機。在基于設(shè)備的模型中,給用戶提供許可應(yīng)用訪問設(shè)備的所有能力的機會。替代的實施例可以提供用于添加與特定能力相關(guān)聯(lián)的用戶體驗元數(shù)據(jù)的模型,以便允許用戶啟用設(shè)備的個別能力而非設(shè)備的所有能力。因而,在一個實例中,用戶能夠選擇允許該應(yīng)用訪問SMS能力以及定制能力(例如,諸如在制造商提供了用戶界面元素來描述定制能力的情況下),但是不允許訪問地理定位功能。在訪問代理的非限制示例中,用戶獲取媒體播放器應(yīng)用,并且應(yīng)用獲取組件128導(dǎo)致該媒體播放器被配置成訪問的能力諸如音頻和視頻捕獲、短消息傳遞服務(wù)(SMS)等等的顯示。這些能力被列在與媒體播放器應(yīng)用相關(guān)聯(lián)的應(yīng)用清單(諸如應(yīng)用清單122)中。利用應(yīng)用獲取組件128呈現(xiàn)的界面因此允許用戶部分基于媒體播放器應(yīng)用被配置成訪問的能力來選擇是否獲取媒體播放器應(yīng)用。這些能力可以利用各個設(shè)備諸如網(wǎng)絡(luò)攝像頭、麥克風(fēng)和/或手機來提供。作為選擇,這些能力中的一個或多個能力可以利用基于web的服務(wù)或利用在用戶的計算設(shè)備上執(zhí)行的軟件模塊來提供。繼續(xù)非限制示例,用戶可以稍后選擇被配置成經(jīng)由在短消息傳遞服務(wù)(SMS)消息中向另一個用戶發(fā)送播放列表的媒體播放器應(yīng)用的功能。如果策略104規(guī)定SMS消息傳遞能力要求用戶同意(例如,諸如因為SMS消息傳遞屬于“敏感/限制”級別),那么訪問代理120導(dǎo)致用戶界面同意模塊124顯示可選選項,以同意允許媒體播放器應(yīng)用訪問SMS能力。因為同意的可選選項的顯示在經(jīng)由SMS發(fā)送播放列表的上下文期間發(fā)生(come),所以用戶能夠更佳地告訴何時以及為什么媒體播放器應(yīng)用將訪問SMS能力。相比之下,如果在應(yīng)用被啟動的時間、在應(yīng)用被安裝時提示用戶允許媒體播放器訪問SMS能力或者根本不提示的話,那么用戶可能對于何時以及為什么媒體播放器訪問SMS變得困惑。因為用戶界面同意模塊124是操作系統(tǒng)元素(而不是媒體播放器應(yīng)用的元素),所以用戶能夠更加相信如果未經(jīng)用戶的同意、知曉和控制,媒體播放器應(yīng)用將不會訪問如同SMS之類的潛在風(fēng)險的能 力。
如果訪問代理102接收到來自不同應(yīng)用的訪問SMS能力的后續(xù)請求,那么用戶先 前的對于媒體播放器應(yīng)用訪問SMS消息的同意將不適用,并且訪問代理102將提示用戶同 意其他應(yīng)用對于SMS消息的訪問。如果媒體播放器應(yīng)用請求訪問不同的能力,例如,諸如位 置服務(wù),那么用戶先前的允許媒體播放器訪問SMS能力的同意將不適用,并且訪問代理102 將提示用戶同意媒體播放器的訪問位置服務(wù)的請求。
進一步繼續(xù)非限制示例,應(yīng)用內(nèi)能力設(shè)置模塊132在與媒體播放器應(yīng)用交互的上 下文中的同時導(dǎo)致應(yīng)用特定的能力設(shè)置的顯示。用戶能夠使用這個應(yīng)用特定的視圖來控制 媒體播放器的SMS能力訪問。能力特定的用戶界面模塊134給用戶提供查看諸如媒體播放 器應(yīng)用之類的那些應(yīng)用的能夠在單個列表中訪問SMS能力的選項,并且接通或關(guān)閉針對用 戶希望的任何和所有應(yīng)用的SMS能力訪問。因而,目前的詳細描述部分的實施例給用戶提 供更大的置信度,即更加相信用戶的計算系統(tǒng)正在恰當控制媒體播放器應(yīng)用對于諸如設(shè) 備能力之類的能力的訪問。
示例計算設(shè)備圖2是根據(jù)實施例的可用于提供訪問代理服務(wù)的示例計算系統(tǒng)的框圖。計算系統(tǒng)200 可以被配置成任何的能夠?qū)崿F(xiàn)訪問代理服務(wù)的合適計算設(shè)備。根據(jù)各個非限制示例,合適 的計算設(shè)備可以包括個人計算機(PC)、服務(wù)器、服務(wù)器群、數(shù)據(jù)中心、專用計算機、平板計算 機、游戲機、智能電話、這些的組合或能夠存儲和執(zhí)行所有或部分的代理服務(wù)的任何其他的 (一個或多個)計算設(shè)備。
在一個示例配置中,計算系統(tǒng)200包括一個或多個處理器202和存儲器204。計 算系統(tǒng)200也可以包含允許與各種其他系統(tǒng)通信的(一個或多個)通信連接206。計算系統(tǒng) 200也可以包括一個或多個輸入設(shè)備208諸如鍵盤、鼠標、筆、語音輸入設(shè)備、觸摸輸入設(shè)備 等等以及一個或多個輸出設(shè)備210諸如顯示器、揚聲器、打印機等等,其中這些設(shè)備通信耦 合至(一個或多個)處理器202和存儲器204。
存儲器204可以存儲在(一個或多個)處理器202上是可加載的和可執(zhí)行的程序 指令以及在這些程序的執(zhí)行期間生成的數(shù)據(jù)和/或與這些程序結(jié)合可使用的數(shù)據(jù)。在所示 出的示例中,存儲器204存儲操作系統(tǒng)212,其中操作系統(tǒng)提供計算系統(tǒng)200的基本系統(tǒng)功 能,并且尤其規(guī)定計算系統(tǒng)200的其他程序和模塊的操作。
存儲器204包括可以與圖1的訪問代理102相同或相似的訪問代理214。訪問代 理214被配置成代理針對設(shè)備216的應(yīng)用訪問,其中設(shè)備216可以與圖1的設(shè)備112和114 中的一個或二者相同或相似。
存儲器204包括可以與圖1的應(yīng)用容器組件106相同或相似的應(yīng)用容器組件218。 應(yīng)用容器組件218被配置成實施對應(yīng)用訪問諸如設(shè)備112之類的系統(tǒng)資源進行控制的安全 執(zhí)行模式。
存儲器204包括可以與圖1的應(yīng)用清單120相同或相似的應(yīng)用清單220。存儲器 204也包括用戶界面同意模塊222以及操作系統(tǒng)設(shè)置模塊224,其可以分別地與圖1的用戶 界面同意模塊124以及操作系統(tǒng)設(shè)置模塊130相同或相似。用戶界面同意模塊222和操作 系統(tǒng)設(shè)置模塊224可以是操作系統(tǒng)212內(nèi)的組件,但是為了討論的方便而在圖2中單獨地顯不。存儲器204包括可以與圖1中的特許許可記錄126相同或相似的特許許可記錄226。存儲器204也包括可以與圖1的應(yīng)用獲取組件128相同或相似的應(yīng)用獲取組件228。用于代理能力訪問的示例操作
圖3是顯示用于基于應(yīng)用聲明和用戶同意來代理能力訪問的示例處理300的流程圖。計算系統(tǒng)的訪問代理接收來自應(yīng)用的訪問諸如安裝在計算系統(tǒng)上的硬件設(shè)備的設(shè)備能力之類的能力的請求,方框302。應(yīng)用可能正在控制針對系統(tǒng)資源諸如存儲器、其他應(yīng)用以及安裝的硬件設(shè)備的訪問的安全執(zhí)行環(huán)境中執(zhí)行。 訪問代理針對策略執(zhí)行查找操作以確定所請求的能力的訪問級別,方框304。一旦確定策略指示被請求的能力是“特許”能力或者該能力是未知能力,方框306,那么訪問代理針對許可記錄執(zhí)行查找操作,方框308。許可記錄可以存儲在存儲器的安全區(qū)域中。許可記錄可以包括被設(shè)備驅(qū)動器登記為被許可訪問特許能力的應(yīng)用。一旦確定應(yīng)用在許可記錄中被列為被允許訪問所請求的能力,方框310,那么訪問代理給該應(yīng)用提供可用于與被請求的能力交互的句柄,方框312。一旦確定該應(yīng)用在許可記錄中沒有被列為被許可訪問被請求的能力,那么訪問代理向該應(yīng)用返回錯誤代碼,從而拒絕該應(yīng)用的請求,方框314。(至于有關(guān)使用特許許可記錄的訪問代理的細節(jié),參見由 Ganapathy 等人于 2011 年 5 月 2 日提交且題為 “BINDING APPLICATIONS TO DEVICECAPABILITIES” 的美國申請第 13/099,260 號)。訪問代理確定被請求的能力是否屬于“聲明”能力級別,方框316。聲明能力規(guī)定為了針對該應(yīng)用準許能力訪問請求,該能力應(yīng)被包括在該應(yīng)用的清單中。一旦確定被請求的能力屬于“聲明”能力級別,訪問代理確定該應(yīng)用的應(yīng)用清單是否包括被請求的能力的聲明,方框318。該確定可以包括針對應(yīng)用清單的查找,或者應(yīng)用清單聲明可以在啟動該應(yīng)用時或在某個其他時間被加載到訪問代理策略(或某個其他位置)。一旦確定應(yīng)用清單聲明所請求的能力,訪問代理給該應(yīng)用提供句柄,方框312。一旦確定被請求的能力屬于“敏感/限制”訪問級別,方框320,那么訪問代理確定是否用戶先前已同意由該應(yīng)用訪問被請求的能力的先前請求,方框322。在實施例中,訪問代理進一步確定是否先前請求被該應(yīng)用的相同實例接收到。如果這是該應(yīng)用新的實例,那么先前的同意可以被視為無效。在替代的實施例中,訪問代理策略可以規(guī)定用戶應(yīng)同意請求同意的應(yīng)用的每一個實例,而無論由該應(yīng)用的相同或不同實例的先前同意。一旦確定具有先前的同意,那么訪問代理給該應(yīng)用提供句柄,方框312。一旦確定沒有先前的同意,那么訪問代理導(dǎo)致具有可選選項來同意能力訪問請求的操作系統(tǒng)的界面元素的顯示,方框324。用戶界面元素包括有關(guān)被請求的能力的信息。因為用戶界面元素在用戶與應(yīng)用交互的上下文中出現(xiàn),所以用戶能夠更好地明白何時以及為什么該應(yīng)用將訪問該能力。一旦接收到指示用戶同意的輸入,方框326,那么在方框312提供句柄之前,訪問代理確定應(yīng)用清單是否聲明被請求的能力,方框318。在替代的示例中,訪問代理返回句柄而不首先確定應(yīng)用清單是否聲明被請求的能力。在其他的實施例中,訪問代理可以被配置成調(diào)用其他的操作系統(tǒng)元素來確定是否訪問應(yīng)被準許,而不是導(dǎo)致同意用戶界面被顯示或除了導(dǎo)致同意用戶界面被顯示之外?!┰诜娇?28確定被請求的能力屬于“始終允許”訪問級別,那么在方框312訪問代理給應(yīng)用提供句柄。
在實施例中,策略可以指示一個或多個能力屬于多個訪問級別。在一個非限制示 例中,特別能力可以在策略中被指示為屬于“特許”和“聲明”訪問級別二者。在這樣的情況 下,在給應(yīng)用提供句柄以訪問該能力之前,訪問代理可以執(zhí)行與方框308和方框318相關(guān)的 功能。除非在目前的詳細描述部分中或在權(quán)利要求書中以別的方式加以指示,否則圖3所 示的操作的確切順序和流程不應(yīng)被視為限制。
用于提供應(yīng)用內(nèi)能力配置的示例操作圖4是顯示用于提供應(yīng)用內(nèi)能力界面設(shè)置配置的示例處理400的流程圖。應(yīng)用在(例 如由應(yīng)用容器組件提供的)安全執(zhí)行模式中執(zhí)行,方框402。安全執(zhí)行模式針對應(yīng)用訪問系 統(tǒng)資源提供控制。
訪問代理在應(yīng)用的執(zhí)行期間接收來自用戶輸入設(shè)備的輸入,其中該輸入指示顯示 包括改變應(yīng)用的能力訪問設(shè)置的可選選項的應(yīng)用特定的操作系統(tǒng)用戶界面元素的命令,方 框404。因為用戶界面元素是操作系統(tǒng)元素,所以用戶將具有更大的操作系統(tǒng)正在恰當?shù)乜?制針對諸如設(shè)備能力之類的能力的應(yīng)用訪問的保證和置信度。
應(yīng)用內(nèi)用戶界面模塊接收指示改變用于應(yīng)用的能力訪問設(shè)置的命令的用戶輸入, 方框406。該命令可以是禁用或啟用該應(yīng)用對于該能力的訪問。接收到改變能力設(shè)置的命 令推翻(override)用戶可能已提供的允許該應(yīng)用訪問該能力的任何先前同意。用于該應(yīng)用 的能力訪問設(shè)置的狀態(tài)因此在訪問代理中以及在能力特定的操作系統(tǒng)設(shè)置模塊中被更新, 以便反映該變化,方框408。在稍后的某個時間,如果應(yīng)用請求訪問那個特別能力,訪問代理 可以拒絕該請求或提示用戶同意,如在這個詳細描述部分中的其他位置所描述的。
用于提供能力特定的設(shè)置配置的示例操作圖5是顯示用于查看和配置諸如設(shè)備能力特定的設(shè)置之類的能力特定的設(shè)置的示例 處理500的流程圖。計算系統(tǒng)啟動操作系統(tǒng)設(shè)置模塊,方框502。這可以提供“控制面板” 類型界面,其提供針對各種系統(tǒng)設(shè)置諸如包括設(shè)備能力設(shè)置的能力訪問設(shè)置的訪問。
操作系統(tǒng)設(shè)置模塊接收用戶輸入以查看能力訪問設(shè)置,方框504。作為響應(yīng),操作 系統(tǒng)設(shè)置模塊顯示能力的列表,方框506。特別能力可以按照默認來選擇。
操作系統(tǒng)設(shè)置模塊接收指示用戶命令以選擇特別能力的輸入,方框508。響應(yīng)于該 輸入,操作系統(tǒng)設(shè)置模塊顯示被配置成訪問所選擇能力的應(yīng)用的列表,方框510。
操作系統(tǒng)設(shè)置模塊也在這些應(yīng)用的旁邊顯示指示符,以顯示是否這些應(yīng)用當前被 啟用來訪問該能力,方框512。這些應(yīng)用由于先前的用戶同意、由于應(yīng)用聲明、因為在特許許 可記錄中列出應(yīng)用或由于某一其他原因而可以被啟用來訪問該能力。
操作系統(tǒng)設(shè)置模塊接收指示命令來對于特別應(yīng)用啟用或禁用該能力的輸入,方框 514。該輸入可以經(jīng)由與操作系統(tǒng)設(shè)置模塊的顯示交互的用戶輸入設(shè)備來接收。例如,該輸 入可以在與被顯示來表明是否該應(yīng)用當前被啟用來訪問該能力的指示符進行交互的過程 中進行接收。指示符的非限制示例包括兩個按鈕指示符(啟用/禁用、開/關(guān)或其他)、滑動 控制器、旋鈕或某一其他交互式指示符。
響應(yīng)于能力訪問設(shè)置的變化,操作系統(tǒng)設(shè)置模塊導(dǎo)致針對計算系統(tǒng)的訪問代理的 更新,方框516。如果用戶輸入指示對于那個特別應(yīng)用禁用該能力,那么訪問代理或拒絕該 應(yīng)用訪問那個能力的進一步請求或提示用戶同意,如在這個詳細描述部分內(nèi)的其他位置所描述的。圖3-5描述顯示根據(jù)各種實施例的示例處理的流程圖。這些處理的操作在個別方框中示出并且參考這些方框來綜述。這些處理被說明為邏輯流程圖,其中的每一個操作可以代表一組能夠以硬件、軟件或其組合來實現(xiàn)的操作。在軟件的上下文中,這些操作代表存儲在一個或多個計算機存儲媒體上的計算機可執(zhí)行指令,其中這些指令當由一個或多個處理器執(zhí)行時使得一個或多個處理器能夠執(zhí)行所敘述的操作。通常,計算機可執(zhí)行指令包括執(zhí)行特別功能或?qū)崿F(xiàn)特別抽象數(shù)據(jù)類型的例程、程序、對象、模塊、組件、數(shù)據(jù)結(jié)構(gòu)等等。用以描述這些操作的順序并不打算被解釋成限制,并且任何數(shù)量的所描述的操作可以按照任何順序進行組合、被分成子操作和/或被并行執(zhí)行來實現(xiàn)該處理。根據(jù)本公開內(nèi)容的各個實施例的處理可以只包括在邏輯流程圖中敘述的操作中的一些或所有操作。示例用戶界面
圖6示出用于針對諸如敏感設(shè)備能力之類的敏感能力的應(yīng)用請求獲得用戶同意的示例用戶界面顯示。應(yīng)用界面600代表可以在計算系統(tǒng)的用戶界面內(nèi)運行的任何應(yīng)用(在這種情況下,應(yīng)用“FooApp”)。一旦從應(yīng)用接收到訪問在其策略中被列為“敏感”的能力的請求,訪問代理將導(dǎo)致同意用戶界面元素602的顯示。同意用戶界面元素602包括應(yīng)用正在請求的能力的描述604以及同意該請求的可選選項(“允許”按鈕606)。在圖6所示的示例中,應(yīng)用“FooApp”正在請求訪問位置能力。在各個實施例中,位置能力可以利用計算系統(tǒng)的硬件設(shè)備諸如GPS設(shè)備來提供。在其他的實施例中,位置能力可以利用web (網(wǎng)絡(luò))服務(wù)或除了計算系統(tǒng)的設(shè)備之外的某個其他服務(wù)來提供。在圖6所示的示例中,用戶可以選擇“允許”按鈕606或“拒絕”按鈕608來同意或拒絕該請求。因為同意用戶界面元素602在從應(yīng)用接收到訪問“敏感”能力(在這個示例中,位置服務(wù))的請求時并且在用戶與應(yīng)用交互的上下文中進行顯示,所以用戶能夠更好地確定該應(yīng)用何時以及為什么將使用位置服務(wù)。例如,這可能是因為用戶已啟動該應(yīng)用的已導(dǎo)致該應(yīng)用請求針對位置服務(wù)能力的句柄的某個功能。并且,用戶因此能夠更好地將其針對該功能的啟動與他或她的被請求同意該應(yīng)用的位置服務(wù)的訪問相鏈接。例如,該應(yīng)用可以允許用戶在某個位置上“簽到(check in)”,以使得他的位置在社交網(wǎng)站上是可獲得的。因而,當用戶選擇應(yīng)用的“簽到”功能時,他或她將能夠更好地明白該應(yīng)用正在請求訪問位置服務(wù),以促進該應(yīng)用的“簽到”功能。圖7示出包括能力的顯示的示例應(yīng)用獲取用戶界面顯示,其中能力包括設(shè)備能力。用戶界面顯示700利用應(yīng)用獲取服務(wù)來顯示,其中應(yīng)用獲取服務(wù)被啟用來給用戶提供選項來獲得、下載和/或安裝應(yīng)用。用戶界面顯示700包括一個或多個特性,諸如應(yīng)用名稱702、應(yīng)用圖標圖形704和可選選項706,以下載或購買應(yīng)用。用戶界面顯示700包括能力列表708,其中該列表顯不該應(yīng)用被啟用來訪問的一個或多個能力。能力列表708可以顯不應(yīng)用功能,其包括設(shè)備能力以及其他的非設(shè)備能力,諸如訪問用戶的照片庫的功能。能力列表708可以只包括能力的子集。因此,能力列表708包括查看所有能力的列表712的可選選項710。用戶界面顯示700在用戶購買、下載、安裝和/或執(zhí)行應(yīng)用之前允許用戶更好地確定應(yīng)用被啟用來執(zhí)行什么能力。所有能力的列表712在應(yīng)用的清單(未顯示)中被聲明,并且用戶界面顯示700從應(yīng)用的清單中拉(pull)列表712。在稍后的某個時間,在用戶已獲得和執(zhí)行該應(yīng)用之后,該應(yīng)用可以請求訪問能力。這個請求被訪問代理接收。如在這個詳 細描述部分中的其他位置所描述的,除非在應(yīng)用清單中聲明該能力,否則訪問代理不可以 允許該應(yīng)用訪問該能力。
在獲得應(yīng)用的時間呈現(xiàn)應(yīng)用清單中包括設(shè)備能力聲明的能力聲明以及實施要求 應(yīng)用在其清單中聲明能力以便該應(yīng)用贏得對于那個能力的訪問的策略在被披露給用戶的 那些能力與該應(yīng)用被允許使用的那些能力之間保持連續(xù)性。這樣一來,應(yīng)用不能向用戶隱 藏訪問能力的功能。
圖8示出用于顯示應(yīng)用內(nèi)能力設(shè)置信息的示例用戶界面顯示。應(yīng)用界面800部分 地被應(yīng)用內(nèi)能力設(shè)置顯示窗口 802覆蓋。應(yīng)用內(nèi)能力設(shè)置顯示窗口 820是操作系統(tǒng)用戶界 面。應(yīng)用內(nèi)能力設(shè)置顯示窗口 820列出能力804 (其中的一些或所有能力可以是設(shè)備能力) 以及啟用或禁用能力804的可選控制器806。應(yīng)用內(nèi)能力設(shè)置顯示窗口 802也顯示該應(yīng)用 被配置成使用或訪問的包括各種設(shè)備能力的各種能力的列表808。列表808從應(yīng)用清單中 進行提取。
應(yīng)用內(nèi)能力設(shè)置顯示窗口 802允許用戶在單個位置中查看應(yīng)用被配置成訪問的 所有能力。這樣一來,用戶不需要打開多個配置設(shè)置窗口來查看這個信息。并且,因為能夠 在與應(yīng)用交互的過程中訪問應(yīng)用內(nèi)能力設(shè)置顯示窗口 802,所以用戶能夠更容易地控制應(yīng) 用對能力的訪問。一旦借助于應(yīng)用內(nèi)能力設(shè)置顯示窗口 802改變應(yīng)用的設(shè)置,則訪問代理 將被更新,以反映應(yīng)用對于那個能力的訪問的當前狀態(tài)。
圖9示出用于顯示能力特定的設(shè)置信息的示例用戶界面顯示。操作系統(tǒng)設(shè)置顯示 900包括能夠諸如在“隱私/設(shè)備同意”設(shè)置窗口 904中查看的各種設(shè)置的可選列表902。 “隱私/設(shè)備同意”設(shè)置窗口 904包括能力的可選列表906 (以虛線圓圈來顯示)。在圖9 所示的示例中,當前選擇“SMS”能力,從而導(dǎo)致被配置成訪問“SMS”功能的所有應(yīng)用的列表 908 (呈現(xiàn))。例如,如果選擇“位置”能力,將呈現(xiàn)顯示被配置成訪問位置服務(wù)的所有應(yīng)用的 不同列表(其可以包括或不可以包括與列表908相同的應(yīng)用)。列表908中的能力的列表可 以包括由設(shè)備提供的能力或利用除了設(shè)備之外的服務(wù)提供的能力。
在用于禁用或啟用特別應(yīng)用訪問該能力的可選控制器910的旁邊呈現(xiàn)列表908中 的應(yīng)用?!半[私/設(shè)備同意”設(shè)置窗口 904也可以包括全局選項912 (以虛線圓圈來顯示), 其中該選項可選擇來針對所有的應(yīng)用啟用或禁用所選擇的能力?!半[私/設(shè)備同意”設(shè)置窗 口 904因此可以允許用戶控制特別應(yīng)用對于特別能力的訪問,或者作為選擇,針對所有的 應(yīng)用接通或關(guān)閉那個能力。一旦借助于操作系統(tǒng)設(shè)置顯示900改變應(yīng)用的設(shè)置,訪問代理 被更新來反映該應(yīng)用對于那個能力的訪問的當前狀態(tài)。
圖6-9示出各個用戶界面。這些用戶界面為了說明的目的而被呈現(xiàn),并且其確切 的布局和內(nèi)容不應(yīng)被視為限制。在不脫離這個詳細描述部分的范圍的情況下,能夠使用替 代的布局和內(nèi)容。
計算機可讀媒體取決于所使用的計算設(shè)備的配置和類型,圖2中的計算設(shè)備200的存儲器204可以 包括易失性存儲器(諸如隨機存取存儲器(RAM))和/或非易失存儲器(諸如只讀存儲器 (ROM)、閃存等等)。存儲器204也可以包括附加的可移除存儲設(shè)備和/或不可移除存儲設(shè) 備,其包括但不限于可以為計算系統(tǒng)200提供計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊以及其他數(shù)據(jù)的非易失性存儲的閃存、磁存儲設(shè)備、光存儲設(shè)備和/或磁帶存儲設(shè)備。存儲器204是計算機可讀媒體的示例。計算機可讀媒體包括至少兩種類型的計算機可讀媒體,即計算機存儲媒體和通信媒體。計算機存儲媒體包括在任何的處理或技術(shù)中實現(xiàn)的、用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)之類的信息的易失性和非易失性、可移除和不可移除的媒體。計算機存儲媒體包括但不限于相變存儲器(PRAM)、靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPR0M)、閃存或其他存儲技術(shù)、緊湊型只讀存儲器(CD-ROM)、數(shù)字多用途碟片(DVD)或其他的光存儲設(shè)備、磁帶盒、磁帶、磁盤存儲設(shè)備或其他的磁存儲設(shè)備或任何其他的能夠用于存儲信息以供計算設(shè)備訪問的非傳輸介質(zhì)。相比之下,通信媒體可以將計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)包括在諸如載波之類的調(diào)制數(shù)據(jù)信號或其他傳輸機制中。如在本文所定義的,計算機存儲媒體不包括通信媒體。結(jié)論
雖然本公開內(nèi)容使用特定于結(jié)構(gòu)特性和/或方法動作的語言,但是本發(fā)明并不限于所描述的具體特性或動作。相反,這些具體特性和動作被披露為實現(xiàn)本發(fā)明的說明形式。
權(quán)利要求
1.一種方法,包括 由計算系統(tǒng)(100,200)的訪問代理(102,214)從所述計算系統(tǒng)的應(yīng)用(108,110)接收(302)對于訪問所述計算系統(tǒng)的可用功能的能力的請求; 由所述訪問代理響應(yīng)于所述請求而訪問(304)與所述應(yīng)用的應(yīng)用清單(122,220)相關(guān)聯(lián)的能力聲明(120);以及 由所述訪問代理至少部分基于所述能力聲明包括指示所述應(yīng)用包括被配置成訪問所述能力的功能的聲明的確定來準許(312)所述請求。
2.權(quán)利要求1的方法,進一步包括 由所述訪問代理確定(320)所述訪問代理的策略(104)包括對于訪問能力的準許要求用戶同意的指示; 由所述訪問代理響應(yīng)于所述確定而導(dǎo)致(308)所述計算系統(tǒng)的操作系統(tǒng)(212)的用戶界面元素(602)的顯示,所述用戶界面元素具有可選選項(606)來同意所述請求;以及 其中所述準許進一步至少部分基于指示用戶同意所述請求的輸入的接收。
3.權(quán)利要求1的方法,進一步包括 由所述訪問代理確定(320)所述訪問代理的策略(104)包括對于訪問能力的準許要求用戶同意的指示; 其中所述請求的準許進一步至少部分基于經(jīng)由操作系統(tǒng)設(shè)置模塊(224,130)接收到指示用戶同意訪問所述能力的輸入的確定。
4.一種計算系統(tǒng),包括 一個或多個處理器(202); 安裝在所述計算系統(tǒng)上的硬件設(shè)備(216); 由一個或多個處理器可執(zhí)行的并被配置成顯示用戶界面元素的用戶同意組件(124);以及 訪問代理(102,214),其由一個或多個處理器可執(zhí)行并被配置成響應(yīng)于從所述計算系統(tǒng)的應(yīng)用接收到訪問所述硬件設(shè)備的設(shè)備能力的請求,導(dǎo)致所述用戶同意組件顯示具有可選選項的用戶界面元素,以便一旦由所述訪問代理確定所述計算系統(tǒng)的代理策略(104)包括對于所述硬件設(shè)備的能力的訪問要求用戶同意的指示,同意所述請求。
5.權(quán)利要求4的計算系統(tǒng),其中所述訪問代理進一步被配置成至少部分基于指示用戶同意所述請求的輸入的接收而給所述應(yīng)用提供可用于訪問所述能力的界面句柄。
6.權(quán)利要求4的計算系統(tǒng),其中所述訪問代理被配置成一旦確定在接收所述請求之前接收到指示用戶同意訪問硬件設(shè)備能力的先前請求的輸入,準許所述請求。
7.權(quán)利要求4的計算系統(tǒng),進一步包括存儲在所述計算系統(tǒng)的存儲器中的所述應(yīng)用的應(yīng)用清單(122,220),以及其中所述訪問代理被配置成基于指示用戶同意所述請求的輸入的接收和所述應(yīng)用清單包括指示所述應(yīng)用包括用于訪問所述能力的功能的聲明(120)的確定,向所述應(yīng)用返回界面句柄。
8.權(quán)利要求7的計算系統(tǒng),進一步包括應(yīng)用獲取模塊(128),其由一個或多個處理器可執(zhí)行并被配置成顯示具有可選選項(706)的應(yīng)用獲取界面(700)以獲取所述應(yīng)用,其中所述應(yīng)用獲取界面顯示包括指示所述應(yīng)用包括用于訪問所述能力的功能的聲明的所述應(yīng)用清單中的一個或多個聲明。
9.權(quán)利要求4的計算系統(tǒng),進一步包括應(yīng)用容器組件(106),其被配置成在安全執(zhí)行模式中實施由一個或多個處理器進行的所述應(yīng)用的執(zhí)行,其中所述安全執(zhí)行模式規(guī)定對于訪問某些能力的請求將由所述訪問代理來代理。
10.一種方法,包括 在響應(yīng)于來自用戶輸入設(shè)備的輸入而執(zhí)行應(yīng)用期間,顯示(404)應(yīng)用特定的操作系統(tǒng)用戶界面元素(802),其中所述應(yīng)用特定的操作系統(tǒng)用戶界面元素包括可選選項(806)來改變所述應(yīng)用的能力訪問設(shè)置;以及 一旦從用戶輸入設(shè)備接收到指示所述可選選項被選擇的輸入,更新(408)訪問代理,以改變所述應(yīng)用的能力訪問設(shè)置。
11.一種計算機可讀媒體,其包括多個編程指令,所述編程指令由計算系統(tǒng)的一個或多個處理器可執(zhí)行,以執(zhí)行權(quán)利要求1、2、3或10的方法。
全文摘要
實施例包括用于代理應(yīng)用訪問諸如設(shè)備能力之類的能力的處理、系統(tǒng)和設(shè)備。訪問代理接收來自應(yīng)用的訪問能力的請求。訪問代理至少部分基于應(yīng)用清單是否聲明所述能力來確定是否準許訪問。訪問代理也可以導(dǎo)致請求用戶同意訪問請求的用戶界面元素被顯示。并且,提供顯示用于特別應(yīng)用的能力訪問設(shè)置的應(yīng)用內(nèi)用戶界面元素。應(yīng)用內(nèi)用戶界面元素包括用于改變這些設(shè)置的可選選項。借助于用戶界面的這些設(shè)置的改變更新訪問代理中的設(shè)置。
文檔編號G06F21/45GK102999715SQ20121033588
公開日2013年3月27日 申請日期2012年9月12日 優(yōu)先權(quán)日2011年9月12日
發(fā)明者M.G.莫里斯, N.加納帕蒂, D.R.戴維斯, D.A.戈爾, P.斯利沃維奇, G.埃文格羅斯, R.J.門東卡 申請人:微軟公司